diff options
| author | Mason Reed <mason@vector35.com> | 2025-07-04 16:43:31 -0400 |
|---|---|---|
| committer | Mason Reed <mason@vector35.com> | 2025-07-04 16:43:31 -0400 |
| commit | 88eba55a93f4f750ccdfe81575c91c59a73f3a8c (patch) | |
| tree | 5a5bc20457550dfb376187ebabbf1eeebaa73f5a /plugins/warp/src/plugin | |
| parent | f8d3c5eab487e06ad4b944cc92f689e2e367107d (diff) | |
[WARP] Fix possible skipped instructions when multiple IL expressions are appended for a given instruction
Diffstat (limited to 'plugins/warp/src/plugin')
| -rw-r--r-- | plugins/warp/src/plugin/render_layer.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/plugins/warp/src/plugin/render_layer.rs b/plugins/warp/src/plugin/render_layer.rs index d7984303..ab09093f 100644 --- a/plugins/warp/src/plugin/render_layer.rs +++ b/plugins/warp/src/plugin/render_layer.rs @@ -51,7 +51,7 @@ impl HighlightRenderLayer { let relocatable_regions = relocatable_regions(&lifted_il.function().view()); for line in lines { // We use address here instead of index since it's more reliable for other IL's. - if let Some(lifted_il_instr) = lifted_il.instruction_at(line.address) { + for lifted_il_instr in lifted_il.instructions_at(line.address) { if is_blacklisted_instruction(&lifted_il_instr) { line.highlight = self.blacklist; } else if is_variant_instruction(&relocatable_regions, &lifted_il_instr) { @@ -59,7 +59,7 @@ impl HighlightRenderLayer { } } - if let Some(llil_instr) = llil.instruction_at(line.address) { + for llil_instr in llil.instructions_at(line.address) { if is_computed_variant_instruction(&relocatable_regions, &llil_instr) { line.highlight = self.computed_variant; } |
