From a5b38b91b6164b6f6fa8699a908a798e7a3f5a40 Mon Sep 17 00:00:00 2001 From: caheckman <48068198+caheckman@users.noreply.github.com> Date: Thu, 12 Oct 2023 21:40:45 +0000 Subject: [PATCH] GP-3930 Patch to checkUnaliasedReturn --- Ghidra/Features/Decompiler/src/decompile/cpp/varmap.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Ghidra/Features/Decompiler/src/decompile/cpp/varmap.cc b/Ghidra/Features/Decompiler/src/decompile/cpp/varmap.cc index 7764bf99ee..95a82d7072 100644 --- a/Ghidra/Features/Decompiler/src/decompile/cpp/varmap.cc +++ b/Ghidra/Features/Decompiler/src/decompile/cpp/varmap.cc @@ -355,7 +355,7 @@ void ScopeLocal::checkUnaliasedReturn(const vector &alias) if (retOp == (PcodeOp *)0 || retOp->numInput() < 2) return; Varnode *vn = retOp->getIn(1); if (vn->getSpace() != space) return; - if (!vn->isMapped()) return; + // Assume vn is mapped. Cannot check vn->isMapped() as we are in the middle of restructuring. vector::const_iterator iter = lower_bound(alias.begin(),alias.end(),vn->getOffset()); if (iter != alias.end()) { // Alias is greater than or equal to vn offset