summaryrefslogtreecommitdiff
path: root/src/analysis
diff options
context:
space:
mode:
Diffstat (limited to 'src/analysis')
-rw-r--r--src/analysis/db/items/switcher.c4
-rw-r--r--src/analysis/disass/links.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/src/analysis/db/items/switcher.c b/src/analysis/db/items/switcher.c
index b7957ff..35acf5f 100644
--- a/src/analysis/db/items/switcher.c
+++ b/src/analysis/db/items/switcher.c
@@ -547,7 +547,7 @@ static bool g_db_switcher_run(GDbSwitcher *switcher, GLoadedBinary *binary, ImmO
if (new == IOD_COUNT)
new = g_imm_operand_get_default_display(operand);
- g_imm_operand_set_display(operand, new);
+ g_imm_operand_set_display(&operand, new, G_SHARE_CONTAINER(instr));
len = g_imm_operand_to_string(operand, ASX_INTEL, value);
@@ -561,7 +561,7 @@ static bool g_db_switcher_run(GDbSwitcher *switcher, GLoadedBinary *binary, ImmO
exit_operand:
- g_object_unref(G_OBJECT(proc));
+ g_object_unref(G_OBJECT(instr));
exit_instr:
diff --git a/src/analysis/disass/links.c b/src/analysis/disass/links.c
index e1bc58c..036a621 100644
--- a/src/analysis/disass/links.c
+++ b/src/analysis/disass/links.c
@@ -229,7 +229,7 @@ static void convert_immediate_into_target(GArchInstruction *instr, size_t index,
if (!g_target_operand_resolve(G_TARGET_OPERAND(new), format, false))
g_object_unref(G_OBJECT(new));
else
- _g_arch_instruction_replace_operand(instr, new, op);
+ _g_arch_instruction_replace_operand(instr, op, new);
}