diff --git a/FIFOBuff/FIFOBuffChar.c b/FIFOBuff/FIFOBuffChar.c index 401f2c5..5756401 100644 --- a/FIFOBuff/FIFOBuffChar.c +++ b/FIFOBuff/FIFOBuffChar.c @@ -169,18 +169,17 @@ bool FIFOBuffChar_delete(FIFOBuffChar_t *fifo) // Check if the buffer is already empty if (fifo->FirstEl_p == NULL) { - return false; + // Delete all elements in the buffer + FIFOBuffChar_element_t* currentElement = fifo->FirstEl_p; + while (currentElement != NULL) + { + FIFOBuffChar_element_t* nextElement = currentElement->nextElement; + free(currentElement); + currentElement = nextElement; + } } - - // Delete all elements in the buffer - FIFOBuffChar_element_t* currentElement = fifo->FirstEl_p; - while (currentElement != NULL) - { - FIFOBuffChar_element_t* nextElement = currentElement->nextElement; - free(currentElement); - currentElement = nextElement; - } - + + free(fifo); return true; }