diff --git a/src/interpret_functions.h b/src/interpret_functions.h index 62d9753c1a9176249041165fbe1bc577883e0305..2d63e1537be3ed867060d76c2be1affda20c9ac4 100644 --- a/src/interpret_functions.h +++ b/src/interpret_functions.h @@ -371,8 +371,7 @@ OPCODE2_TAIL(F_MARK_AND_EXTERNAL, "mark & external", I_UPDATE_SP|I_UPDATE_M_SP, loc.o=Pike_fp->current_object; loc.parent_identifier=Pike_fp->fun; - if (loc.o->prog) - loc.inherit=INHERIT_FROM_INT(loc.o->prog, loc.parent_identifier); + loc.inherit=Pike_fp->context; find_external_context(&loc, arg2); DO_IF_DEBUG({ @@ -400,8 +399,7 @@ OPCODE2(F_EXTERNAL_LVALUE, "& external", I_UPDATE_SP, { loc.o=Pike_fp->current_object; loc.parent_identifier=Pike_fp->fun; - if (loc.o->prog) - loc.inherit=INHERIT_FROM_INT(loc.o->prog, loc.parent_identifier); + loc.inherit=Pike_fp->context; find_external_context(&loc, arg2); if (!loc.o->prog) @@ -2757,8 +2755,7 @@ OPCODE2(F_THIS, "this", I_UPDATE_SP, { loc.o = Pike_fp->current_object; loc.parent_identifier = Pike_fp->fun; - if (loc.o->prog) - loc.inherit = INHERIT_FROM_INT(loc.o->prog, loc.parent_identifier); + loc.inherit = Pike_fp->context; find_external_context(&loc, arg1); DO_IF_DEBUG({