Fix longstanding error in contrib/intarray's int[] & int[] operator.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: f559846a68df902715d05579c800f836b8f7226b
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2012-02-17T01:00:23Z
Releases: 9.0.7
Fix longstanding error in contrib/intarray's int[] & int[] operator.

The array intersection code would give wrong results if the first entry of
the correct output array would be "1".  (I think only this value could be
at risk, since the previous word would always be a lower-bound entry with
that fixed value.)

Problem spotted by Julien Rouhaud, initial patch by Guillaume Lelarge,
cosmetic improvements by me.

Files

PathChange+/−
contrib/intarray/expected/_int.out modified +6 −0
contrib/intarray/_int_tool.c modified +9 −6
contrib/intarray/sql/_int.sql modified +1 −0