From d923125b77c5d698bb8107a533a21627582baa43 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Fri, 2 Mar 2012 22:30:01 +0200 Subject: [PATCH] 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. --- src/bin/pg_basebackup/pg_basebackup.c | 4 ++-- src/bin/pg_dump/pg_backup_files.c | 2 +- src/bin/pg_dump/pg_backup_tar.c | 13 +++++-------- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/bin/pg_basebackup/pg_basebackup.c b/src/bin/pg_basebackup/pg_basebackup.c index b39d2e7bf38..bf88726f326 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 71bace0eab7..a7fd91d1c53 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 4952f5a15d3..4823edec7fe 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 -#ifdef HAVE_LIBZ - /* typedef gzFile ThingFile; */ -typedef FILE ThingFile; -#else -typedef FILE ThingFile; -#endif - typedef struct { - ThingFile *zFH; +#ifdef HAVE_LIBZ + gzFile zFH; +#else + FILE *zFH; +#endif FILE *nFH; FILE *tarFH; FILE *tmpFH;