about summary refs log tree commit diff
path: root/frida_mode/src/prefetch.c
diff options
context:
space:
mode:
authorllzmb <46303940+llzmb@users.noreply.github.com>2021-10-10 16:32:43 +0200
committerGitHub <noreply@github.com>2021-10-10 16:32:43 +0200
commit79d87f8544a0f67537b2169e3f6821f459659f61 (patch)
tree15bfaef53f95696583ea12396a7e8e98b73f77e1 /frida_mode/src/prefetch.c
parent228f6c5dad1a593b4113006e587e9885459a53c2 (diff)
parentda865cbb9d289d0f782a1c33d85261903c60d624 (diff)
downloadafl++-79d87f8544a0f67537b2169e3f6821f459659f61.tar.gz
Merge branch 'dev' into docs_edit_readme_fix_links
Diffstat (limited to 'frida_mode/src/prefetch.c')
-rw-r--r--frida_mode/src/prefetch.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/frida_mode/src/prefetch.c b/frida_mode/src/prefetch.c
index 0efbc9bf..c30ca65c 100644
--- a/frida_mode/src/prefetch.c
+++ b/frida_mode/src/prefetch.c
@@ -44,8 +44,9 @@ static void gum_afl_stalker_backpatcher_notify(GumStalkerObserver *self,
       sizeof(prefetch_data->backpatch_data) - prefetch_data->backpatch_size;
   if (sizeof(gsize) + size > remaining) { return; }
 
-  *(gsize *)(&prefetch_data->backpatch_data[prefetch_data->backpatch_size]) =
-      size;
+  gsize *dst_backpatch_size = (gsize *)
+      &prefetch_data->backpatch_data[prefetch_data->backpatch_size];
+  *dst_backpatch_size = size;
   prefetch_data->backpatch_size += sizeof(gsize);
 
   memcpy(&prefetch_data->backpatch_data[prefetch_data->backpatch_size],
@@ -115,7 +116,8 @@ static void prefetch_read_patches(void) {
        remaining > sizeof(gsize);
        remaining = prefetch_data->backpatch_size - offset) {
 
-    gsize size = *(gsize *)(&prefetch_data->backpatch_data[offset]);
+    gsize *src_backpatch_data = (gsize *)&prefetch_data->backpatch_data[offset];
+    gsize size = *src_backpatch_data;
     offset += sizeof(gsize);
 
     if (prefetch_data->backpatch_size - offset < size) {