From 1d50b04ea008ec76f6a440826a39efe64efe0c69 Mon Sep 17 00:00:00 2001 From: Nikolai Nosov Date: Sun, 2 Feb 2020 15:44:21 +0400 Subject: [PATCH] dwarf_stack: fix set/get value --- framework/dwarf_stack.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/framework/dwarf_stack.cpp b/framework/dwarf_stack.cpp index ed207e6..b431812 100644 --- a/framework/dwarf_stack.cpp +++ b/framework/dwarf_stack.cpp @@ -71,7 +71,7 @@ void pst_dwarf_value_init(pst_dwarf_value* dv, char* v, uint32_t s, int t) dv->type = t; dv->allocated = false; dv->set = value_set; - memcpy(&dv->value, v, s); + value_set(dv, v, s, t); } pst_dwarf_value* pst_dwarf_value_new(char* v, uint32_t s, int t) @@ -154,6 +154,8 @@ bool stack_get_value(pst_dwarf_stack* st, uint64_t* value) } else if(v->type & DWARF_TYPE_MEMORY_LOC) { // dereference memory location *value = *((uint64_t*)v->value.uint64); + } else { + *value = v->value.uint64; } return true;