mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-13 23:18:58 +00:00
Free the buffer in the case where we don't create a module out of it, as
pointed out by Torok Edwin. Remove trailing whitespaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64002 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
92570c4a1a
commit
0df91b2c86
@ -161,7 +161,7 @@ ld_plugin_status claim_file_hook(const ld_plugin_input_file *file,
|
||||
// Gold has found what might be IR part-way inside of a file, such as
|
||||
// an .a archive.
|
||||
if (lseek(file->fd, file->offset, SEEK_SET) == -1) {
|
||||
(*message)(LDPL_ERROR,
|
||||
(*message)(LDPL_ERROR,
|
||||
"Failed to seek to archive member of %s at offset %d: %s\n",
|
||||
file->name,
|
||||
file->offset, strerror(errno));
|
||||
@ -169,21 +169,24 @@ ld_plugin_status claim_file_hook(const ld_plugin_input_file *file,
|
||||
}
|
||||
buf = malloc(file->filesize);
|
||||
if (!buf) {
|
||||
(*message)(LDPL_ERROR,
|
||||
(*message)(LDPL_ERROR,
|
||||
"Failed to allocate buffer for archive member of size: %d\n",
|
||||
file->filesize);
|
||||
return LDPS_ERR;
|
||||
}
|
||||
if (read(file->fd, buf, file->filesize) != file->filesize) {
|
||||
(*message)(LDPL_ERROR,
|
||||
"Failed to read archive member of %s at offset %d: %s\n",
|
||||
(*message)(LDPL_ERROR,
|
||||
"Failed to read archive member of %s at offset %d: %s\n",
|
||||
file->name,
|
||||
file->offset,
|
||||
file->offset,
|
||||
strerror(errno));
|
||||
free(buf);
|
||||
return LDPS_ERR;
|
||||
}
|
||||
if (!lto_module_is_object_file_in_memory(buf, file->filesize))
|
||||
if (!lto_module_is_object_file_in_memory(buf, file->filesize)) {
|
||||
free(buf);
|
||||
return LDPS_OK;
|
||||
}
|
||||
} else if (!lto_module_is_object_file(file->name))
|
||||
return LDPS_OK;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user