diff --git a/libIRDB/test/fill_in_indtargs.cpp b/libIRDB/test/fill_in_indtargs.cpp index 378eaa4d4aa9d6bb0bba25060e57614cd1e36c61..fc7d2762de5a2de08e63dc8a41a024ce10bcbbd4 100644 --- a/libIRDB/test/fill_in_indtargs.cpp +++ b/libIRDB/test/fill_in_indtargs.cpp @@ -1338,7 +1338,8 @@ Note: Here the operands of the add are reversed, so lookup code was not finding // instruction address (and include the instruction's size, etc. // but, fix_calls has already removed this oddity so we can relocate // the instruction. - virtual_offset_t D1=strtol(disasm.getOperand(1).getString().c_str()/*Argument2.ArgMnemonic*/, NULL, 16); + virtual_offset_t D1=strtol(disasm.getOperand(1).getString().c_str()/*Argument2.ArgMnemonic*/, NULL, 0); + D1+=I5_cur->GetAddress()->GetVirtualOffset(); // find the section with the data table EXEIO::section *pSec=find_section(D1,elfiop);