From 1af23eaaa1d7726a37e76c3af2951ad51f41ee81 Mon Sep 17 00:00:00 2001 From: Jason Hiser <jdhiser@gmail.com> Date: Fri, 1 Feb 2019 09:42:28 -0500 Subject: [PATCH] improved addNewInsn to create an address if not given one. Former-commit-id: 7aa2b1319a9b12a4456351756733bbe2ad6029ba --- libIRDB/src/core/fileir.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libIRDB/src/core/fileir.cpp b/libIRDB/src/core/fileir.cpp index 3364a399d..73442e61e 100644 --- a/libIRDB/src/core/fileir.cpp +++ b/libIRDB/src/core/fileir.cpp @@ -1866,6 +1866,11 @@ IRDB_SDK::Instruction_t* FileIR_t::addNewInstruction( auto irdb_addr = dynamic_cast<libIRDB::AddressID_t*>(addr); auto irdb_indTarg = dynamic_cast<libIRDB::AddressID_t*>(indTarg); + if(irdb_addr==nullptr) + { + irdb_addr=dynamic_cast<libIRDB::AddressID_t*>(addNewAddress(getFile()->getBaseID(), 0)); + } + auto newinsn=new libIRDB::Instruction_t(BaseObj_t::NOT_IN_DATABASE, irdb_addr, irdb_func, BaseObj_t::NOT_IN_DATABASE, bits, "", comment, irdb_indTarg, BaseObj_t::NOT_IN_DATABASE); GetInstructions().insert(newinsn); -- GitLab