From f76859bc87a0d499ec25f04ef95867e97bec74c3 Mon Sep 17 00:00:00 2001 From: Ran Benita Date: Tue, 23 Oct 2012 09:58:11 +0200 Subject: keymap: use plain array for keymap->group_names Again it is not resized. Signed-off-by: Ran Benita --- src/keymap.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'src/keymap.c') diff --git a/src/keymap.c b/src/keymap.c index 63e9853..6736c2c 100644 --- a/src/keymap.c +++ b/src/keymap.c @@ -108,7 +108,7 @@ xkb_keymap_unref(struct xkb_keymap *keymap) free(keymap->types); darray_free(keymap->sym_interprets); darray_free(keymap->key_aliases); - darray_free(keymap->group_names); + free(keymap->group_names); darray_free(keymap->mods); darray_free(keymap->indicators); free(keymap->keycodes_section_name); @@ -176,11 +176,10 @@ xkb_keymap_num_layouts(struct xkb_keymap *keymap) XKB_EXPORT const char * xkb_keymap_layout_get_name(struct xkb_keymap *keymap, xkb_layout_index_t idx) { - if (idx >= xkb_keymap_num_layouts(keymap) || - idx >= darray_size(keymap->group_names)) + if (idx >= keymap->num_group_names) return NULL; - return xkb_atom_text(keymap->ctx, darray_item(keymap->group_names, idx)); + return xkb_atom_text(keymap->ctx, keymap->group_names[idx]); } /** @@ -190,14 +189,13 @@ XKB_EXPORT xkb_layout_index_t xkb_keymap_layout_get_index(struct xkb_keymap *keymap, const char *name) { xkb_atom_t atom = xkb_atom_lookup(keymap->ctx, name); - xkb_atom_t *group_name; xkb_layout_index_t i; if (atom == XKB_ATOM_NONE) return XKB_LAYOUT_INVALID; - darray_enumerate(i, group_name, keymap->group_names) - if (*group_name == atom) + for (i = 0; i < keymap->num_group_names; i++) + if (keymap->group_names[i] == atom) return i; return XKB_LAYOUT_INVALID; -- cgit v1.2.1