lr@pcorp.us writes:
> Since May 9th our Debian build bot has been crashing on one of our PostGIS
> regression tests.
> I tried the same exercise on my Mingw-w64 GCC 4.8.3 (with latest PostgreSQL
> 9.5 - (dated 5/22) and also have crashing in same spot.
> I isoloated the offending query in PostGIS to this:
> with inp as ( select 'MULTIPOINT((0 -10),(5 -10))' ::geometry as g)
> select St_AsText(g), ST_Equals(totopogeom(g, 'tt', 1)::geometry, g) from
> inp;
> Which produces a gdb backtrace:
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 4252.0x3cf4]
> array_contain_compare (array1=array1@entry=0xdd94200,
> array2=array2@entry=0xde69db8, collation=<optimized out>,
> matchall=matchall@entry=1 '\001', fn_extra=0xdeac920) at arrayfuncs.c:4116
> 4116 if (isnull2)
Hm. Just guessing from the location of the crash, but I'll bet I
overlooked the case of an expanded array with no nulls, ie should be
- bool isnull2 = nulls2[j];
+ bool isnull2 = nulls2 ? nulls2[j] : false;
I'll commit that in a few minutes, please confirm whether it fixes this
for you.
regards, tom lane