From 60abe24450a8d02b0a0f85c40190f26472fb5ab8 Mon Sep 17 00:00:00 2001 From: Patrick McDermott Date: Tue, 16 Mar 2021 09:38:37 -0400 Subject: db_games_find(): Check scandir() return value Fixes a bad calloc() if the games directory is empty or not found. --- diff --git a/src/game.c b/src/game.c index 2bf99c5..d136005 100644 --- a/src/game.c +++ b/src/game.c @@ -37,6 +37,12 @@ db_games_find(const char *games_dir, char ***games) int i; n = scandir(games_dir, &entries, &_db_game_is_dir, alphasort); + if (n < 0) { + db_err("Failed to scan games directory"); + return -1; + } else if (n == 0) { + return 0; + } *games = calloc(n, sizeof(**games)); if (*games == NULL) { -- cgit v0.9.1