From 1be899459c3900be746bd35e49c72f5616443b68 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Mon, 26 Apr 2021 21:32:00 +0200 Subject: clipboard: Fix reading of files Make sure writing a terminating null byte actually works and we don't just ignore the error message. --- gdk/gdkcontentdeserializer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gdk') diff --git a/gdk/gdkcontentdeserializer.c b/gdk/gdkcontentdeserializer.c index e03df87d0f..39ebed9fd2 100644 --- a/gdk/gdkcontentdeserializer.c +++ b/gdk/gdkcontentdeserializer.c @@ -740,7 +740,8 @@ file_uri_deserializer_finish (GObject *source, } /* write terminating NULL */ - if (!g_output_stream_write (stream, "", 1, NULL, &error)) + if (g_output_stream_write (stream, "", 1, NULL, &error) < 0 || + !g_output_stream_close (stream, NULL, &error)) { gdk_content_deserializer_return_error (deserializer, error); return; @@ -780,7 +781,7 @@ file_uri_deserializer (GdkContentDeserializer *deserializer) g_output_stream_splice_async (output, gdk_content_deserializer_get_input_stream (deserializer), - G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE | G_OUTPUT_STREAM_SPLICE_CLOSE_TARGET, + G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE, gdk_content_deserializer_get_priority (deserializer), gdk_content_deserializer_get_cancellable (deserializer), file_uri_deserializer_finish, -- cgit v1.2.1