client: check "expired" flag again in client_write_output()
When client_defer_output() aborts the connection to the client, client_write_output() called client_write_deferred() anyway. This caused an assertion failure. Fix it by checking for the "expired" flag again after client_defer_output() returns.
This commit is contained in:
parent
427dd81678
commit
faaf9dafe1
@ -776,6 +776,9 @@ static void client_write_output(struct client *client)
|
||||
client_defer_output(client, client->send_buf,
|
||||
client->send_buf_used);
|
||||
|
||||
if (client_is_expired(client))
|
||||
return;
|
||||
|
||||
/* try to flush the deferred buffers now; the current
|
||||
server command may take too long to finish, and
|
||||
meanwhile try to feed output to the client,
|
||||
|
Loading…
Reference in New Issue
Block a user