This is just to make covscan gripe less. These variables are legitimate
leaks, though the program is just going to exit afterward anyway.
Signed-off-by: Peter Jones <pjones@redhat.com>
if (rc < 0 || data_size == 0)
return rc;
- return efi_set_variable(EFI_GLOBAL_GUID, "BootOrder", data, data_size,
- EFI_VARIABLE_NON_VOLATILE |
- EFI_VARIABLE_BOOTSERVICE_ACCESS |
- EFI_VARIABLE_RUNTIME_ACCESS);
+ rc = efi_set_variable(EFI_GLOBAL_GUID, "BootOrder", data, data_size,
+ EFI_VARIABLE_NON_VOLATILE |
+ EFI_VARIABLE_BOOTSERVICE_ACCESS |
+ EFI_VARIABLE_RUNTIME_ACCESS);
+ free(data);
+ return rc;
}
static void
char **tmp = realloc(newlist, (++nentries + 1) * sizeof (*newlist));
if (!tmp) {
+ free(aname);
rc = -1;
break;
}
int l = strlen(opts.argv[i]);
int space = (i < opts.argc - 1) ? 1: 0;
uint8_t *tmp = realloc(new_data, (usedchars + l + space + 1));
- if (tmp == NULL)
+ if (tmp == NULL) {
+ if (new_data)
+ free(new_data);
return -1;
+ }
new_data = tmp;
p = (char *)new_data + usedchars;
strcpy(p, opts.argv[i]);
buffer = tmp;
}
num_read = read(fd, buffer + appended, maxchars - appended);
- if (num_read < 0)
+ if (num_read < 0) {
+ free(buffer);
return -1;
- else if (num_read > 0)
+ } else if (num_read > 0) {
appended += num_read;
+ }
} while (num_read > 0);
if (fd != STDIN_FILENO)