Unconstify a few string struct fields
authorRan Benita <ran234@gmail.com>
Fri, 8 Jun 2012 06:25:38 +0000 (09:25 +0300)
committerRan Benita <ran234@gmail.com>
Sat, 9 Jun 2012 09:34:57 +0000 (12:34 +0300)
These were made const when the structs were exposed in the API. Now they
are private and we shouldn't mess around with the UNCONSTIFY business.

Signed-off-by: Ran Benita <ran234@gmail.com>
src/alloc.c
src/xkb-priv.h
src/xkbcomp/indicators.c
src/xkbcomp/keycodes.c
src/xkbcomp/keytypes.c
src/xkbcomp/symbols.c

index c1d575f..45a9114 100644 (file)
@@ -125,7 +125,7 @@ XkbcCopyKeyType(const struct xkb_key_type *from, struct xkb_key_type *into)
     darray_free(into->map);
     free(into->preserve);
     for (i = 0; i < into->num_levels; i++)
-        free(UNCONSTIFY(into->level_names[i]));
+        free(into->level_names[i]);
     free(into->level_names);
 
     *into = *from;
@@ -144,10 +144,12 @@ XkbcCopyKeyType(const struct xkb_key_type *from, struct xkb_key_type *into)
                darray_size(into->map) * sizeof(*into->preserve));
     }
 
-    if (from->level_names && (into->num_levels > 0)) {
-        into->level_names = uTypedCalloc(into->num_levels, const char *);
+    if (from->level_names && into->num_levels > 0) {
+        into->level_names = calloc(into->num_levels,
+                                   sizeof(*into->level_names));
         if (!into->level_names)
             return BadAlloc;
+
         for (i = 0; i < into->num_levels; i++)
             into->level_names[i] = strdup(from->level_names[i]);
     }
@@ -234,9 +236,9 @@ XkbcFreeClientMap(struct xkb_keymap *keymap)
         darray_free(type->map);
         free(type->preserve);
         for (j = 0; j < type->num_levels; j++)
-            free(UNCONSTIFY(type->level_names[j]));
+            free(type->level_names[j]);
         free(type->level_names);
-        free(UNCONSTIFY(type->name));
+        free(type->name);
     }
     darray_free(map->types);
 
@@ -325,7 +327,8 @@ XkbcAllocNames(struct xkb_keymap *keymap, unsigned which, size_t nTotalAliases)
 
         darray_foreach(type, keymap->map->types) {
             if (!type->level_names) {
-                type->level_names = uTypedCalloc(type->num_levels, const char *);
+                type->level_names = calloc(type->num_levels,
+                                           sizeof(*type->level_names));
                 if (!type->level_names)
                     return BadAlloc;
             }
@@ -359,18 +362,18 @@ XkbcFreeNames(struct xkb_keymap *keymap)
         darray_foreach(type, map->types) {
             int j;
             for (j = 0; j < type->num_levels; j++)
-                free(UNCONSTIFY(type->level_names[j]));
+                free(type->level_names[j]);
             free(type->level_names);
             type->level_names = NULL;
         }
     }
 
     for (i = 0; i < XkbNumVirtualMods; i++)
-        free(UNCONSTIFY(names->vmods[i]));
+        free(names->vmods[i]);
     for (i = 0; i < XkbNumIndicators; i++)
-        free(UNCONSTIFY(names->indicators[i]));
+        free(names->indicators[i]);
     for (i = 0; i < XkbNumKbdGroups; i++)
-        free(UNCONSTIFY(names->groups[i]));
+        free(names->groups[i]);
 
     darray_free(names->keys);
     darray_free(names->key_aliases);
index a63ad1c..a8b2748 100644 (file)
@@ -250,8 +250,8 @@ struct xkb_key_type {
     uint16_t                num_levels;
     darray(struct xkb_kt_map_entry) map;
     struct xkb_mods *             preserve;
-    const char              *name;
-    const char              **level_names;
+    char *name;
+    char **level_names;
 };
 
 struct xkb_sym_interpret {
@@ -323,9 +323,9 @@ struct xkb_key_alias {
 };
 
 struct xkb_names {
-    const char            *vmods[XkbNumVirtualMods];
-    const char            *indicators[XkbNumIndicators];
-    const char            *groups[XkbNumKbdGroups];
+    char *vmods[XkbNumVirtualMods];
+    char *indicators[XkbNumIndicators];
+    char *groups[XkbNumKbdGroups];
 
     darray(struct xkb_key_name) keys;
     darray(struct xkb_key_alias) key_aliases;
@@ -411,8 +411,6 @@ struct xkb_keymap {
 
 #define XkbKeycodeInRange(d, k) \
     (((k) >= (d)->min_key_code) && ((k) <= (d)->max_key_code))
-#define XkbNumKeys(d) \
-    ((d)->max_key_code - (d)->min_key_code + 1)
 
 struct xkb_state {
        xkb_group_index_t base_group; /**< depressed */
index 2e9f43b..6268d4b 100644 (file)
@@ -418,7 +418,7 @@ CopyIndicatorMapDefs(struct xkb_keymap *keymap, LEDInfo *leds,
             im->ctrls = led->ctrls;
             if (keymap->names != NULL)
             {
-                free(UNCONSTIFY(keymap->names->indicators[led->indicator - 1]));
+                free(keymap->names->indicators[led->indicator - 1]);
                 keymap->names->indicators[led->indicator-1] =
                     xkb_atom_strdup(keymap->ctx, led->name);
             }
index 80f80ee..c582781 100644 (file)
@@ -863,7 +863,7 @@ CompileKeycodes(XkbFile *file, struct xkb_keymap *keymap, unsigned merge)
         }
 
         for (ii = info.leds; ii; ii = (IndicatorNameInfo *)ii->defs.next) {
-            free(UNCONSTIFY(keymap->names->indicators[ii->ndx - 1]));
+            free(keymap->names->indicators[ii->ndx - 1]);
             keymap->names->indicators[ii->ndx - 1] =
                 xkb_atom_strdup(keymap->ctx, ii->name);
         }
index bd6354f..e4248f4 100644 (file)
@@ -1053,8 +1053,8 @@ CopyDefToKeyType(struct xkb_keymap *keymap, struct xkb_key_type *type,
     type->name = xkb_atom_strdup(keymap->ctx, def->name);
 
     if (!darray_empty(def->lvlNames)) {
-        type->level_names = uTypedCalloc(darray_size(def->lvlNames),
-                                         const char *);
+        type->level_names = calloc(darray_size(def->lvlNames),
+                                   sizeof(*type->level_names));
 
         /* assert def->szNames<=def->numLevels */
         for (i = 0; i < darray_size(def->lvlNames); i++)
index 5e243ec..a61a52b 100644 (file)
@@ -2213,7 +2213,7 @@ CompileSymbols(XkbFile *file, struct xkb_keymap *keymap, unsigned merge)
 
     for (i = 0; i < XkbNumKbdGroups; i++) {
         if (info.groupNames[i] != XKB_ATOM_NONE) {
-            free(UNCONSTIFY(keymap->names->groups[i]));
+            free(keymap->names->groups[i]);
             keymap->names->groups[i] = xkb_atom_strdup(keymap->ctx,
                                                        info.groupNames[i]);
         }