WebKit Bugzilla
Attachment 369422 Details for
Bug 197712
: Don't crash when DOMNode.addEventListener:listener:useCapture: is called with a nil listener
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-197712-20190508142830.patch (text/plain), 3.69 KB, created by
Alex Christensen
on 2019-05-08 14:28:30 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Alex Christensen
Created:
2019-05-08 14:28:30 PDT
Size:
3.69 KB
patch
obsolete
>Index: Source/WebKitLegacy/mac/ChangeLog >=================================================================== >--- Source/WebKitLegacy/mac/ChangeLog (revision 245064) >+++ Source/WebKitLegacy/mac/ChangeLog (working copy) >@@ -1,3 +1,15 @@ >+2019-05-08 Alex Christensen <achristensen@webkit.org> >+ >+ Don't crash when DOMNode.addEventListener:listener:useCapture: is called with a nil listener >+ https://bugs.webkit.org/show_bug.cgi?id=197712 >+ <rdar://problem/50429770> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * DOM/ObjCEventListener.h: >+ * DOM/ObjCEventListener.mm: >+ (WebCore::ObjCEventListener::wrap): >+ > 2019-05-03 Daniel Bates <dabates@apple.com> > > Pass KeyboardEvent by reference in more places >Index: Source/WebKitLegacy/mac/DOM/ObjCEventListener.h >=================================================================== >--- Source/WebKitLegacy/mac/DOM/ObjCEventListener.h (revision 245064) >+++ Source/WebKitLegacy/mac/DOM/ObjCEventListener.h (working copy) >@@ -37,7 +37,7 @@ namespace WebCore { > class ObjCEventListener : public EventListener { > public: > typedef id<DOMEventListener> ObjCListener; >- static Ref<ObjCEventListener> wrap(ObjCListener); >+ static RefPtr<ObjCEventListener> wrap(ObjCListener); > > static const ObjCEventListener* cast(const EventListener* listener) > { >Index: Source/WebKitLegacy/mac/DOM/ObjCEventListener.mm >=================================================================== >--- Source/WebKitLegacy/mac/DOM/ObjCEventListener.mm (revision 245064) >+++ Source/WebKitLegacy/mac/DOM/ObjCEventListener.mm (working copy) >@@ -47,12 +47,13 @@ ObjCEventListener* ObjCEventListener::fi > return map->get(listener); > } > >-Ref<ObjCEventListener> ObjCEventListener::wrap(ObjCListener listener) >+RefPtr<ObjCEventListener> ObjCEventListener::wrap(ObjCListener listener) > { >- RefPtr<ObjCEventListener> wrapper = find(listener); >- if (wrapper) >- return wrapper.releaseNonNull(); >- return adoptRef(*new ObjCEventListener(listener)); >+ if (!listener) >+ return nullptr; >+ if (RefPtr<ObjCEventListener> wrapper = find(listener)) >+ return wrapper; >+ return adoptRef(new ObjCEventListener(listener)); > } > > ObjCEventListener::ObjCEventListener(ObjCListener listener) >Index: Tools/ChangeLog >=================================================================== >--- Tools/ChangeLog (revision 245069) >+++ Tools/ChangeLog (working copy) >@@ -1,3 +1,14 @@ >+2019-05-08 Alex Christensen <achristensen@webkit.org> >+ >+ Don't crash when DOMNode.addEventListener:listener:useCapture: is called with a nil listener >+ https://bugs.webkit.org/show_bug.cgi?id=197712 >+ <rdar://problem/50429770> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm: >+ (TestWebKitAPI::TEST): >+ > 2019-05-08 Ryan Haddad <ryanhaddad@apple.com> > > Unreviewed, rolling out r244952. >Index: Tools/TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm >=================================================================== >--- Tools/TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm (revision 245064) >+++ Tools/TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm (working copy) >@@ -81,6 +81,7 @@ TEST(WebKitLegacy, DeallocWebViewInEvent > > auto listener = adoptNS([[DeallocWebViewInEventListener alloc] init]); > [[[webView mainFrameDocument] body] addEventListener:@"keypress" listener:listener.get() useCapture:NO]; >+ [[[webView mainFrameDocument] body] addEventListener:@"keypress" listener:nullptr useCapture:NO]; > listener = nullptr; > [webView close]; > [pool drain];
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
thorton
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 197712
: 369422