X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/6df3c104f2ee9429bef67134ec0eedd5cd26cc08..3ee4eedaec9cad4b5b2ff0f40567fa2e57a942a9:/psftp.c diff --git a/psftp.c b/psftp.c index 482d66ee..ab287dfd 100644 --- a/psftp.c +++ b/psftp.c @@ -2287,10 +2287,13 @@ struct sftp_command *sftp_getcmd(FILE *fp, int mode, int modeflags) * >this has "quotes" in< * >and"this"< */ - while (*p) { + while (1) { /* skip whitespace */ while (*p && (*p == ' ' || *p == '\t')) p++; + /* terminate loop */ + if (!*p) + break; /* mark start of word */ q = r = p; /* q sits at start, r writes word */ quoting = 0; @@ -2920,12 +2923,14 @@ int psftp_main(int argc, char *argv[]) if (flags & FLAG_VERBOSE) verbose = 1; } else if (strcmp(argv[i], "-h") == 0 || - strcmp(argv[i], "-?") == 0) { + strcmp(argv[i], "-?") == 0 || + strcmp(argv[i], "--help") == 0) { usage(); } else if (strcmp(argv[i], "-pgpfp") == 0) { pgp_fingerprints(); return 1; - } else if (strcmp(argv[i], "-V") == 0) { + } else if (strcmp(argv[i], "-V") == 0 || + strcmp(argv[i], "--version") == 0) { version(); } else if (strcmp(argv[i], "-batch") == 0) { console_batch_mode = 1;