* libdw/dwarf_offdie.c (__libdw_offdie): Use dwarf_lock.

Signed-off-by: Aaron Merey <ame...@redhat.com>

---
 libdw/dwarf_offdie.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/libdw/dwarf_offdie.c b/libdw/dwarf_offdie.c
index 883720de..74eac420 100644
--- a/libdw/dwarf_offdie.c
+++ b/libdw/dwarf_offdie.c
@@ -43,11 +43,13 @@ __libdw_offdie (Dwarf *dbg, Dwarf_Off offset, Dwarf_Die 
*result,
   if (dbg == NULL)
     return NULL;
 
+  mutex_lock (dbg->dwarf_lock);
   Elf_Data *const data = dbg->sectiondata[debug_types ? IDX_debug_types
                                          : IDX_debug_info];
   if (data == NULL || offset >= data->d_size)
     {
       __libdw_seterrno (DWARF_E_INVALID_DWARF);
+      mutex_unlock (dbg->dwarf_lock);
       return NULL;
     }
 
@@ -66,6 +68,7 @@ __libdw_offdie (Dwarf *dbg, Dwarf_Off offset, Dwarf_Die 
*result,
       result = NULL;
     }
 
+  mutex_unlock (dbg->dwarf_lock);
   return result;
 }
 
-- 
2.47.1

Reply via email to