|Summary:||REGRESSION(r262680): [GTK] Crash in WebKit::DropTarget::didPerformAction|
|Product:||WebKit||Reporter:||Michael Catanzaro <mcatanzaro>|
|Severity:||Normal||CC:||bugs-noreply, cgarcia, darin, ddkilzer, mcatanzaro|
|Version:||WebKit Nightly Build|
Description Michael Catanzaro 2020-07-02 08:22:36 PDT
Comment 1 Michael Catanzaro 2020-07-02 10:36:52 PDT
The problem is that m_operation is not engaged (i.e. is not set), that causes the Optional to RELEASE_ASSERT() when it is dereferenced. I haven't looked at this long enough to know if it's correct, but: if ((!operation && !m_operation) || *operation == *m_operation) The crash would surely not occur if this was an || check: if (!operation || !m_operation || *operation == *m_operation) That said, it looks like m_operation is not needed at all in the GTK 3 case. It can probably just be removed?
Comment 2 Michael Catanzaro 2020-07-03 08:15:40 PDT
OK I found a reproducer. Drag any file from nautilus into the web view. Crash.
Comment 3 Carlos Garcia Campos 2020-07-07 06:30:19 PDT
Created attachment 403681 [details] Patch
Comment 4 Carlos Garcia Campos 2020-07-07 06:57:47 PDT
Committed r264016: <https://trac.webkit.org/changeset/264016>