From bbefa484f47ba659afa78b6a3c8621a17ed29e03 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Wed, 15 May 2002 20:38:17 +0000 Subject: 17166: Src/Modules/zftp.c: check fileno of zftp control connection before closing, not after --- Src/Modules/zftp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Src') diff --git a/Src/Modules/zftp.c b/Src/Modules/zftp.c index 80e09045c..de762e883 100644 --- a/Src/Modules/zftp.c +++ b/Src/Modules/zftp.c @@ -2678,14 +2678,15 @@ zfclose(int leaveparams) zfsendcmd("QUIT\r\n"); } if (zfsess->cin) { - fclose(zfsess->cin); /* * We fdopen'd the TCP control fd; since we can't fdclose it, * we need to perform a full fclose, which invalidates the - * TCP fd. + * TCP fd. We need to do this before closing the FILE, since + * it's not usable afterwards. */ if (fileno(zfsess->cin) == zfsess->control->fd) zfsess->control->fd = -1; + fclose(zfsess->cin); zfsess->cin = NULL; } if (zfsess->control) { -- cgit 1.4.1