diff options
author | Daiki Ueno <dueno@src.gnome.org> | 2018-05-07 09:17:45 +0200 |
---|---|---|
committer | Daiki Ueno <dueno@src.gnome.org> | 2018-05-07 09:17:45 +0200 |
commit | 2b8a73efffef00b6bcb0de16abdee55635930a85 (patch) | |
tree | 886eb51bbe1196d4bf9b215983840cddf83f6618 | |
parent | f3f3cc70c3e88513fd9e6bb7f6b1b412218236a0 (diff) | |
download | gnome-keyring-2b8a73efffef00b6bcb0de16abdee55635930a85.tar.gz |
ssh-agent: Don't treat packet write error as fatal
-rw-r--r-- | daemon/ssh-agent/gkd-ssh-agent-util.c | 7 |
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); } |