Merge branch 'leak-fixes' into 'master'

Fix 2 leaks

Closes #148

See merge request Librem5/squeekboard!386
This commit is contained in:
Dorota Czaplejewicz
2020-10-03 07:38:52 +00:00
3 changed files with 8 additions and 7 deletions

View File

@ -360,6 +360,10 @@ eek_gtk_keyboard_init (EekGtkKeyboard *self)
priv->event = lfb_event_new ("button-pressed");
else
g_warning ("Failed to init libfeedback: %s", err->message);
GtkIconTheme *theme = gtk_icon_theme_get_default ();
gtk_icon_theme_add_resource_path (theme, "/sm/puri/squeekboard/icons");
}
static void

View File

@ -64,8 +64,8 @@ level_keyboard_new (struct squeek_layout *layout)
xkb_context_unref(context);
keyboard->keymap = keymap;
keymap_str = xkb_keymap_get_as_string(keymap, XKB_KEYMAP_FORMAT_TEXT_V1);
keyboard->keymap_len = strlen(keymap_str) + 1;
char * xkb_keymap_str = xkb_keymap_get_as_string(keymap, XKB_KEYMAP_FORMAT_TEXT_V1);
keyboard->keymap_len = strlen(xkb_keymap_str) + 1;
g_autofree char *path = strdup("/eek_keymap-XXXXXX");
char *r = &path[strlen(path) - 6];
@ -89,7 +89,8 @@ level_keyboard_new (struct squeek_layout *layout)
if ((void*)ptr == (void*)-1) {
g_error("Failed to set up mmap");
}
strncpy(ptr, keymap_str, keyboard->keymap_len);
strncpy(ptr, xkb_keymap_str, keyboard->keymap_len);
free(xkb_keymap_str);
munmap(ptr, keyboard->keymap_len);
return keyboard;
}

View File

@ -265,10 +265,6 @@ renderer_init (EekRenderer *self)
self->allocation_height = 0.0;
self->scale_factor = 1;
GtkIconTheme *theme = gtk_icon_theme_get_default ();
gtk_icon_theme_add_resource_path (theme, "/sm/puri/squeekboard/icons");
self->css_provider = squeek_load_style();
}