diff options
Diffstat (limited to 'src/package.c')
-rw-r--r-- | src/package.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/package.c b/src/package.c index c78adc9..63ca432 100644 --- a/src/package.c +++ b/src/package.c @@ -417,6 +417,9 @@ static int read_item(struct package *p) { if (p->x_endianess) l = X64(l); + if (args.verbose_flag) + fprintf(stderr, "Reading %s (%llu) from package.\n", name, l); + size = (off_t) l; snprintf(path, sizeof(path), "%s/%i", p->base, p->count++); @@ -473,10 +476,14 @@ static int write_item(struct package *p, struct package_item *i) { if ((size = filesize(fd)) == (off_t) -1) return -1; - + l = (uint64_t) size; + memset(name, 0, sizeof(name)); strncpy(name, i->name, PACKAGE_ITEMNAMELEN); + if (args.verbose_flag) + fprintf(stderr, "Writing %s (%llu bytes) to package.\n", name, l); + if ((r = package_write(p, name, PACKAGE_ITEMNAMELEN)) != PACKAGE_ITEMNAMELEN) { if (r >= 0) fprintf(stderr, "Short write\n"); @@ -484,7 +491,7 @@ static int write_item(struct package *p, struct package_item *i) { goto fail; } - l = (uint64_t) size; + if ((r = package_write(p, &l, 8)) != 8) { if (r >= 0) fprintf(stderr, "Short write\n"); |