From 4198f0e52c00b7b3393039e0bf589d9a78f3024b Mon Sep 17 00:00:00 2001 From: Ozkan Sezer Date: Mon, 21 Dec 2020 01:20:30 +0300 Subject: [PATCH] fix uninitialized warnings in KMSDRM_CreateCursor() --- src/video/kmsdrm/SDL_kmsdrmmouse.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/video/kmsdrm/SDL_kmsdrmmouse.c b/src/video/kmsdrm/SDL_kmsdrmmouse.c index 3b4b18feb..e17c3c579 100644 --- a/src/video/kmsdrm/SDL_kmsdrmmouse.c +++ b/src/video/kmsdrm/SDL_kmsdrmmouse.c @@ -106,6 +106,9 @@ KMSDRM_CreateCursor(SDL_Surface * surface, int hot_x, int hot_y) KMSDRM_CursorData *curdata; SDL_Cursor *cursor, *ret; + curdata = NULL; + ret = NULL; + /* All code below assumes ARGB8888 format for the cursor surface, like other backends do. Also, the GBM BO pixels have to be alpha-premultiplied, but the SDL surface we receive has @@ -116,13 +119,11 @@ KMSDRM_CreateCursor(SDL_Surface * surface, int hot_x, int hot_y) cursor = (SDL_Cursor *) SDL_calloc(1, sizeof(*cursor)); if (!cursor) { SDL_OutOfMemory(); - ret = NULL; goto cleanup; } curdata = (KMSDRM_CursorData *) SDL_calloc(1, sizeof(*curdata)); if (!curdata) { SDL_OutOfMemory(); - ret = NULL; goto cleanup; } @@ -164,15 +165,15 @@ KMSDRM_CreateCursor(SDL_Surface * surface, int hot_x, int hot_y) cleanup: if (ret == NULL) { - if (curdata->buffer) { - SDL_free(curdata->buffer); + if (curdata) { + if (curdata->buffer) { + SDL_free(curdata->buffer); + } + SDL_free(curdata); } if (cursor) { SDL_free(cursor); } - if (curdata) { - SDL_free(curdata); - } } return ret;