pgsql: Make bit/varbit substring() treat any negative length as meaning - Mailing list pgsql-committers

From tgl@postgresql.org (Tom Lane)
Subject pgsql: Make bit/varbit substring() treat any negative length as meaning
Date
Msg-id 20100107195349.348257541B9@cvs.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Make bit/varbit substring() treat any negative length as meaning "all the rest
of the string".  The previous coding treated only -1 that way, and would
produce an invalid result value for other negative values.

We ought to fix it so that 2-parameter bit substring() is a different C
function and the 3-parameter form throws error for negative length, but
that takes a pg_proc change which is impractical in the back branches;
and in any case somebody might be relying on -1 working this way.
So just do this as a back-patchable fix.

Tags:
----
REL7_4_STABLE

Modified Files:
--------------
    pgsql/src/backend/utils/adt:
        varbit.c (r1.37.2.1 -> r1.37.2.2)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/varbit.c?r1=1.37.2.1&r2=1.37.2.2)

pgsql-committers by date:

Previous
From: tgl@postgresql.org (Tom Lane)
Date:
Subject: pgsql: Make bit/varbit substring() treat any negative length as meaning
Next
From: tgl@postgresql.org (Tom Lane)
Date:
Subject: pgsql: Fix 3-parameter form of bit substring() to throw error for