X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-restore.c;h=13b4325a882667b9178e432d87de14f94f1fb85c;hp=75bc09a68629da667fb8e3a62257ba028c6fc431;hb=7a87830f5eb32373bc17235e9d178d383830dc64;hpb=a77d9adcacf001025092087fb6c1d77743cdf699 diff --git a/notmuch-restore.c b/notmuch-restore.c index 75bc09a6..13b4325a 100644 --- a/notmuch-restore.c +++ b/notmuch-restore.c @@ -77,13 +77,21 @@ notmuch_restore_command (unused (void *ctx), int argc, char *argv[]) optind++; } + if (optind < argc) { + fprintf (stderr, + "Cannot read dump from more than one file: %s\n", + argv[optind]); + return 1; + } + /* Dump output is one line per message. We match a sequence of * non-space characters for the message-id, then one or more * spaces, then a list of space-separated tags as a sequence of * characters within literal '(' and ')'. */ - xregcomp (®ex, - "^([^ ]+) \\(([^)]*)\\)$", - REG_EXTENDED); + if ( xregcomp (®ex, + "^([^ ]+) \\(([^)]*)\\)$", + REG_EXTENDED) ) + INTERNAL_ERROR("compile time constant regex failed."); while ((line_len = getline (&line, &line_size, input)) != -1) { regmatch_t match[3];