So when the fdb debugger runs, it prints out a bunch of things that look
like maybe verifier errors, starting with
[trace] verify <anonymous>()
[trace] exception[0] from=47 to=186 target=192 type=*
name=$lzsc$e
[trace] exception[1] from=45 to=281 target=285 type=*
name=(none)
[trace] stack:
[trace] scope: [global Object$ LzEventable$ LzNode$
LzView$ $lzc$class_LzDebugWindow$]
[trace] locals: Object * * *
[trace] 0:debugfile
"/Users/hqm/openlaszlo/lib/jakarta-tomcat-5.0.30/temp/lzswf9/Users/hqm/openlaszlo/trunk6/test/foo/build/hello;;$lzc$class_LzDebugWindow.as"
[trace] stack:
[trace] scope: [global Object$ LzEventable$ LzNode$
LzView$ $lzc$class_LzDebugWindow$]
[trace] locals: Object * * *
[trace] 3:debugline 36
[trace] stack:
[trace] scope: [global Object$ LzEventable$ LzNode$
LzView$ $lzc$class_LzDebugWindow$]
[trace] locals: Object * * *
[trace] 5:newactivation
[trace] stack: <anonymous>
The intermediate .as files made by compiling swf10 get stuck into a temp dir
in tomcat, on my machine that's
~/openlaszlo/lib/jakarta-tomcat-5.0.30/temp/lzswf9/Users/hqm/openlaszlo/trunk6/test/foo/build/hello/
for a test app test/foo/hello.lzx
The lzDebugWindow.as file shows this code block which ends at line 36 (it's
an anonymous method
on LzDebugWindow class)
function ($lzc$ignore_$1) {
/* -*- file: -*- */
var $lzsc$d_$3 = Debug;
var $lzsc$s_$4 = $lzsc$d_$3.backtraceStack;
try {
if ($lzsc$s_$4) {
var $lzsc$a_$5 = [$lzc$ignore_$1];
$lzsc$a_$5.callee = "applied='${...}'";
$lzsc$a_$5["this"] = this;
$lzsc$a_$5.filename = "debugger/debugger.lzx";
$lzsc$a_$5.lineno = 122;
$lzsc$s_$4.push($lzsc$a_$5);
if ($lzsc$s_$4.length > $lzsc$s_$4.maxDepth) {
$lzsc$d_$3.stackOverflow()
}};
with (this) {
/* -*- file: debugger/debugger.lzx#122.262 -*- */
var $lzc$newvalue_$2 = parent.default_width;
/* -*- file: -*- */
if ($lzc$newvalue_$2 !== this["applied"] || !this.inited) {
$lzsc$a_$5.lineno = 128, this.setAttribute("applied", $lzc$newvalue_$2)
}}}
catch ($lzsc$e) {
if ($lzsc$e is Error && $lzsc$e !== lz["$lzsc$thrownError"]) {
$lzsc$runtime.reportException("debugger/debugger.lzx", $lzsc$a_$5.lineno,
$lzsc$e)
} else {
throw $lzsc$e
}}
finally {
if ($lzsc$s_$4) {
$lzsc$s_$4.pop()
}}}
So I'm going to look at that and see if there's something that might be
confusing the flex compiler...
On Tue, Sep 29, 2009 at 6:13 PM, P T Withington <[email protected]> wrote:
> [This is not really a review request, more a request for collaboration.
> I've made a cut at getting the backtrace annotations working in swf9 and
> made a lot of progress, but it is currently bombing in a way that I can't
> debug. I'm using:
>
> fdb "
> http://repo-man.home:8080/trunk/test/smoke/simple.lzx?debug=true&lzr=swf10&lzbacktrace=true
> "
>
> as my test case. It halts implying that canvas has no makeChild method.
> If anyone feels like unpacking this and playing around to see if they can
> push it along, that would be great... I've got to stop for the day.]
>
> Change 20090929-ptw-y by [email protected] on 2009-09-29 18:01:59 EDT
> in /Users/ptw/OpenLaszlo/trunk
> for http://svn.openlaszlo.org/openlaszlo/trunk
>
> Summary: A cut at getting backtracing to work in swf9
>
> Bugs Fixed: LPP-8479 Debug.evalCarefully not necessary after LPP-8222?
> [I got carried away trying to make the line numbering in the debugger
> more accurate...]
>
> Technical Reviewer: hminsky (pending)
> QA Reviewer: [email protected] (pending)
>
> Release Notes:
> The debugger indicates when the file/line information on a debugger
> message is not accurate. If the location information is coming
> from the view associated with the error, rather than @file it will
> print %file. If the line number is only approximate (backtracing
> is not enabled), rather than #line it will print ~line.
>
> Details:
>
>
> Tests:
> Nothing works yet...
>
> Files:
> M test/smoke/lztext.lzl
> M test/smoke/lzunit-test.lzl
> M WEB-INF/lps/lfc/kernel/swf9/LzPreloader.as
> M WEB-INF/lps/lfc/kernel/swf9/LFCApplication.as
> M WEB-INF/lps/lfc/debugger/LzMessage.lzs
> M WEB-INF/lps/lfc/debugger/LzDebug.lzs
> M WEB-INF/lps/lfc/debugger/platform/swf9/LzDebug.as
> M WEB-INF/lps/lfc/debugger/LzMonitor.lzs
> M WEB-INF/lps/lfc/debugger/LzTrace.lzs
> M WEB-INF/lps/lfc/debugger/LzBacktrace.lzs
> M WEB-INF/lps/lfc/build.xml
> M WEB-INF/lps/lfc/compiler/LzDebugStub.lzs
> M WEB-INF/lps/lfc/compiler/LzBootstrapDebugService.lzs
> M WEB-INF/lps/server/src/org/openlaszlo/cm/CompilationManager.java
> M WEB-INF/lps/server/src/org/openlaszlo/sc/JavascriptGenerator.java
> M WEB-INF/lps/server/src/org/openlaszlo/sc/SWF9External.java
> M WEB-INF/lps/server/src/org/openlaszlo/sc/SWF9Generator.java
> M WEB-INF/lps/server/src/org/openlaszlo/sc/Compiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/ToplevelCompiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/SWF9Writer.java
> M WEB-INF/lps/templates/info-response.xslt
> M lps/components/debugger/platform/swf9/eval.lzs
>
> Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20090929-ptw-y.tar
>
--
Henry Minsky
Software Architect
[email protected]
_______________________________________________
Laszlo-reviews mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews