35 lines
1.4 KiB
Diff
35 lines
1.4 KiB
Diff
|
|
||
|
# HG changeset patch
|
||
|
# User Evan Klitzke <evan@eklitzke.org>
|
||
|
# Date 1526337180 -10800
|
||
|
# Node ID 5c1d015760f220f5438ffa23a585140db7a9801d
|
||
|
# Parent 505667081ae29ee0a66ef5ba19c3870570b08564
|
||
|
Bug 1438136 - [Wayland/Clipboard] Null terminate text string returned by GetClipboardText(), r=stransky
|
||
|
|
||
|
diff --git a/widget/gtk/nsClipboardWayland.cpp b/widget/gtk/nsClipboardWayland.cpp
|
||
|
--- a/widget/gtk/nsClipboardWayland.cpp
|
||
|
+++ b/widget/gtk/nsClipboardWayland.cpp
|
||
|
@@ -666,19 +666,20 @@ void
|
||
|
nsRetrievalContextWayland::TransferFastTrackClipboard(
|
||
|
int aClipboardRequestNumber, GtkSelectionData *aSelectionData)
|
||
|
{
|
||
|
if (mClipboardRequestNumber == aClipboardRequestNumber) {
|
||
|
int dataLength = gtk_selection_data_get_length(aSelectionData);
|
||
|
if (dataLength > 0) {
|
||
|
mClipboardDataLength = dataLength;
|
||
|
mClipboardData = reinterpret_cast<char*>(
|
||
|
- g_malloc(sizeof(char)*mClipboardDataLength));
|
||
|
+ g_malloc(sizeof(char)*(mClipboardDataLength+1)));
|
||
|
memcpy(mClipboardData, gtk_selection_data_get_data(aSelectionData),
|
||
|
sizeof(char)*mClipboardDataLength);
|
||
|
+ mClipboardData[mClipboardDataLength] = '\0';
|
||
|
}
|
||
|
} else {
|
||
|
NS_WARNING("Received obsoleted clipboard data!");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
const char*
|
||
|
nsRetrievalContextWayland::GetClipboardData(const char* aMimeType,
|
||
|
|