diff --git a/src/networking.c b/src/networking.c index 98a4f24e..e255e64d 100644 --- a/src/networking.c +++ b/src/networking.c @@ -1072,6 +1072,10 @@ int handleClientsWithPendingWrites(void) { c->flags &= ~CLIENT_PENDING_WRITE; listDelNode(server.clients_pending_write,ln); + /* If a client is protected, don't do anything, + * that may trigger write error or recreate handler. */ + if (c->flags & CLIENT_PROTECTED) continue; + /* Try to write buffers to the client socket. */ if (writeToClient(c->fd,c,0) == C_ERR) continue;