From becde297d48b3b251694960fc7b23c050adf6565 Mon Sep 17 00:00:00 2001
From: Jason Hiser <jdhiser@gmail.com>
Date: Mon, 16 Sep 2019 22:22:16 -0400
Subject: [PATCH] more type-punning removal

---
 unpin_arm32.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/unpin_arm32.cpp b/unpin_arm32.cpp
index 6705e45..fe643c4 100644
--- a/unpin_arm32.cpp
+++ b/unpin_arm32.cpp
@@ -73,7 +73,10 @@ void UnpinArm32_t::HandlePcrelReloc(Instruction_t* from_insn, Relocation_t* relo
 	uint8_t    insn_bytes[insn_bytes_len]; // compiler disallows init on some platforms.
         // but memcpy should init it sufficiently.
         memcpy(insn_bytes, from_insn->getDataBits().c_str(), insn_bytes_len);
-        const auto full_insn=*(uint32_t*)insn_bytes;
+        auto full_insn=(uint32_t)0;
+	memcpy(&full_insn,insn_bytes, sizeof(full_insn));
+
+
 	const auto mask1  = (1<<1 )-1;
 	const auto mask4  = (1<<4 )-1;
 	const auto mask8  = (1<<8 )-1;
-- 
GitLab