summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <dueno@src.gnome.org>2018-05-07 09:17:45 +0200
committerDaiki Ueno <dueno@src.gnome.org>2018-05-07 09:17:45 +0200
commit2b8a73efffef00b6bcb0de16abdee55635930a85 (patch)
tree886eb51bbe1196d4bf9b215983840cddf83f6618
parentf3f3cc70c3e88513fd9e6bb7f6b1b412218236a0 (diff)
downloadgnome-keyring-2b8a73efffef00b6bcb0de16abdee55635930a85.tar.gz
ssh-agent: Don't treat packet write error as fatal
-rw-r--r--daemon/ssh-agent/gkd-ssh-agent-util.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/daemon/ssh-agent/gkd-ssh-agent-util.c b/daemon/ssh-agent/gkd-ssh-agent-util.c
index 07bae1fe..22c64b59 100644
--- a/daemon/ssh-agent/gkd-ssh-agent-util.c
+++ b/daemon/ssh-agent/gkd-ssh-agent-util.c
@@ -76,8 +76,11 @@ _gkd_ssh_agent_write_packet (GSocketConnection *connection,
gsize bytes_written;
stream = g_io_stream_get_output_stream (G_IO_STREAM (connection));
- if (!egg_buffer_set_uint32 (buffer, 0, buffer->len - 4))
- g_return_val_if_reached (FALSE);
+ if (!egg_buffer_set_uint32 (buffer, 0, buffer->len - 4)) {
+ g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+ "cannot read packet length");
+ return FALSE;
+ }
return g_output_stream_write_all (stream, buffer->buf, buffer->len, &bytes_written, cancellable, error);
}