On Wed, 20 Nov 2019 15:04:07 GMT, Kevin Rushforth <k...@openjdk.org> wrote:

> On Wed, 20 Nov 2019 07:05:40 GMT, Arun Joseph <ajos...@openjdk.org> wrote:
> 
>> Issue: Native part of WebView throws a DOMException and then, continues 
>> executing the rest of the function assuming that value is present. This 
>> causes the JVM to crash when retrieving the value.
>> 
>> Fix: Return from the function if exception was raised (code is similar to 
>> exception handling in 
>> [WebKitLegacy/java/DOM/JavaTreeWalker.cpp](https://github.com/openjdk/jfx/blob/master/modules/javafx.web/src/main/native/Source/WebKitLegacy/java/DOM/JavaTreeWalker.cpp))
>> 
>> This fix also needs to be applied to all function calls in 
>> [WebKitLegacy/java/DOM](https://github.com/openjdk/jfx/tree/master/modules/javafx.web/src/main/native/Source/WebKitLegacy/java/DOM)
>>  functions which raises DOMError similar to createAttributeImpl().
>> 
>> ----------------
>> 
>> Commits:
>>  - acc52780: 8233747: JVM crash in 
>> com.sun.webkit.dom.DocumentImpl.createAttribute
>> 
>> Changes: https://git.openjdk.java.net/jfx/pull/47/files
>>  Webrev: https://webrevs.openjdk.java.net/jfx/47/webrev.00
>>   Issue: https://bugs.openjdk.java.net/browse/JDK-8233747
>>   Stats: 7 lines in 1 file changed: 6 ins; 0 del; 1 mod
>>   Patch: https://git.openjdk.java.net/jfx/pull/47.diff
>>   Fetch: git fetch https://git.openjdk.java.net/jfx pull/47/head:pull/47
> 
> The proposed fix seems more like a workaround to me. There are dozens of very 
> similar calls to `raiseOnDOMError` in this and other files, so I would think 
> a more general solution is needed.

For calls to `raiseOnDOMError()` with argument of type `ExceptionOr<Ref<T>>`, 
the returned value is again passed through `WTF::getPtr()`. This doesn't modify 
the value returned, but removing it will require changing about 40 function 
calls.

PR: https://git.openjdk.java.net/jfx/pull/47

Reply via email to