summaryrefslogtreecommitdiffstats
path: root/libdwfl/dwfl_module_info.c
diff options
context:
space:
mode:
Diffstat (limited to 'libdwfl/dwfl_module_info.c')
-rw-r--r--libdwfl/dwfl_module_info.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libdwfl/dwfl_module_info.c b/libdwfl/dwfl_module_info.c
index 759cb621..f2cf3848 100644
--- a/libdwfl/dwfl_module_info.c
+++ b/libdwfl/dwfl_module_info.c
@@ -66,9 +66,12 @@ dwfl_module_info (Dwfl_Module *mod, void ***userdata,
*end = mod->high_addr;
if (dwbias)
- *dwbias = mod->debug.elf == NULL ? (Dwarf_Addr) -1 : mod->debug.bias;
+ *dwbias = (mod->debug.shared == NULL
+ || mod->debug.shared->elf == NULL)
+ ? (Dwarf_Addr) -1 : DWBIAS (mod);
+
if (symbias)
- *symbias = mod->symfile == NULL ? (Dwarf_Addr) -1 : mod->symfile->bias;
+ *symbias = mod->symfile == NULL ? (Dwarf_Addr) -1 : SYMBIAS (mod);
if (mainfile)
*mainfile = mod->main.name;