From b3e2cedff9b47285709d83d9dc53dde5f2ba19e5 Mon Sep 17 00:00:00 2001 From: daurnimator Date: Fri, 5 May 2017 11:14:01 +1000 Subject: src/ldebug.js: Fix off by one error when calculating line number --- src/ldebug.js | 2 +- tests/ldblib.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ldebug.js b/src/ldebug.js index aed41e2..18a36a6 100644 --- a/src/ldebug.js +++ b/src/ldebug.js @@ -18,7 +18,7 @@ const CT = defs.constant_types; const TS = defs.thread_status; const currentline = function(ci) { - return ci.func.value.p.lineinfo ? ci.func.value.p.lineinfo[ci.pcOff] : -1; + return ci.func.value.p.lineinfo ? ci.func.value.p.lineinfo[ci.pcOff-1] : -1; }; /* diff --git a/tests/ldblib.js b/tests/ldblib.js index 4569e98..1adfef5 100644 --- a/tests/ldblib.js +++ b/tests/ldblib.js @@ -351,7 +351,7 @@ test('debug.traceback (with a global)', function (t) { \t[string "traceback-test"]:7: in function 'rec' \t[string "traceback-test"]:7: in function 'rec' \t[string "traceback-test"]:7: in function 'rec' -\t[string "traceback-test"]:15: in main chunk`, +\t[string "traceback-test"]:13: in main chunk`, "Correct element(s) on the stack" ); @@ -410,7 +410,7 @@ test('debug.traceback (with a upvalue)', function (t) { \t[string "traceback-test"]:8: in upvalue 'rec' \t[string "traceback-test"]:8: in upvalue 'rec' \t[string "traceback-test"]:8: in local 'rec' -\t[string "traceback-test"]:16: in main chunk`, +\t[string "traceback-test"]:14: in main chunk`, "Correct element(s) on the stack" ); -- cgit v1.2.3-70-g09d2