~mdw
/
sgt
/
putty
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make modinv able to return NULL if its inputs are not coprime, and
[sgt/putty]
/
psftp.c
diff --git
a/psftp.c
b/psftp.c
index
c7a8486
..
8ed2343
100644
(file)
--- a/
psftp.c
+++ b/
psftp.c
@@
-1035,6
+1035,7
@@
int sftp_cmd_ls(struct sftp_command *cmd)
char *tmpdir;
int len, check;
char *tmpdir;
int len, check;
+ sfree(unwcdir);
wildcard = stripslashes(dir, 0);
unwcdir = dupstr(dir);
len = wildcard - dir;
wildcard = stripslashes(dir, 0);
unwcdir = dupstr(dir);
len = wildcard - dir;
@@
-1257,7
+1258,9
@@
int sftp_general_get(struct sftp_command *cmd, int restart, int multiple)
fname = canonify(origwfname);
if (!fname) {
fname = canonify(origwfname);
if (!fname) {
+ sftp_finish_wildcard_matching(swcm);
printf("%s: canonify: %s\n", origwfname, fxp_error());
printf("%s: canonify: %s\n", origwfname, fxp_error());
+ sfree(origwfname);
sfree(unwcfname);
return 0;
}
sfree(unwcfname);
return 0;
}
@@
-2233,6
+2236,7
@@
struct sftp_command *sftp_getcmd(FILE *fp, int mode, int modeflags)
cmd->obey = sftp_cmd_quit;
if ((mode == 0) || (modeflags & 1))
printf("quit\n");
cmd->obey = sftp_cmd_quit;
if ((mode == 0) || (modeflags & 1))
printf("quit\n");
+ sfree(line);
return cmd; /* eof */
}
return cmd; /* eof */
}
@@
-2475,6
+2479,18
@@
void modalfatalbox(char *fmt, ...)
cleanup_exit(1);
}
cleanup_exit(1);
}
+void nonfatal(char *fmt, ...)
+{
+ char *str, *str2;
+ va_list ap;
+ va_start(ap, fmt);
+ str = dupvprintf(fmt, ap);
+ str2 = dupcat("Error: ", str, "\n", NULL);
+ sfree(str);
+ va_end(ap);
+ fputs(str2, stderr);
+ sfree(str2);
+}
void connection_fatal(void *frontend, char *fmt, ...)
{
char *str, *str2;
void connection_fatal(void *frontend, char *fmt, ...)
{
char *str, *str2;
@@
-2706,6
+2722,7
@@
static int psftp_connect(char *userhost, char *user, int portnumber)
/* Use `host' as a bare hostname. */
conf_set_str(conf, CONF_host, host);
}
/* Use `host' as a bare hostname. */
conf_set_str(conf, CONF_host, host);
}
+ conf_free(conf2);
} else {
/* Patch in hostname `host' to session details. */
conf_set_str(conf, CONF_host, host);
} else {
/* Patch in hostname `host' to session details. */
conf_set_str(conf, CONF_host, host);