[winpr,return] improve return value checks

propagate error conditions up the call chain
This commit is contained in:
Armin Novak
2026-03-03 17:00:59 +01:00
parent 45494b02a3
commit 1a8e72074e
3 changed files with 22 additions and 11 deletions

View File

@@ -263,7 +263,10 @@ int MessageQueue_Peek(wMessageQueue* queue, wMessage* message, BOOL remove)
queue->size--;
if (queue->size < 1)
(void)ResetEvent(queue->event);
{
if (ResetEvent(queue->event))
status = -1;
}
}
}
@@ -346,7 +349,8 @@ int MessageQueue_Clear(wMessageQueue* queue)
queue->head = (queue->head + 1) % queue->capacity;
queue->size--;
}
(void)ResetEvent(queue->event);
if (!ResetEvent(queue->event))
status = -1;
queue->closed = FALSE;
LeaveCriticalSection(&queue->lock);

View File

@@ -278,7 +278,10 @@ BOOL Queue_Enqueue(wQueue* queue, const void* obj)
queue->size++;
if (signalSet)
(void)SetEvent(queue->event);
{
if (!SetEvent(queue->event))
goto out;
}
}
out:

View File

@@ -95,14 +95,18 @@ static BOOL WLog_UdpAppender_WriteMessage(wLog* log, wLogAppender* appender,
char prefix[WLOG_MAX_PREFIX_SIZE] = WINPR_C_ARRAY_INIT;
WLog_Layout_GetMessagePrefix(log, appender->Layout, cmessage, prefix, sizeof(prefix));
(void)_sendto(udpAppender->sock, prefix, (int)strnlen(prefix, ARRAYSIZE(prefix)), 0,
&udpAppender->targetAddr, udpAppender->targetAddrLen);
(void)_sendto(udpAppender->sock, cmessage->TextString,
(int)strnlen(cmessage->TextString, INT_MAX), 0, &udpAppender->targetAddr,
udpAppender->targetAddrLen);
(void)_sendto(udpAppender->sock, "\n", 1, 0, &udpAppender->targetAddr,
udpAppender->targetAddrLen);
return TRUE;
BOOL res = TRUE;
if (_sendto(udpAppender->sock, prefix, (int)strnlen(prefix, ARRAYSIZE(prefix)), 0,
&udpAppender->targetAddr, udpAppender->targetAddrLen) < 0)
res = FALSE;
if (_sendto(udpAppender->sock, cmessage->TextString,
(int)strnlen(cmessage->TextString, INT_MAX), 0, &udpAppender->targetAddr,
udpAppender->targetAddrLen) < 0)
res = FALSE;
if (_sendto(udpAppender->sock, "\n", 1, 0, &udpAppender->targetAddr,
udpAppender->targetAddrLen) < 0)
res = FALSE;
return res;
}
static BOOL WLog_UdpAppender_WriteDataMessage(wLog* log, wLogAppender* appender,