Bug 63506

Summary: [JSC] window.onerror lacks file and line number information for ReferenceErrors
Product: WebKit Reporter: Offbeatmammal <offbeatmammal>
Component: WebCore JavaScriptAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: dominicc, j.mont, rafael.lobo
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
URL: http://jsErrLog.appspot.com
Attachments:
Description Flags
Attempt at a repro
none
Demonstrates the failure case described
none
screen shot of "foo" sample failing on OSX none

Description Offbeatmammal 2011-06-27 20:23:44 PDT
with the fix to bug 8519 we now have a working window.onerror, and as implemented in current Chrome builds (also FF and IE) works consistently for all errors encountered so far.

In the current WebKit nightly (r81895) though this error fails to provide correct parameters

<script type="text/javascript">
	Messsage = "This is a test";    // note three s's
	document.write(Message);        // note two s's
</script>

... both the file_loc and the line_no that should be passed to the function are empty:

window.onerror=function(msg, file_loc, line_no){ }

sample available at http://blog.offbeatmammal.com/samples/jserr/jserr2.html (a working error, if that's not an oximoron, is at http://blog.offbeatmammal.com/samples/jserr/jserr.html)
Comment 1 Dominic Cooney 2011-06-27 22:00:35 PDT
Created attachment 98857 [details]
Attempt at a repro
Comment 2 Dominic Cooney 2011-06-27 22:02:14 PDT
Works for me in WebKit nightly r89812.
Comment 3 Offbeatmammal 2011-06-27 22:24:17 PDT
(In reply to comment #2)
> Works for me in WebKit nightly r89812.

the sample repro works fine in r89815 (sorry about earlier typo) but if you change your reference to

foo();

to the same as the error above... it fails
(if I can work out how to add the sample I will)
Comment 4 Offbeatmammal 2011-06-27 22:25:16 PDT
Created attachment 98859 [details]
Demonstrates the failure case described
Comment 5 Dominic Cooney 2011-06-27 22:47:32 PDT
Attachment 98859 [details] works as expected on Mac OS X in WebKit nightly r89812 on Mac but fails in WebKit nightly r89815 on Win.

This may be specific to JSC on Windows. There are no JSC changes in 89812-89815.
Comment 6 Offbeatmammal 2011-06-28 21:34:34 PDT
Created attachment 99032 [details]
screen shot of "foo" sample failing on OSX

don't want to be a pain, but on OSX 10.6.7 with r89812 both the "foo" and the "messSage" samples fail to give either line number or script for me

Looks like the problem is both OSX and Windows
Comment 7 Offbeatmammal 2011-08-15 14:17:44 PDT
updated to remove [win] specific designation
Comment 8 Rafael Brandao 2011-11-18 14:25:05 PST
It's also not working for me. I'm using openSUSE 11.4 (x86_64) and I just came across this bug.
Comment 9 Offbeatmammal 2012-08-03 13:01:07 PDT
appears to be working on Safari 6.0 on OSX 10.7.4 (my current test platform)
not working in Safari on iOS 5.1.1 (no access to 6.0 yet to test)