mirror of
https://github.com/wolfpld/tracy.git
synced 2024-11-10 02:31:48 +00:00
Backport some fixes from libbacktrace upstream repo.
This commit is contained in:
parent
71102e3c6d
commit
ff27656533
@ -2789,6 +2789,9 @@ elf_add (struct backtrace_state *state, const char *filename, int descriptor,
|
||||
backtrace_release_view (state, &shdr_view, error_callback, data);
|
||||
}
|
||||
|
||||
if (shnum == 0 || shstrndx == 0)
|
||||
goto fail;
|
||||
|
||||
/* To translate PC to file/line when using DWARF, we need to find
|
||||
the .debug_info and .debug_line sections. */
|
||||
|
||||
|
@ -70,7 +70,11 @@ backtrace_open (const char *filename, backtrace_error_callback error_callback,
|
||||
descriptor = open (filename, (int) (O_RDONLY | O_BINARY | O_CLOEXEC));
|
||||
if (descriptor < 0)
|
||||
{
|
||||
if (does_not_exist != NULL && errno == ENOENT)
|
||||
/* If DOES_NOT_EXIST is not NULL, then don't call ERROR_CALLBACK
|
||||
if the file does not exist. We treat lacking permission to
|
||||
open the file as the file not existing; this case arises when
|
||||
running the libgo syscall package tests as root. */
|
||||
if (does_not_exist != NULL && (errno == ENOENT || errno == EACCES))
|
||||
*does_not_exist = 1;
|
||||
else
|
||||
error_callback (data, filename, errno);
|
||||
|
Loading…
Reference in New Issue
Block a user