[gtk/wip/carlosg/fix-issue-1] wayland: Improve EOF detection when reading selections
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/carlosg/fix-issue-1] wayland: Improve EOF detection when reading selections
- Date: Thu, 8 Feb 2018 15:31:52 +0000 (UTC)
commit 08f60dbcf6eae0549eb7d3715582f46361a02800
Author: Carlos Garnacho <carlosg gnome org>
Date: Wed Feb 7 18:30:18 2018 +0100
wayland: Improve EOF detection when reading selections
g_input_stream_read_bytes() roughly provides the same guarantees
than g_input_stream_read() wrt the number of bytes being possibly
read (i.e. it being a best effort, but no real guarantees).
Instead, rely on the 0-len read that we'd get at the end of the
transfer.
Fixes clipboard/DnD transfers possibly being cut short, resulting
on "Broken pipe" errors on the other side.
https://gitlab.gnome.org/GNOME/gtk/issues/1
Closes: #1
gdk/wayland/gdkselection-wayland.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
---
diff --git a/gdk/wayland/gdkselection-wayland.c b/gdk/wayland/gdkselection-wayland.c
index 008778292a..12737d672e 100644
--- a/gdk/wayland/gdkselection-wayland.c
+++ b/gdk/wayland/gdkselection-wayland.c
@@ -245,7 +245,7 @@ selection_buffer_read_cb (GObject *object,
if (bytes)
{
- finished = g_bytes_get_size (bytes) < get_buffer_size ();
+ finished = g_bytes_get_size (bytes) == 0;
selection_buffer_append_data (buffer,
g_bytes_get_data (bytes, NULL),
g_bytes_get_size (bytes));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]