Additional guards in debug info.

This commit is contained in:
James Roseborough
2009-04-11 00:16:40 +00:00
parent a159a50cee
commit 0d0236819d
2 changed files with 4 additions and 3 deletions

View File

@@ -49,8 +49,9 @@ public class CallInfo {
*/ */
public int currentline() { public int currentline() {
int[] li = closure.p.lineinfo; int[] li = closure.p.lineinfo;
if ( li != null && pc <= li.length ) int pc = currentpc();
return li[currentpc()]; if ( li != null && pc < li.length )
return li[pc];
return -1; return -1;
} }

View File

@@ -244,7 +244,7 @@ public class Print extends Lua {
} }
private static int getline(LPrototype f, int pc) { private static int getline(LPrototype f, int pc) {
return f.lineinfo[pc]; return pc>0 && f.lineinfo!=null && pc<f.lineinfo.length? f.lineinfo[pc]: -1;
} }
static void printHeader(LPrototype f) { static void printHeader(LPrototype f) {