On Mon, Feb 02, 2004 at 09:27:46PM -0500, Tom Lane wrote:
> Kurt Roeckx <[EMAIL PROTECTED]> writes:
> > -           if (memcmp(re_array[i].cre_pat, text_re, text_re_len) == 0 &&
> > +           if (VARSIZE(re_array[i].cre_pat) == text_re_len &&
> > +           memcmp(re_array[i].cre_pat, text_re, text_re_len) == 0 &&
> 
> This is not actually broken.  The first four bytes of what memcmp is
> comparing are the length, and so it'll fall out immediately anyway if
> the lengths differ.

That assumes the memcmp starts from the first char and not from
the last.  If it starts from the last you have undefined
behaviour.


Kurt


---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
      joining column's datatypes do not match

Reply via email to