about summary refs log tree commit diff
path: root/frida_mode/src/cmplog/cmplog.c
diff options
context:
space:
mode:
authorYour Name <you@example.com>2021-11-17 20:27:45 +0000
committerYour Name <you@example.com>2021-11-17 20:27:45 +0000
commit75145658585705445998aac89d92f517a943eb6c (patch)
tree4348dd3f50c0a025e248b97abdc0da5f685272c6 /frida_mode/src/cmplog/cmplog.c
parent132630d48d0f9fe50e9388f941433c85636587da (diff)
downloadafl++-75145658585705445998aac89d92f517a943eb6c.tar.gz
Fix sorting of ranges
Diffstat (limited to 'frida_mode/src/cmplog/cmplog.c')
-rw-r--r--frida_mode/src/cmplog/cmplog.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/frida_mode/src/cmplog/cmplog.c b/frida_mode/src/cmplog/cmplog.c
index 81e1a4b0..443baa1d 100644
--- a/frida_mode/src/cmplog/cmplog.c
+++ b/frida_mode/src/cmplog/cmplog.c
@@ -33,8 +33,22 @@ static gboolean cmplog_range(const GumRangeDetails *details,
 
 static gint cmplog_sort(gconstpointer a, gconstpointer b) {
 
-  return ((GumMemoryRange *)b)->base_address -
-         ((GumMemoryRange *)a)->base_address;
+  GumMemoryRange *ra = (GumMemoryRange *)a;
+  GumMemoryRange *rb = (GumMemoryRange *)b;
+
+  if (ra->base_address < rb->base_address) {
+
+    return -1;
+
+  } else if (ra->base_address > rb->base_address) {
+
+    return 1;
+
+  } else {
+
+    return 0;
+
+  }
 
 }