x11: Fix iterative INCR property checks

It does not make sense to check for the stream not being closed,
this might happen multiple times during the lifetime of the stream
for a single transfer. We want to notify the INCR transfer just
once.

Check for the explicit conditions that we want, that the remaining
data is bigger than we can transfer at once, and that we are not
yet within the INCR transfer.

https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1198

(cherry picked from commit a4596becc4)
This commit is contained in:
Carlos Garnacho 2020-04-11 17:21:49 +02:00 committed by Robert Mader
parent 107bb3d9c2
commit d985517573

View File

@ -223,7 +223,7 @@ meta_x11_selection_output_stream_perform_flush (MetaX11SelectionOutputStream *st
if (!priv->incr) if (!priv->incr)
first_chunk = TRUE; first_chunk = TRUE;
if (!g_output_stream_is_closing (G_OUTPUT_STREAM (stream))) if (!priv->incr && priv->data->len > max_size)
{ {
XWindowAttributes attrs; XWindowAttributes attrs;