Add base pointer to frame class. Has no real use outside of webijvm
This commit is contained in:
@@ -235,13 +235,13 @@ fn iinc(machine: &mut Machine) -> Result<()> {
|
||||
|
||||
fn invokevirtual(machine: &mut Machine) -> Result<()> {
|
||||
let method_index = machine.block.read_u16()?;
|
||||
let invoke_addr = machine.pool.get(method_index as usize)?;
|
||||
let invoke_addr = machine.pool.get(method_index as usize)? as usize;
|
||||
let return_addr = machine.get_program_counter();
|
||||
|
||||
machine.block.seek(invoke_addr as usize)?;
|
||||
machine.block.seek(invoke_addr)?;
|
||||
let arg_count = machine.block.read_u16()?;
|
||||
let var_count = machine.block.read_u16()?;
|
||||
let mut newframe = Frame::new((arg_count + var_count) as usize);
|
||||
let mut newframe = Frame::new((arg_count + var_count) as usize, invoke_addr);
|
||||
|
||||
// Lifetime for cur_stack
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user