Replace error reporting code with calls to LVM.traceback()

Wed, 24 Nov 2010 02:52:37 +0000

author
Matthew Wild <mwild1@gmail.com>
date
Wed, 24 Nov 2010 02:52:37 +0000
changeset 138
f9bb0e212d28
parent 137
6872878601d9
child 139
055fe658d0b2

Replace error reporting code with calls to LVM.traceback()

lvm.js file | annotate | diff | comparison | revisions
--- a/lvm.js	Wed Nov 24 02:52:01 2010 +0000
+++ b/lvm.js	Wed Nov 24 02:52:37 2010 +0000
@@ -932,15 +932,11 @@
 }
 catch(e)
 {
-	var currframe = testvm.callstack[testvm.callstack.length-1];
+	var trace = testvm.traceback();
+	var currframe = trace[0];
 	if(currframe)
 	{
-		var currfunc = currframe.f;
-		var sourceName = (currfunc.sourceName||"=<unknown>").substr(1);
-		var line = "?";
-		if(currfunc.sourceLines && currfunc.sourceLines[currframe.pc-1])
-			line = currfunc.sourceLines[currframe.pc-1];
-		sys.print("lvm.js: "+sourceName+":"+line+": ");
+		sys.print("lvm.js: "+currframe.sourceName+":"+currframe.line+": ");
 	}
 	sys.puts(e);
 	if(typeof(e) == "object" && "stack" in e)

mercurial