diff --git a/lib/include/simulate.pre.pike b/lib/include/simulate.pre.pike
index f49d5e5436ee8c4611ea582691a5a7d3d02352ab..c210d37e2a1a0654a0aa38caf7e1f7dd1f012c1b 100644
--- a/lib/include/simulate.pre.pike
+++ b/lib/include/simulate.pre.pike
@@ -21,8 +21,8 @@ object previous_object()
   o=function_object(trace[-2][2]);
   for(e=sizeof(trace)-3;e>=0;e--)
   {
-    if(!trace[1][2]) continue;
-    ret=function_object(trace[1][2]);
+    if(!trace[e][2]) continue;
+    ret=function_object(trace[e][2]);
     if(o!=ret) return ret;
   }
   return 0;