From 26ac52dba5e09da10e56f31b13d2e128f702aea2 Mon Sep 17 00:00:00 2001 From: Max Ostapenko <m.ostapenko@partner.samsung.com> Date: Wed, 2 Mar 2016 18:32:55 +0200 Subject: [PATCH] elf.c (backtrace_initialize): Properly initialize elf_fileline_fn to avoid possible crash. libbacktrace/ 2016-03-02 Maxim Ostapenko <m.ostapenko@partner.samsung.com> * elf.c (backtrace_initialize): Properly initialize elf_fileline_fn to avoid possible crash. (elf_add): Don't set *fileline_fn to elf_nodebug value in case of missing debug info anymore. From-SVN: r233911 --- libbacktrace/ChangeLog | 7 +++++++ libbacktrace/elf.c | 3 +-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog index b38e2fee45ca..eba342743850 100644 --- a/libbacktrace/ChangeLog +++ b/libbacktrace/ChangeLog @@ -1,3 +1,10 @@ +2016-03-02 Maxim Ostapenko <m.ostapenko@partner.samsung.com> + + * elf.c (backtrace_initialize): Properly initialize elf_fileline_fn to + avoid possible crash. + (elf_add): Don't set *fileline_fn to elf_nodebug value in case of + missing debug info anymore. + 2016-02-06 John David Anglin <danglin@gcc.gnu.org> * mmap.c (MAP_FAILED): Define if not defined. diff --git a/libbacktrace/elf.c b/libbacktrace/elf.c index 05cc5c04734b..f85ac65d99f1 100644 --- a/libbacktrace/elf.c +++ b/libbacktrace/elf.c @@ -791,7 +791,6 @@ elf_add (struct backtrace_state *state, int descriptor, uintptr_t base_address, { if (!backtrace_close (descriptor, error_callback, data)) goto fail; - *fileline_fn = elf_nodebug; return 1; } @@ -925,7 +924,7 @@ backtrace_initialize (struct backtrace_state *state, int descriptor, int ret; int found_sym; int found_dwarf; - fileline elf_fileline_fn; + fileline elf_fileline_fn = elf_nodebug; struct phdr_data pd; ret = elf_add (state, descriptor, 0, error_callback, data, &elf_fileline_fn, -- GitLab