X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2Fbuffer.c;h=81efe323eff270b531b486584ff12554068fe355;hb=476019d08388d0db5c0cf1aeec5e8e32ebed073d;hp=9b6a11a8c6e59ba48f20d066bf355802086bc73e;hpb=588f444efea17a7746d07fbd39510ec842eb4137;p=chaz%2Ftar diff --git a/src/buffer.c b/src/buffer.c index 9b6a11a..81efe32 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -966,7 +966,8 @@ new_volume (enum access_mode mode) { static FILE *read_file; static int looped; - + int prompt; + if (!read_file && !info_script_option) /* FIXME: if fopen is used, it will never be closed. */ read_file = archive == STDIN_FILENO ? fopen (TTY_NAME, "r") : stdin; @@ -989,9 +990,10 @@ new_volume (enum access_mode mode) archive_name_cursor = archive_name_array; looped = 1; } - + prompt = looped; + tryagain: - if (looped) + if (prompt) { /* We have to prompt from now on. */ @@ -1041,6 +1043,7 @@ new_volume (enum access_mode mode) open_warn (*archive_name_cursor); if (!verify_option && mode == ACCESS_WRITE && backup_option) undo_last_backup (); + prompt = 1; goto tryagain; }