From 0d0236819d0c0a58dfe77d2d90cc9f9024bbc172 Mon Sep 17 00:00:00 2001 From: James Roseborough Date: Sat, 11 Apr 2009 00:16:40 +0000 Subject: [PATCH] Additional guards in debug info. --- src/core/org/luaj/vm/CallInfo.java | 5 +++-- src/core/org/luaj/vm/Print.java | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/core/org/luaj/vm/CallInfo.java b/src/core/org/luaj/vm/CallInfo.java index 9828f82a..475b4d20 100644 --- a/src/core/org/luaj/vm/CallInfo.java +++ b/src/core/org/luaj/vm/CallInfo.java @@ -49,8 +49,9 @@ public class CallInfo { */ public int currentline() { int[] li = closure.p.lineinfo; - if ( li != null && pc <= li.length ) - return li[currentpc()]; + int pc = currentpc(); + if ( li != null && pc < li.length ) + return li[pc]; return -1; } diff --git a/src/core/org/luaj/vm/Print.java b/src/core/org/luaj/vm/Print.java index 31b47ce7..5855ad32 100644 --- a/src/core/org/luaj/vm/Print.java +++ b/src/core/org/luaj/vm/Print.java @@ -244,7 +244,7 @@ public class Print extends Lua { } private static int getline(LPrototype f, int pc) { - return f.lineinfo[pc]; + return pc>0 && f.lineinfo!=null && pc