bench: silence coverity complaint about a double free
authorPeter Hutterer <peter.hutterer@who-t.net>
Thu, 18 Mar 2021 01:08:16 +0000 (11:08 +1000)
committerRan Benita <ran@unusedvar.com>
Fri, 19 Mar 2021 21:44:30 +0000 (23:44 +0200)
False positive because we rely on xkb_components_from_rules() to initalize this
struct, but let's localize the variable anyway to shut coverity up.

libxkbcommon-1.0.3/bench/rules.c:59:9: warning[-Wanalyzer-double-free]:
double-free of kccgst.symbols

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
bench/rules.c

index 3206583..1306dc4 100644 (file)
@@ -40,7 +40,6 @@ main(int argc, char *argv[])
     struct xkb_rule_names rmlvo = {
         "evdev", "pc105", "us,il", ",", "ctrl:nocaps,grp:menu_toggle",
     };
-    struct xkb_component_names kccgst;
     struct bench bench;
     char *elapsed;
 
@@ -52,6 +51,8 @@ main(int argc, char *argv[])
 
     bench_start(&bench);
     for (i = 0; i < BENCHMARK_ITERATIONS; i++) {
+        struct xkb_component_names kccgst;
+
         assert(xkb_components_from_rules(ctx, &rmlvo, &kccgst));
         free(kccgst.keycodes);
         free(kccgst.types);