LeakSanitizer complains about allocations whose references are held
only by automatic variables. It is possible to free them to suppress
the complaints, but it is a chore to make sure they are freed in all
exit paths so make them static instead.
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
qemu-keymap.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/qemu-keymap.c b/qemu-keymap.c
index 8c80f7a4ed65..701e4332af87 100644
--- a/qemu-keymap.c
+++ b/qemu-keymap.c
@@ -154,9 +154,9 @@ static xkb_mod_mask_t get_mod(struct xkb_keymap *map, const char *name)
int main(int argc, char *argv[])
{
- struct xkb_context *ctx;
- struct xkb_keymap *map;
- struct xkb_state *state;
+ static struct xkb_context *ctx;
+ static struct xkb_keymap *map;
+ static struct xkb_state *state;
xkb_mod_index_t mod, mods;
int rc;
@@ -234,8 +234,6 @@ int main(int argc, char *argv[])
state = xkb_state_new(map);
xkb_keymap_key_for_each(map, walk_map, state);
- xkb_state_unref(state);
- state = NULL;
/* add quirks */
fprintf(outfile,
--
2.45.1