Cannot rely on %z printf length modifier.
authorHeikki Linnakangas
Sun, 5 Oct 2014 06:21:45 +0000 (09:21 +0300)
committerHeikki Linnakangas
Sun, 5 Oct 2014 07:00:16 +0000 (10:00 +0300)
Before version 9.4, we didn't require sprintf to support the %z length
modifier. Use %lu instead.

Reported by Peter Eisentraut. Apply to 9.3 and earlier.

src/backend/access/gist/gist.c

index fbc549ca97ae996624f2b44113691beeda15d177..14c7856dde6d013d52ced613ac1efa3d36473369 100644 (file)
@@ -1278,8 +1278,9 @@ gistSplit(Relation r,
    if (len == 1)
        ereport(ERROR,
                (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
-           errmsg("index row size %zu exceeds maximum %zu for index \"%s\"",
-                  IndexTupleSize(itup[0]), GiSTPageSize,
+           errmsg("index row size %lu exceeds maximum %lu for index \"%s\"",
+                  (unsigned long) IndexTupleSize(itup[0]),
+                  (unsigned long) GiSTPageSize,
                   RelationGetRelationName(r))));
 
    memset(v.spl_lisnull, TRUE, sizeof(bool) * giststate->tupdesc->natts);