Fix #rizin302 - Fix function modification detection false ##rizin

This commit is contained in:
GustavoLCR 2021-01-19 02:56:01 +01:00 committed by pancake
parent 21c98d60ac
commit c972d6a523
2 changed files with 3 additions and 0 deletions

View File

@ -212,6 +212,7 @@ R_API void r_anal_block_set_size(RAnalBlock *block, ut64 size) {
R_API bool r_anal_block_relocate(RAnalBlock *block, ut64 addr, ut64 size) {
if (block->addr == addr) {
r_anal_block_set_size (block, size);
r_anal_block_update_hash (block);
return true;
}
if (r_anal_get_block_at (block->anal, addr)) {
@ -764,6 +765,7 @@ R_API RAnalBlock *r_anal_block_chop_noreturn(RAnalBlock *block, ut64 addr) {
// Chop the block. Resize and remove all destination addrs
r_anal_block_set_size (block, addr - block->addr);
r_anal_block_update_hash (block);
block->jump = UT64_MAX;
block->fail = UT64_MAX;
r_anal_switch_op_free (block->switch_op);

View File

@ -122,6 +122,7 @@ R_API int r_anal_function_resize(RAnalFunction *fcn, int newsize) {
}
if (bb->addr + bb->size >= eof) {
r_anal_block_set_size (bb, eof - bb->addr);
r_anal_block_update_hash (bb);
}
if (bb->jump != UT64_MAX && bb->jump >= eof) {
bb->jump = UT64_MAX;