1
0
mirror of https://github.com/postgres/postgres.git synced 2025-05-01 01:04:50 +03:00

Fix another portability issue in pg_basebackup.

The target of sscanf with a %o format had better be of integer width,
but "mode_t" conceivably isn't that.  Another compiler warning seen
only on some platforms; this one I think is potentially a real bug
and not just a warning.
This commit is contained in:
Tom Lane 2011-01-23 14:26:51 -05:00
parent dd5f0db96b
commit f36920796e

View File

@ -483,7 +483,7 @@ ReceiveAndUnpackTarFile(PGconn *conn, PGresult *res, int rownum)
if (file == NULL) if (file == NULL)
{ {
mode_t filemode; int filemode;
/* /*
* No current file, so this must be the header for a new file * No current file, so this must be the header for a new file
@ -540,7 +540,7 @@ ReceiveAndUnpackTarFile(PGconn *conn, PGresult *res, int rownum)
disconnect_and_exit(1); disconnect_and_exit(1);
} }
#ifndef WIN32 #ifndef WIN32
if (chmod(fn, filemode)) if (chmod(fn, (mode_t) filemode))
fprintf(stderr, _("%s: could not set permissions on directory \"%s\": %s\n"), fprintf(stderr, _("%s: could not set permissions on directory \"%s\": %s\n"),
progname, fn, strerror(errno)); progname, fn, strerror(errno));
#endif #endif
@ -580,7 +580,7 @@ ReceiveAndUnpackTarFile(PGconn *conn, PGresult *res, int rownum)
} }
#ifndef WIN32 #ifndef WIN32
if (chmod(fn, filemode)) if (chmod(fn, (mode_t) filemode))
fprintf(stderr, _("%s: could not set permissions on file \"%s\": %s\n"), fprintf(stderr, _("%s: could not set permissions on file \"%s\": %s\n"),
progname, fn, strerror(errno)); progname, fn, strerror(errno));
#endif #endif