Added WINPR_ASSERT to collections

This commit is contained in:
Armin Novak 2021-06-16 10:40:53 +02:00 committed by akallabeth
parent 61c1d82e3b
commit 64280aa13c
8 changed files with 50 additions and 26 deletions

View File

@ -842,8 +842,6 @@ static BOOL register_file_formats_and_synthesizers(wClipboard* clipboard)
goto error;
obj = ArrayList_Object(clipboard->localFiles);
if (!obj)
goto error;
obj->fnObjectFree = free_posix_file;
if (!ClipboardRegisterSynthesizer(clipboard, local_file_format_id, file_group_format_id,

View File

@ -400,8 +400,6 @@ static PCSC_SCARDCONTEXT* PCSC_EstablishCardContext(SCARDCONTEXT hContext)
goto errors;
{
wObject* obj = HashTable_ValueObject(pContext->cache);
if (!obj)
goto errors;
obj->fnObjectFree = pcsc_cache_item_free;
}

View File

@ -837,7 +837,6 @@ BOOL HashTable_SetupForStringData(wHashTable* table, BOOL stringValues)
return FALSE;
obj = HashTable_KeyObject(table);
WINPR_ASSERT(obj);
obj->fnObjectEquals = HashTable_StringCompare;
obj->fnObjectNew = HashTable_StringClone;
obj->fnObjectFree = HashTable_StringFree;
@ -845,7 +844,6 @@ BOOL HashTable_SetupForStringData(wHashTable* table, BOOL stringValues)
if (stringValues)
{
obj = HashTable_ValueObject(table);
WINPR_ASSERT(obj);
obj->fnObjectEquals = HashTable_StringCompare;
obj->fnObjectNew = HashTable_StringClone;
obj->fnObjectFree = HashTable_StringFree;

View File

@ -22,6 +22,7 @@
#endif
#include <winpr/collections.h>
#include <winpr/assert.h>
typedef struct _wLinkedListItem wLinkedListNode;
@ -59,6 +60,7 @@ struct _wLinkedList
int LinkedList_Count(wLinkedList* list)
{
WINPR_ASSERT(list);
return list->count;
}
@ -68,6 +70,7 @@ int LinkedList_Count(wLinkedList* list)
void* LinkedList_First(wLinkedList* list)
{
WINPR_ASSERT(list);
if (list->head)
return list->head->value;
else
@ -80,6 +83,7 @@ void* LinkedList_First(wLinkedList* list)
void* LinkedList_Last(wLinkedList* list)
{
WINPR_ASSERT(list);
if (list->tail)
return list->tail->value;
else
@ -99,6 +103,7 @@ BOOL LinkedList_Contains(wLinkedList* list, void* value)
wLinkedListNode* item;
OBJECT_EQUALS_FN keyEquals;
WINPR_ASSERT(list);
if (!list->head)
return FALSE;
@ -118,9 +123,14 @@ BOOL LinkedList_Contains(wLinkedList* list, void* value)
static wLinkedListNode* LinkedList_FreeNode(wLinkedList* list, wLinkedListNode* node)
{
wLinkedListNode* next = node->next;
wLinkedListNode* prev = node->prev;
wLinkedListNode* next;
wLinkedListNode* prev;
WINPR_ASSERT(list);
WINPR_ASSERT(node);
next = node->next;
prev = node->prev;
if (prev)
prev->next = next;
@ -151,7 +161,7 @@ static wLinkedListNode* LinkedList_FreeNode(wLinkedList* list, wLinkedListNode*
void LinkedList_Clear(wLinkedList* list)
{
wLinkedListNode* node;
WINPR_ASSERT(list);
if (!list->head)
return;
@ -166,7 +176,10 @@ void LinkedList_Clear(wLinkedList* list)
static wLinkedListNode* LinkedList_Create(wLinkedList* list, void* value)
{
wLinkedListNode* node = (wLinkedListNode*)calloc(1, sizeof(wLinkedListNode));
wLinkedListNode* node;
WINPR_ASSERT(list);
node = (wLinkedListNode*)calloc(1, sizeof(wLinkedListNode));
if (!node)
return NULL;
@ -241,6 +254,8 @@ BOOL LinkedList_Remove(wLinkedList* list, void* value)
{
wLinkedListNode* node;
OBJECT_EQUALS_FN keyEquals;
WINPR_ASSERT(list);
keyEquals = list->object.fnObjectEquals;
node = list->head;
@ -264,6 +279,7 @@ BOOL LinkedList_Remove(wLinkedList* list, void* value)
void LinkedList_RemoveFirst(wLinkedList* list)
{
WINPR_ASSERT(list);
if (list->head)
LinkedList_FreeNode(list, list->head);
}
@ -274,6 +290,7 @@ void LinkedList_RemoveFirst(wLinkedList* list)
void LinkedList_RemoveLast(wLinkedList* list)
{
WINPR_ASSERT(list);
if (list->tail)
LinkedList_FreeNode(list, list->tail);
}
@ -284,6 +301,7 @@ void LinkedList_RemoveLast(wLinkedList* list)
void LinkedList_Enumerator_Reset(wLinkedList* list)
{
WINPR_ASSERT(list);
list->initial = 1;
list->current = list->head;
}
@ -294,6 +312,7 @@ void LinkedList_Enumerator_Reset(wLinkedList* list)
void* LinkedList_Enumerator_Current(wLinkedList* list)
{
WINPR_ASSERT(list);
if (list->initial)
return NULL;
@ -309,6 +328,7 @@ void* LinkedList_Enumerator_Current(wLinkedList* list)
BOOL LinkedList_Enumerator_MoveNext(wLinkedList* list)
{
WINPR_ASSERT(list);
if (list->initial)
list->initial = 0;
else if (list->current)
@ -353,8 +373,7 @@ void LinkedList_Free(wLinkedList* list)
wObject* LinkedList_Object(wLinkedList* list)
{
if (!list)
return NULL;
WINPR_ASSERT(list);
return &list->object;
}

View File

@ -23,6 +23,7 @@
#include <winpr/crt.h>
#include <winpr/sysinfo.h>
#include <winpr/assert.h>
#include <winpr/collections.h>
@ -51,8 +52,7 @@ struct _wMessageQueue
wObject* MessageQueue_Object(wMessageQueue* queue)
{
if (!queue)
return NULL;
WINPR_ASSERT(queue);
return &queue->object;
}
@ -62,6 +62,7 @@ wObject* MessageQueue_Object(wMessageQueue* queue)
HANDLE MessageQueue_Event(wMessageQueue* queue)
{
WINPR_ASSERT(queue);
return queue->event;
}
@ -71,6 +72,7 @@ HANDLE MessageQueue_Event(wMessageQueue* queue)
size_t MessageQueue_Size(wMessageQueue* queue)
{
WINPR_ASSERT(queue);
return queue->size;
}
@ -82,6 +84,7 @@ BOOL MessageQueue_Wait(wMessageQueue* queue)
{
BOOL status = FALSE;
WINPR_ASSERT(queue);
if (WaitForSingleObject(queue->event, INFINITE) == WAIT_OBJECT_0)
status = TRUE;
@ -90,8 +93,7 @@ BOOL MessageQueue_Wait(wMessageQueue* queue)
static BOOL MessageQueue_EnsureCapacity(wMessageQueue* queue, size_t count)
{
if (!queue)
return FALSE;
WINPR_ASSERT(queue);
if (queue->size + count >= queue->capacity)
{
@ -124,7 +126,9 @@ BOOL MessageQueue_Dispatch(wMessageQueue* queue, const wMessage* message)
{
wMessage* dst;
BOOL ret = FALSE;
if (!queue || !message)
WINPR_ASSERT(queue);
if (!message)
return FALSE;
EnterCriticalSection(&queue->lock);
@ -203,6 +207,7 @@ int MessageQueue_Peek(wMessageQueue* queue, wMessage* message, BOOL remove)
{
int status = 0;
WINPR_ASSERT(queue);
EnterCriticalSection(&queue->lock);
if (queue->size > 0)
@ -276,8 +281,8 @@ int MessageQueue_Clear(wMessageQueue* queue)
{
int status = 0;
if (!queue || !queue->event)
return -1;
WINPR_ASSERT(queue);
WINPR_ASSERT(queue->event);
EnterCriticalSection(&queue->lock);

View File

@ -22,6 +22,7 @@
#endif
#include <winpr/crt.h>
#include <winpr/assert.h>
#include <winpr/collections.h>
@ -46,12 +47,14 @@ struct _wObjectPool
static void ObjectPool_Lock(wObjectPool* pool)
{
WINPR_ASSERT(pool);
if (pool->synchronized)
EnterCriticalSection(&pool->lock);
}
static void ObjectPool_Unlock(wObjectPool* pool)
{
WINPR_ASSERT(pool);
if (pool->synchronized)
LeaveCriticalSection(&pool->lock);
}
@ -116,8 +119,7 @@ out:
wObject* ObjectPool_Object(wObjectPool* pool)
{
if (!pool)
return NULL;
WINPR_ASSERT(pool);
return &pool->object;
}

View File

@ -295,8 +295,6 @@ wQueue* Queue_New(BOOL synchronized, SSIZE_T capacity, SSIZE_T growthFactor)
goto fail;
obj = Queue_Object(queue);
if (!obj)
goto fail;
obj->fnObjectEquals = default_queue_equals;
return queue;

View File

@ -22,6 +22,7 @@
#endif
#include <winpr/collections.h>
#include <winpr/assert.h>
struct _wStack
{
@ -49,7 +50,7 @@ struct _wStack
size_t Stack_Count(wStack* stack)
{
size_t ret;
WINPR_ASSERT(stack);
if (stack->synchronized)
EnterCriticalSection(&stack->lock);
@ -67,13 +68,13 @@ size_t Stack_Count(wStack* stack)
BOOL Stack_IsSynchronized(wStack* stack)
{
WINPR_ASSERT(stack);
return stack->synchronized;
}
wObject* Stack_Object(wStack* stack)
{
if (!stack)
return NULL;
WINPR_ASSERT(stack);
return &stack->object;
}
@ -89,6 +90,7 @@ void Stack_Clear(wStack* stack)
{
size_t index;
WINPR_ASSERT(stack);
if (stack->synchronized)
EnterCriticalSection(&stack->lock);
@ -115,6 +117,7 @@ BOOL Stack_Contains(wStack* stack, const void* obj)
size_t i;
BOOL found = FALSE;
WINPR_ASSERT(stack);
if (stack->synchronized)
EnterCriticalSection(&stack->lock);
@ -139,6 +142,7 @@ BOOL Stack_Contains(wStack* stack, const void* obj)
void Stack_Push(wStack* stack, void* obj)
{
WINPR_ASSERT(stack);
if (stack->synchronized)
EnterCriticalSection(&stack->lock);
@ -169,6 +173,7 @@ void* Stack_Pop(wStack* stack)
{
void* obj = NULL;
WINPR_ASSERT(stack);
if (stack->synchronized)
EnterCriticalSection(&stack->lock);
@ -189,6 +194,7 @@ void* Stack_Peek(wStack* stack)
{
void* obj = NULL;
WINPR_ASSERT(stack);
if (stack->synchronized)
EnterCriticalSection(&stack->lock);