diff --git a/androscalpel/src/code_analysis/register_type.rs b/androscalpel/src/code_analysis/register_type.rs index 78f8403..15cbc96 100644 --- a/androscalpel/src/code_analysis/register_type.rs +++ b/androscalpel/src/code_analysis/register_type.rs @@ -55,6 +55,10 @@ impl MethodCFG<'_> { } // Initialize the entry block from function signature: let mut i = (code.registers_size - code.ins_size) as usize; + if !self.method.is_static { + end_block_reg_tys[0][i] = RegType::Object; // 'this' + i += 1; + } for arg in &self.method.descriptor.proto.get_parameters() { if arg.is_class() || arg.is_array() { end_block_reg_tys[0][i] = RegType::Object;