libsemanage: fix src/genhomedircon.c build on `gcc-14` (`-Werror=alloc-size`)

`gcc-14` added a new `-Walloc-size` warning that makes sure that size of
an individual element matches size of a pointed type:

    https://gcc.gnu.org/PR71219

`libsemanage` triggers it on `calloc()` calls where member size is used
as `1` (instead of member count):

    genhomedircon.c: In function 'ignore_setup':
    genhomedircon.c:152:21:
      error: allocation of insufficient size '1' for type 'ignoredir_t'
        {aka 'struct IgnoreDir'} with size '16' [-Werror=alloc-size]
      152 |                 ptr = calloc(sizeof(ignoredir_t),1);
          |                     ^

Signed-off-by: Sergei Trofimovich <slyich@gmail.com>
Acked-by: James Carter <jwcart2@gmail.com>
This commit is contained in:
Sergei Trofimovich 2023-12-04 16:16:55 +00:00 committed by James Carter
parent 139afe58d6
commit 2a46979ea3
1 changed files with 1 additions and 1 deletions

View File

@ -149,7 +149,7 @@ static int ignore_setup(char *ignoredirs) {
tok = strtok(ignoredirs, ";"); tok = strtok(ignoredirs, ";");
while(tok) { while(tok) {
ptr = calloc(sizeof(ignoredir_t),1); ptr = calloc(1, sizeof(ignoredir_t));
if (!ptr) if (!ptr)
goto err; goto err;
ptr->dir = strdup(tok); ptr->dir = strdup(tok);