31 lines
1.3 KiB
Diff
31 lines
1.3 KiB
Diff
|
# HG changeset patch
|
||
|
# User Evan Klitzke <evan@eklitzke.org>
|
||
|
# Parent c5e0ee17388381f96d0acf4bdd9d163827719096
|
||
|
Bug 1460810 - [Gtk/Wayland] Handle error value (-1) returned by gtk_section_data_get_length(), r=stransky
|
||
|
|
||
|
diff --git a/widget/gtk/nsClipboardWayland.cpp b/widget/gtk/nsClipboardWayland.cpp
|
||
|
--- a/widget/gtk/nsClipboardWayland.cpp
|
||
|
+++ b/widget/gtk/nsClipboardWayland.cpp
|
||
|
@@ -662,18 +662,19 @@ wayland_clipboard_contents_received(GtkC
|
||
|
delete fastTrack;
|
||
|
}
|
||
|
|
||
|
void
|
||
|
nsRetrievalContextWayland::TransferFastTrackClipboard(
|
||
|
int aClipboardRequestNumber, GtkSelectionData *aSelectionData)
|
||
|
{
|
||
|
if (mClipboardRequestNumber == aClipboardRequestNumber) {
|
||
|
- mClipboardDataLength = gtk_selection_data_get_length(aSelectionData);
|
||
|
- if (mClipboardDataLength > 0) {
|
||
|
+ int dataLength = gtk_selection_data_get_length(aSelectionData);
|
||
|
+ if (dataLength > 0) {
|
||
|
+ mClipboardDataLength = dataLength;
|
||
|
mClipboardData = reinterpret_cast<char*>(
|
||
|
g_malloc(sizeof(char)*mClipboardDataLength));
|
||
|
memcpy(mClipboardData, gtk_selection_data_get_data(aSelectionData),
|
||
|
sizeof(char)*mClipboardDataLength);
|
||
|
}
|
||
|
} else {
|
||
|
NS_WARNING("Received obsoleted clipboard data!");
|
||
|
}
|