Fix failure sending deferred aggregate lengths to clients on other threads (merge bug)

Former-commit-id: 915117ae7bac90fe41c7f36d97bcd654d6e90b62
This commit is contained in:
John Sully 2021-05-25 20:51:18 +00:00
parent 070ea24010
commit 7cdbd48e7a

View File

@ -743,11 +743,10 @@ void setDeferredReply(client *c, void *node, const char *s, size_t length) {
void setDeferredAggregateLen(client *c, void *node, long length, char prefix) {
serverAssert(length >= 0);
if (FCorrectThread(c)) {
/* Abort when *node is NULL: when the client should not accept writes
* we return NULL in addReplyDeferredLen() */
if (node == NULL) return;
if (FCorrectThread(c)) {
char lenstr[128];
size_t lenstr_len = sprintf(lenstr, "%c%ld\r\n", prefix, length);
setDeferredReply(c, node, lenstr, lenstr_len);