Steps to reproduce using a debug build of WebKit: 1. Download and uncompress the TestCase.zip into a directory called TestCase. 1. Launch MiniBrowser and open a new WK1 window. 2. Navigate to TestCase/test.html. 3. Drag and drop the PDF (the content demarcated with a black border on the page) within the web view. 4. Quit MiniBrowser. Then MiniBrowser will crash with a backtrace of the form: #0 0x0000000104d84e37 in ::-[NSPasteboard(WebExtras) _web_writePromisedRTFDFromArchive:containsImage:](WebArchive *, BOOL) at /Volumes/.../OpenSource/Source/WebKitLegacy/mac/Misc/WebNSPasteboardExtras.mm:220 #1 0x0000000104d1016b in ::-[WebHTMLView(WebPrivate) pasteboard:provideDataForType:](NSPasteboard *, NSString *) at /Volumes/.../OpenSource/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm:2013 #2 0x00007fff4fe31bf8 in __68-[NSPasteboard _setOwner:forTypes:atIndex:selector:usesPboardTypes:]_block_invoke () #3 0x00007fff5226e3fd in -[_CFPasteboardEntry resolveLocalPromisedData] () #4 0x00007fff52272296 in ___CFPasteboardHandleFulfillMessage_block_invoke.591 () #5 0x00007fff521bb22c in __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ () #6 0x00007fff5219da9b in __CFRunLoopDoBlocks () #7 0x00007fff5219d0ee in __CFRunLoopRun () #8 0x00007fff5219c940 in CFRunLoopRunSpecific () #9 0x00007fff52229c95 in CFPasteboardResolveAllPromisedData () #10 0x00007fff521b2bbc in __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ () #11 0x00007fff521b2a95 in _CFXRegistrationPost () #12 0x00007fff521b27d1 in ___CFXNotificationPost_block_invoke () #13 0x00007fff52170432 in -[_CFXNotificationRegistrar find:object:observer:enumerator:] () #14 0x00007fff5216f4c1 in _CFXNotificationPost () #15 0x00007fff54481e41 in -[NSNotificationCenter postNotificationName:object:userInfo:] () #16 0x00007fff4f97db63 in -[NSApplication terminate:] () #17 0x00007fff4fefb804 in -[NSApplication(NSResponder) sendAction:to:from:] () #18 0x00007fff4f9c6dcf in -[NSMenuItem _corePerformAction] () #19 0x00007fff4f9c6b53 in -[NSCarbonMenuImpl performActionWithHighlightingForItemAtIndex:] () #20 0x00007fff4f9c59b5 in -[NSMenu performKeyEquivalent:] () #21 0x00007fff4fefa48d in routeKeyEquivalent () #22 0x00007fff4fef7962 in -[NSApplication(NSEvent) sendEvent:] () #23 0x00007fff4f7a3294 in -[NSApplication run] () #24 0x00007fff4f772c87 in NSApplicationMain () #25 0x0000000100005a8b in main at /Volumes/.../OpenSource/Tools/MiniBrowser/mac/main.m:32
Created attachment 336809 [details] TestCase
Created attachment 336821 [details] Patch and manual test
Created attachment 336865 [details] Patch and manual test Post same patch so that EWS can process now that the patch for bug #184154 landed.
Comment on attachment 336865 [details] Patch and manual test R=me.
Comment on attachment 336865 [details] Patch and manual test Clearing flags on attachment: 336865 Committed r230117: <https://trac.webkit.org/changeset/230117>
All reviewed patches have been landed. Closing bug.
<rdar://problem/39051645>
Reverted r230117 for reason: Broke find-in-page for PDFs Committed r230847: <https://trac.webkit.org/changeset/230847>
Created attachment 338453 [details] Patch and manual test
Comment on attachment 338453 [details] Patch and manual test View in context: https://bugs.webkit.org/attachment.cgi?id=338453&action=review > Source/WebKitLegacy/mac/ChangeLog:9 > + Fixes an assertion failure when quiting an app that uses a Legacy WebKit web view after dragging-and- typo: quiting > Source/WebKitLegacy/mac/ChangeLog:13 > + from the main frame's WebHTMLView and promise AppKit that will provide a Rich Text Format (RTF) document “that we will provide” or “to provide”
(In reply to mitz from comment #10) > Comment on attachment 338453 [details] > Patch and manual test > > View in context: > https://bugs.webkit.org/attachment.cgi?id=338453&action=review > > > Source/WebKitLegacy/mac/ChangeLog:9 > > + Fixes an assertion failure when quiting an app that uses a Legacy WebKit web view after dragging-and- > > typo: quiting > Will fix before landing. > > Source/WebKitLegacy/mac/ChangeLog:13 > > + from the main frame's WebHTMLView and promise AppKit that will provide a Rich Text Format (RTF) document > > “that we will provide” or “to provide” Will fix before landing.
Comment on attachment 338453 [details] Patch and manual test View in context: https://bugs.webkit.org/attachment.cgi?id=338453&action=review >>> Source/WebKitLegacy/mac/ChangeLog:13 >>> + from the main frame's WebHTMLView and promise AppKit that will provide a Rich Text Format (RTF) document >> >> “that we will provide” or “to provide” > > Will fix before landing. Will use "that we will provide"
Committed r231061: <https://trac.webkit.org/changeset/231061>