[Webkit-unassigned] [Bug 49720] New: [Qt] Not possible to catch C++ exception thrown from slot called from JS

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Nov 18 02:24:46 PST 2010


https://bugs.webkit.org/show_bug.cgi?id=49720

           Summary: [Qt] Not possible to catch C++ exception thrown from
                    slot called from JS
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Keywords: Qt
          Severity: Normal
          Priority: P3
         Component: New Bugs
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: kent.hansen at nokia.com


The attached application aborts with

"terminate called after throwing an instance of 'int'"

even though the call to evaluateJavaScript() (which calls the slot that throws the exception) is inside a try..catch.

Last tested against r72178.

This only happens when the JIT is enabled. It seems the C++ runtime is not able to properly unwind the stack and find the exception handler in that case.

The question is whether this is something that can be fixed in the JIT. If not, it seems like we need to introduce try..catch in the QtWebKit bridge (and convert the C++ exception to a JS exception, possibly). Alternatively, we can document that throwing exceptions from C++ is not supported in this case (e.g. the application developer should introduce try..catch on his side where necessary).

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list