* commit '51c812cd220cd9f493d61df98ca77dd0b5f000da': Write message to stderr on __libc_fatal()
This commit is contained in:
commit
4d8f3c4d99
@ -619,7 +619,8 @@ static void __libc_fatal(const char* format, va_list args) {
|
||||
BufferOutputStream os(msg, sizeof(msg));
|
||||
out_vformat(os, format, args);
|
||||
|
||||
// TODO: log to stderr for the benefit of "adb shell" users.
|
||||
// log to stderr for the benefit of "adb shell" users.
|
||||
write(2, msg, strlen(msg));
|
||||
|
||||
// Log to the log for the benefit of regular app developers (whose stdout and stderr are closed).
|
||||
__libc_write_log(ANDROID_LOG_FATAL, "libc", msg);
|
||||
|
@ -168,10 +168,7 @@ static unsigned bitmask[4096];
|
||||
#define DISALLOW_ALLOCATION(return_type, name, ...) \
|
||||
return_type name __VA_ARGS__ \
|
||||
{ \
|
||||
const char* msg = "ERROR: " #name " called from the dynamic linker!\n"; \
|
||||
__libc_format_log(ANDROID_LOG_FATAL, "linker", "%s", msg); \
|
||||
write(2, msg, strlen(msg)); \
|
||||
abort(); \
|
||||
__libc_fatal("ERROR: " #name " called from the dynamic linker!\n"); \
|
||||
}
|
||||
DISALLOW_ALLOCATION(void*, malloc, (size_t u __unused));
|
||||
DISALLOW_ALLOCATION(void, free, (void* u __unused));
|
||||
@ -467,10 +464,8 @@ static ElfW(Sym)* soinfo_elf_lookup(soinfo* si, unsigned hash, const char* name,
|
||||
static_cast<size_t>(s->st_size));
|
||||
return s;
|
||||
default:
|
||||
const char* msg = "FATAL: Unexpected ST_BIND\n";
|
||||
__libc_format_log(ANDROID_LOG_FATAL, "linker", "%s", msg);
|
||||
write(2, msg, strlen(msg));
|
||||
abort();
|
||||
__libc_fatal("ERROR: Unexpected ST_BIND value: %d for '%s' in '%s'",
|
||||
ELF_ST_BIND(s->st_info), name, si->name);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user