Do not try to send remaining data on a closed socket

Fixes #2906
This commit is contained in:
Maxime Coste 2019-05-23 12:41:31 +10:00
parent 2bef1f1eb8
commit a1f0bae53a
2 changed files with 4 additions and 1 deletions

View File

@ -148,6 +148,7 @@ StringView homedir()
bool fd_readable(int fd)
{
kak_assert(fd >= 0);
fd_set rfds;
FD_ZERO(&rfds);
FD_SET(fd, &rfds);
@ -158,6 +159,7 @@ bool fd_readable(int fd)
bool fd_writable(int fd)
{
kak_assert(fd >= 0);
fd_set wfds;
FD_ZERO(&wfds);
FD_SET(fd, &wfds);

View File

@ -439,7 +439,8 @@ RemoteUI::~RemoteUI()
// Try to send the remaining data if possible, as it might contain the desired exit status
try
{
send_data(m_socket_watcher.fd(), m_send_buffer);
if (m_socket_watcher.fd() != -1)
send_data(m_socket_watcher.fd(), m_send_buffer);
}
catch (disconnected&)
{