Skip to content
Snippets Groups Projects
Commit 87d66142 authored by Rob Swindell's avatar Rob Swindell :speech_balloon:
Browse files

Address Coverity-reported resource leaks

Mostly in error-paths.
parent 1fc2657f
No related branches found
No related tags found
1 merge request!463MRC mods by Codefenix (2024-10-20)
...@@ -745,6 +745,7 @@ js_require(JSContext *cx, uintN argc, jsval *arglist) ...@@ -745,6 +745,7 @@ js_require(JSContext *cx, uintN argc, jsval *arglist)
JSVALUE_TO_MSTRING(cx, argv[fnarg], filename, NULL); JSVALUE_TO_MSTRING(cx, argv[fnarg], filename, NULL);
JS_ReportError(cx,"symbol '%s' not defined by script '%s'", property, filename); JS_ReportError(cx,"symbol '%s' not defined by script '%s'", property, filename);
free(filename); free(filename);
free(property);
return(JS_FALSE); return(JS_FALSE);
} }
} }
......
...@@ -1034,6 +1034,8 @@ long js_exec(const char *fname, const char* buf, char** args) ...@@ -1034,6 +1034,8 @@ long js_exec(const char *fname, const char* buf, char** args)
init_debugger(js_runtime, js_cx, dbg_puts, dbg_getline); init_debugger(js_runtime, js_cx, dbg_puts, dbg_getline);
if((js_script=JS_CompileScript(js_cx, js_glob, js_buf, js_buflen, fname==NULL ? NULL : path, 1))==NULL) { if((js_script=JS_CompileScript(js_cx, js_glob, js_buf, js_buflen, fname==NULL ? NULL : path, 1))==NULL) {
lprintf(LOG_ERR,"!Error compiling script from %s",path); lprintf(LOG_ERR,"!Error compiling script from %s",path);
if(js_buf != buf)
free(js_buf);
return(-1); return(-1);
} }
if((diff=xp_timer()-start) > 0) if((diff=xp_timer()-start) > 0)
......
...@@ -484,7 +484,6 @@ long sbbs_t::msgtoqwk(smbmsg_t* msg, FILE *qwk_fp, long mode, smb_t* smb ...@@ -484,7 +484,6 @@ long sbbs_t::msgtoqwk(smbmsg_t* msg, FILE *qwk_fp, long mode, smb_t* smb
size++; size++;
} }
free(buf);
if(ch!=qwk_newline) { if(ch!=qwk_newline) {
fputc(qwk_newline,qwk_fp); /* make sure it ends in newline */ fputc(qwk_newline,qwk_fp); /* make sure it ends in newline */
size++; size++;
...@@ -515,6 +514,7 @@ long sbbs_t::msgtoqwk(smbmsg_t* msg, FILE *qwk_fp, long mode, smb_t* smb ...@@ -515,6 +514,7 @@ long sbbs_t::msgtoqwk(smbmsg_t* msg, FILE *qwk_fp, long mode, smb_t* smb
fputc(' ',qwk_fp); fputc(' ',qwk_fp);
} }
} }
free(buf);
tt=msg->hdr.when_written.time; tt=msg->hdr.when_written.time;
if(localtime_r(&tt,&tm)==NULL) if(localtime_r(&tt,&tm)==NULL)
...@@ -557,7 +557,7 @@ long sbbs_t::msgtoqwk(smbmsg_t* msg, FILE *qwk_fp, long mode, smb_t* smb ...@@ -557,7 +557,7 @@ long sbbs_t::msgtoqwk(smbmsg_t* msg, FILE *qwk_fp, long mode, smb_t* smb
,(mode&QM_TO_QNET) ? '*' : ' ' /* Net tag line */ ,(mode&QM_TO_QNET) ? '*' : ' ' /* Net tag line */
); );
fseek(qwk_fp,offset,SEEK_SET); (void)fseek(qwk_fp,offset,SEEK_SET);
fwrite(str,QWK_BLOCK_LEN,1,qwk_fp); fwrite(str,QWK_BLOCK_LEN,1,qwk_fp);
(void)fseek(qwk_fp,size,SEEK_CUR); (void)fseek(qwk_fp,size,SEEK_CUR);
......
...@@ -1339,6 +1339,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir) ...@@ -1339,6 +1339,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir)
if(*gamedir == 0) { if(*gamedir == 0) {
lprintf(LOG_ERR, "No startup directory configured for DOS command-line: %s", cmdline); lprintf(LOG_ERR, "No startup directory configured for DOS command-line: %s", cmdline);
fclose(dosemubatfp);
return -1; return -1;
} }
...@@ -1370,6 +1371,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir) ...@@ -1370,6 +1371,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir)
SAFEPRINTF2(str,"%s%s",cfg.exec_dir, external_bat_fn); SAFEPRINTF2(str,"%s%s",cfg.exec_dir, external_bat_fn);
if (!fexist(str)) { if (!fexist(str)) {
errormsg(WHERE,ERR_READ,str,0); errormsg(WHERE,ERR_READ,str,0);
fclose(dosemubatfp);
return(-1); return(-1);
} }
} }
...@@ -1378,6 +1380,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir) ...@@ -1378,6 +1380,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir)
if (!(externalbatfp=fopen(externalbatsrc,"r"))) { if (!(externalbatfp=fopen(externalbatsrc,"r"))) {
errormsg(WHERE,ERR_OPEN,externalbatsrc,0); errormsg(WHERE,ERR_OPEN,externalbatsrc,0);
fclose(dosemubatfp);
return(-1); return(-1);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment