From: Peter Eisentraut Date: Fri, 2 Mar 2012 20:30:01 +0000 (+0200) Subject: Fix incorrect uses of gzFile X-Git-Tag: REL9_2_BETA1~339 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d923125b77c5d698bb8107a533a21627582baa43;p=postgresql Fix incorrect uses of gzFile gzFile is already a pointer, so code like gzFile *handle = gzopen(...) is wrong. This used to pass silently because gzFile used to be defined as void*, and you can assign a void* to a void**. But somewhere between zlib versions 1.2.3.4 and 1.2.6, the definition of gzFile was changed to struct gzFile_s *, and with that new definition this usage causes compiler warnings. So remove all those extra pointer decorations. There is a related issue in pg_backup_archiver.h, where FILE *FH; /* General purpose file handle */ is used throughout pg_dump as sometimes a real FILE* and sometimes a gzFile handle, which also causes warnings now. This is not yet fixed here, because it might need more code restructuring. --- diff --git a/src/bin/pg_basebackup/pg_basebackup.c b/src/bin/pg_basebackup/pg_basebackup.c index b39d2e7bf3..bf88726f32 100644 --- a/src/bin/pg_basebackup/pg_basebackup.c +++ b/src/bin/pg_basebackup/pg_basebackup.c @@ -82,7 +82,7 @@ static bool segment_callback(XLogRecPtr segendpos, uint32 timeline); #ifdef HAVE_LIBZ static const char * -get_gz_error(gzFile *gzf) +get_gz_error(gzFile gzf) { int errnum; const char *errmsg; @@ -450,7 +450,7 @@ ReceiveTarFile(PGconn *conn, PGresult *res, int rownum) FILE *tarfile = NULL; #ifdef HAVE_LIBZ - gzFile *ztarfile = NULL; + gzFile ztarfile = NULL; #endif if (PQgetisnull(res, rownum, 0)) diff --git a/src/bin/pg_dump/pg_backup_files.c b/src/bin/pg_dump/pg_backup_files.c index 71bace0eab..a7fd91d1c5 100644 --- a/src/bin/pg_dump/pg_backup_files.c +++ b/src/bin/pg_dump/pg_backup_files.c @@ -60,7 +60,7 @@ typedef struct typedef struct { #ifdef HAVE_LIBZ - gzFile *FH; + gzFile FH; #else FILE *FH; #endif diff --git a/src/bin/pg_dump/pg_backup_tar.c b/src/bin/pg_dump/pg_backup_tar.c index 4952f5a15d..4823edec7f 100644 --- a/src/bin/pg_dump/pg_backup_tar.c +++ b/src/bin/pg_dump/pg_backup_tar.c @@ -58,16 +58,13 @@ static void _EndBlobs(ArchiveHandle *AH, TocEntry *te); #define K_STD_BUF_SIZE 1024 +typedef struct +{ #ifdef HAVE_LIBZ - /* typedef gzFile ThingFile; */ -typedef FILE ThingFile; + gzFile zFH; #else -typedef FILE ThingFile; + FILE *zFH; #endif - -typedef struct -{ - ThingFile *zFH; FILE *nFH; FILE *tarFH; FILE *tmpFH;