summaryrefslogtreecommitdiff
path: root/lib/libfetch/ftp.c
diff options
context:
space:
mode:
authorDag-Erling Smørgrav <des@FreeBSD.org>2008-01-23 20:57:59 +0000
committerDag-Erling Smørgrav <des@FreeBSD.org>2008-01-23 20:57:59 +0000
commitb2a9c5a1bab5bbcf2d0f7fd876b4205426a46fb7 (patch)
tree75bb7c380afe70e79c8c2fc6b1de0ca58878bb40 /lib/libfetch/ftp.c
parent73e9aa89e817ccf660cf847f3e5a51140b55df73 (diff)
Notes
Diffstat (limited to 'lib/libfetch/ftp.c')
-rw-r--r--lib/libfetch/ftp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/libfetch/ftp.c b/lib/libfetch/ftp.c
index 914f674c4735..475adda87b37 100644
--- a/lib/libfetch/ftp.c
+++ b/lib/libfetch/ftp.c
@@ -1181,7 +1181,11 @@ fetchStatFTP(struct url *url, struct url_stat *us, const char *flags)
f = ftp_request(url, "STAT", us, ftp_get_proxy(url, flags), flags);
if (f == NULL)
return (-1);
- fclose(f);
+ /*
+ * When op is "STAT", ftp_request() will return either NULL or
+ * (FILE *)1, never a valid FILE *, so we mustn't fclose(f) before
+ * returning, as it would cause a segfault.
+ */
return (0);
}