aboutsummaryrefslogtreecommitdiff
path: root/src/bin/pg_dump/pg_backup_tar.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/pg_dump/pg_backup_tar.c')
-rw-r--r--src/bin/pg_dump/pg_backup_tar.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/bin/pg_dump/pg_backup_tar.c b/src/bin/pg_dump/pg_backup_tar.c
index 37feef179f0..42cac59c329 100644
--- a/src/bin/pg_dump/pg_backup_tar.c
+++ b/src/bin/pg_dump/pg_backup_tar.c
@@ -16,7 +16,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_tar.c,v 1.29 2002/09/06 21:58:36 petere Exp $
+ * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_tar.c,v 1.30 2002/09/10 18:22:20 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1147,6 +1147,7 @@ _tarGetHeader(ArchiveHandle *AH, TAR_MEMBER *th)
int sum,
chk;
size_t len;
+ unsigned long ullen;
off_t hPos;
int i;
bool gotBlock = false;
@@ -1203,8 +1204,9 @@ _tarGetHeader(ArchiveHandle *AH, TAR_MEMBER *th)
}
}
- sscanf(&h[0], "%99s", &tag[0]);
- sscanf(&h[124], "%12o", &len);
+ sscanf(&h[0], "%99s", tag);
+ sscanf(&h[124], "%12lo", &ullen);
+ len = (size_t) ullen;
sscanf(&h[148], "%8o", &sum);
{
@@ -1212,7 +1214,7 @@ _tarGetHeader(ArchiveHandle *AH, TAR_MEMBER *th)
snprintf(buf, 100, INT64_FORMAT, (int64) hPos);
ahlog(AH, 3, "TOC Entry %s at %s (length %lu, checksum %d)\n",
- &tag[0], buf, (unsigned long) len, sum);
+ tag, buf, (unsigned long) len, sum);
}
if (chk != sum)
@@ -1223,7 +1225,7 @@ _tarGetHeader(ArchiveHandle *AH, TAR_MEMBER *th)
die_horribly(AH, modulename,
"corrupt tar header found in %s "
"(expected %d, computed %d) file position %s\n",
- &tag[0], sum, chk, buf);
+ tag, sum, chk, buf);
}
th->targetFile = strdup(tag);