summaryrefslogtreecommitdiff
path: root/src/analysis/routine.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2020-09-21 22:23:47 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2020-09-21 22:23:47 (GMT)
commit76fb13178cf6be94b8e01675b37f7cb1b92f7709 (patch)
treea6e6bbc6dde169add608097ceb5658fcb904bd08 /src/analysis/routine.c
parentdfe76faf21e254c02c86a1b0b1f8ca8fc07fe027 (diff)
Defined lock mechanism for buffer caches.
Diffstat (limited to 'src/analysis/routine.c')
-rw-r--r--src/analysis/routine.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/analysis/routine.c b/src/analysis/routine.c
index aca47ee..422e7de 100644
--- a/src/analysis/routine.c
+++ b/src/analysis/routine.c
@@ -1105,6 +1105,8 @@ char *g_binary_routine_build_tooltip(const GBinRoutine *routine, const GLoadedBi
proc = g_loaded_binary_get_processor(binary);
cache = g_loaded_binary_get_disassembly_cache(binary);
+ g_buffer_cache_rlock(cache);
+
/* Parcours des instructions */
srange = g_binary_symbol_get_range(G_BIN_SYMBOL(routine));
@@ -1315,6 +1317,8 @@ char *g_binary_routine_build_tooltip(const GBinRoutine *routine, const GLoadedBi
gbrbt_no_iter:
+ g_buffer_cache_runlock(cache);
+
g_object_unref(G_OBJECT(cache));
g_object_unref(G_OBJECT(proc));