diff options
-rw-r--r-- | file.c | 8 | ||||
-rw-r--r-- | local.c | 5 | ||||
-rw-r--r-- | url.c | 4 |
3 files changed, 14 insertions, 3 deletions
@@ -611,8 +611,10 @@ readHeader(URLFile *uf, Buffer *newBuf, int thru, ParsedURL *pu) if(w3m_reqlog){ FILE *ff; ff = fopen(w3m_reqlog, "a"); - Strfputs(tmp, ff); - fclose(ff); + if(ff){ + Strfputs(tmp, ff); + fclose(ff); + } } if (src) Strfputs(tmp, src); @@ -7580,6 +7582,8 @@ loadImageBuffer(URLFile *uf, Buffer *newBuf) tmp = Sprintf("<img src=\"%s\"><br><br>", html_quote(image.url)); tmpf = tmpfname(TMPF_SRC, ".html"); src = fopen(tmpf->ptr, "w"); + if (src == NULL) + return NULL; newBuf->mailcap_source = tmpf->ptr; init_stream(&f, SCM_LOCAL, newStrStream(tmp)); @@ -426,7 +426,10 @@ localcgi_post(char *uri, char *qstr, FormList *request, char *referer) } #ifdef HAVE_CHDIR /* ifndef __EMX__ ? */ - chdir(cgi_dir); + if (chdir(cgi_dir) == -1) { + fprintf(stderr, "failed to chdir to %s: %s\n", cgi_dir, strerror(errno)); + exit(1); + } #endif execl(file, cgi_basename, NULL); fprintf(stderr, "execl(\"%s\", \"%s\", NULL): %s\n", @@ -1752,6 +1752,8 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current, write(sock, tmp->ptr, tmp->length); if(w3m_reqlog){ FILE *ff = fopen(w3m_reqlog, "a"); + if (ff == NULL) + return uf; if (sslh) fputs("HTTPS: request via SSL\n", ff); else @@ -1774,6 +1776,8 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current, write(sock, tmp->ptr, tmp->length); if(w3m_reqlog){ FILE *ff = fopen(w3m_reqlog, "a"); + if (ff == NULL) + return uf; fwrite(tmp->ptr, sizeof(char), tmp->length, ff); fclose(ff); } |