diff options
| author | Dag-Erling Smørgrav <des@FreeBSD.org> | 2008-01-23 20:57:59 +0000 |
|---|---|---|
| committer | Dag-Erling Smørgrav <des@FreeBSD.org> | 2008-01-23 20:57:59 +0000 |
| commit | b2a9c5a1bab5bbcf2d0f7fd876b4205426a46fb7 (patch) | |
| tree | 75bb7c380afe70e79c8c2fc6b1de0ca58878bb40 /lib/libfetch/ftp.c | |
| parent | 73e9aa89e817ccf660cf847f3e5a51140b55df73 (diff) | |
Notes
Diffstat (limited to 'lib/libfetch/ftp.c')
| -rw-r--r-- | lib/libfetch/ftp.c | 6 |
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); } |
