[GTK] Crashes in WebCore::PasteboardHelper::fillSelectionData when source file of...
authorcarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 Aug 2017 11:02:33 +0000 (11:02 +0000)
committercarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 Aug 2017 11:02:33 +0000 (11:02 +0000)
commit18045f6882be2006a8b34e1c316173ac942076cf
treeb19e2c10127ec031ee5bbcbfca07e3d28b755f95
parent15e27ab561f4dded0e529c211e0ceebcc0e33662
[GTK] Crashes in WebCore::PasteboardHelper::fillSelectionData when source file of drag is unavailable
https://bugs.webkit.org/show_bug.cgi?id=174161

Reviewed by Xabier Rodriguez-Calvar.

In r219385 we changed the early return in fillSelectionData() to check the selection data length instead of the
data pointer. However, the gtk_selection_data_get_length() can return -1, so we need to check also if the value
less than 0. The case of setting an empty string could be valid depending on the target type, so it's better to
return early only when data lenght is less than 0 and handle the 0 length case in each target.

* platform/gtk/PasteboardHelper.cpp:
(WebCore::PasteboardHelper::fillSelectionData):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@220525 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/gtk/PasteboardHelper.cpp