]> granicus.if.org Git - postgresql/commitdiff
Fix portability bug in gin_page_opaque_info().
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 2 Nov 2016 04:09:27 +0000 (00:09 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 2 Nov 2016 04:09:27 +0000 (00:09 -0400)
Somebody apparently thought that "if Int32GetDatum is good,
Int64GetDatum must be better".  Per buildfarm failures now
that Peter has added some regression tests here.

contrib/pageinspect/ginfuncs.c

index a2f119b02e5545677e62164432532e5dcd811ab8..145e2ce709cc6d3a8732ebd4d89a3023165599de 100644 (file)
@@ -100,7 +100,7 @@ gin_page_opaque_info(PG_FUNCTION_ARGS)
        GinPageOpaque opaq;
        HeapTuple       resultTuple;
        Datum           values[3];
-       bool            nulls[10];
+       bool            nulls[3];
        Datum           flags[16];
        int                     nflags = 0;
        uint16          flagbits;
@@ -152,9 +152,9 @@ gin_page_opaque_info(PG_FUNCTION_ARGS)
        memset(nulls, 0, sizeof(nulls));
 
        values[0] = Int64GetDatum(opaq->rightlink);
-       values[1] = Int64GetDatum(opaq->maxoff);
-       values[2] = PointerGetDatum(
-                                       construct_array(flags, nflags, TEXTOID, -1, false, 'i'));
+       values[1] = Int32GetDatum(opaq->maxoff);
+       values[2] = PointerGetDatum(construct_array(flags, nflags,
+                                                                                               TEXTOID, -1, false, 'i'));
 
        /* Build and return the result tuple. */
        resultTuple = heap_form_tuple(tupdesc, values, nulls);