mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-03-25 18:10:23 +08:00
Fixed several resource and memory leaks
Bug found by: CppCheck 1.59 (static source analysis tool) Signed-off-by: Philipp Kloke <philipp.kloke@web.de> Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
This commit is contained in:
parent
b432f57741
commit
dae212d049
@ -424,6 +424,7 @@ int64_t assemble(int32_t segment, int64_t offset, int bits, uint32_t cp,
|
||||
} else if (fseek(fp, 0L, SEEK_END) < 0) {
|
||||
error(ERR_NONFATAL, "`incbin': unable to seek on file `%s'",
|
||||
fname);
|
||||
fclose(fp);
|
||||
} else {
|
||||
static char buf[4096];
|
||||
size_t t = instruction->times;
|
||||
|
@ -1275,12 +1275,14 @@ int main(int argc, char **argv)
|
||||
if ((p = strchr(buf, '\n')) != NULL)
|
||||
*p = '\0';
|
||||
if (i >= 128) {
|
||||
fclose(f);
|
||||
fprintf(stderr, "ldrdf: too many input files\n");
|
||||
exit(1);
|
||||
}
|
||||
*(respstrings + i) = newstr(buf);
|
||||
argc++, i++;
|
||||
}
|
||||
fclose(f);
|
||||
break;
|
||||
}
|
||||
case '2':
|
||||
|
@ -94,6 +94,7 @@ rdfmodule *rdfload(const char *filename)
|
||||
if (f->d)
|
||||
free(f->d);
|
||||
free(f);
|
||||
free(hdr);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -59,7 +59,7 @@ char *rdl_errors[5] = {
|
||||
|
||||
int rdl_verify(const char *filename)
|
||||
{
|
||||
FILE *fp = fopen(filename, "rb");
|
||||
FILE *fp;
|
||||
char buf[257];
|
||||
int i;
|
||||
int32_t length;
|
||||
@ -69,6 +69,7 @@ int rdl_verify(const char *filename)
|
||||
if (lastresult != -1 && !strcmp(filename, lastverified))
|
||||
return lastresult;
|
||||
|
||||
fp = fopen(filename, "rb");
|
||||
strcpy(lastverified, filename);
|
||||
|
||||
if (!fp)
|
||||
|
Loading…
x
Reference in New Issue
Block a user