Coverity complains about a 'Dereference before null check' on *queue.
So, push the NULL check further up.

Though I doubt that 'return EOF' is the proper way to handle allocation
failure, this patch is only about the NULL dereference.

Fixes: CID#57918
---
 gtp/queue.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/gtp/queue.c b/gtp/queue.c
index 7c971b0..5b4d849 100644
--- a/gtp/queue.c
+++ b/gtp/queue.c
@@ -127,16 +127,15 @@ int queue_new(struct queue_t **queue)
        if (QUEUE_DEBUG)
                printf("queue_new\n");
        *queue = calloc(1, sizeof(struct queue_t));
+       if (!(*queue))
+               return EOF;
        (*queue)->next = 0;
        (*queue)->first = -1;
        (*queue)->last = -1;

        if (QUEUE_DEBUG)
                queue_print(*queue);
-       if (*queue)
-               return 0;
-       else
-               return EOF;
+       return 0;
 }

 /*! \brief Deallocates queue structure */
-- 
2.1.4

Reply via email to