From 77969d83adf0e54ed39b701c3b6a52abd708848b Mon Sep 17 00:00:00 2001 From: ache Date: Thu, 14 Nov 1996 09:51:47 +0000 Subject: Oops, back out previous optimization, don't work as I expect (lack of sleep) --- lib/libftpio/ftpio.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'lib/libftpio') diff --git a/lib/libftpio/ftpio.c b/lib/libftpio/ftpio.c index 447d71a..df8e659 100644 --- a/lib/libftpio/ftpio.c +++ b/lib/libftpio/ftpio.c @@ -357,17 +357,25 @@ ftpPutURL(char *url, char *user, char *passwd, int *retcode) { char host[255], name[255]; int port; - FILE *fp, *fp2; + static FILE *fp = NULL; + FILE *fp2; if (retcode) *retcode = 0; + if (fp) { /* Close previous managed connection */ + fclose(fp); + fp = NULL; + } if (get_url_info(url, host, &port, name) == SUCCESS) { fp = ftpLogin(host, user, passwd, port, 0, retcode); if (fp) { fp2 = ftpPut(fp, name); - if (!fp2 && retcode) - *retcode = ftpErrno(fp); - fclose(fp); + if (!fp2) { + if (retcode) + *retcode = ftpErrno(fp); + fclose(fp); + fp = NULL; + } return fp2; } } -- cgit v1.1