From 17c3fd56afda2553a6f6ef614d150f2715338741 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 4 Sep 2003 18:56:27 +0000 Subject: -This line, and those below, will be ignored-- M src/diff.c M src/package.c M src/syrep.ggo M src/makepatch.c git-svn-id: file:///home/lennart/svn/public/syrep/trunk@23 07ea20a6-d2c5-0310-9e02-9ef735347d72 --- src/package.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'src/package.c') diff --git a/src/package.c b/src/package.c index 63ca432..558b1be 100644 --- a/src/package.c +++ b/src/package.c @@ -397,6 +397,7 @@ static int read_item(struct package *p) { if (p->read_fd < 0) return 0; + name[PACKAGE_ITEMNAMELEN] = 0; if ((r = package_read(p, name, PACKAGE_ITEMNAMELEN)) != PACKAGE_ITEMNAMELEN) { if (r == 0) { close_read_fd(p); @@ -482,7 +483,7 @@ static int write_item(struct package *p, struct package_item *i) { strncpy(name, i->name, PACKAGE_ITEMNAMELEN); if (args.verbose_flag) - fprintf(stderr, "Writing %s (%llu bytes) to package.\n", name, l); + fprintf(stderr, "Writing %s (%llu bytes) to package.\n", i->name, l); if ((r = package_write(p, name, PACKAGE_ITEMNAMELEN)) != PACKAGE_ITEMNAMELEN) { if (r >= 0) @@ -613,8 +614,15 @@ static int load_complete(struct package *p) { if (p->read_fd < 0) return 0; - while ((r = read_item(p)) > 0) + while ((r = read_item(p)) > 0) { rotdash(); + + if (interrupted) { + rotdash_hide(); + fprintf(stderr, "Canceled.\n"); + return -1; + } + } rotdash_hide(); @@ -679,6 +687,11 @@ int package_save(struct package *p, const char *fn) { goto finish; rotdash(); + + if (interrupted) { + fprintf(stderr, "Canceled.\n"); + goto finish; + } } r = 0; -- cgit