Minor modification: in remote->local non-recursive mode matching a

wildcard, we don't abandon ship completely if the wildcard matches a
directory; we just warn and carry on with the rest.

[originally from svn r1210]
This commit is contained in:
Simon Tatham 2001-08-27 10:24:55 +00:00
Родитель 0da98d052d
Коммит e6c8913093
1 изменённых файлов: 16 добавлений и 4 удалений

20
scp.c
Просмотреть файл

@ -1234,15 +1234,27 @@ int scp_get_sink_action(struct scp_sink_action *act)
struct fxp_names *names;
/*
* It's a directory. If we're not in recursive mode and
* we haven't been passed a wildcard from
* scp_sink_setup, this just merits a complaint.
* It's a directory. If we're not in recursive mode,
* this merits a complaint (which is fatal if the name
* was specified directly, but not if it was matched by
* a wildcard).
*
* We skip this complaint completely if
* scp_sftp_wildcard is set, because that's an
* indication that we're not actually supposed to
* _recursively_ transfer the dir, just scan it for
* things matching the wildcard.
*/
if (!scp_sftp_recursive && !scp_sftp_wildcard) {
tell_user(stderr, "pscp: %s: is a directory", fname);
errs++;
if (must_free_fname) sfree(fname);
return 1;
if (scp_sftp_dirstack_head) {
act->action = SCP_SINK_RETRY;
return 0;
} else {
return 1;
}
}
/*