diff options
author | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2015-04-06 20:58:00 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2015-04-06 20:58:00 +0000 |
commit | 3f119a90b2d43af7b51a26204614151cca6b734f (patch) | |
tree | 123bbe87be55c594f0b016cbf0bfc33d9a3e73d0 /lib/libX11/src/xkb/XKBMAlloc.c | |
parent | 8cff8cd363e78b03bb70b26d1a1faa80ac9f8885 (diff) |
update to libX11 1.6.3
Diffstat (limited to 'lib/libX11/src/xkb/XKBMAlloc.c')
-rw-r--r-- | lib/libX11/src/xkb/XKBMAlloc.c | 94 |
1 files changed, 39 insertions, 55 deletions
diff --git a/lib/libX11/src/xkb/XKBMAlloc.c b/lib/libX11/src/xkb/XKBMAlloc.c index f27fe4ec3..2e39634a7 100644 --- a/lib/libX11/src/xkb/XKBMAlloc.c +++ b/lib/libX11/src/xkb/XKBMAlloc.c @@ -226,18 +226,16 @@ XkbCopyKeyType(XkbKeyTypePtr from, XkbKeyTypePtr into) { if ((!from) || (!into)) return BadMatch; - if (into->map) { - _XkbFree(into->map); - into->map = NULL; - } - if (into->preserve) { - _XkbFree(into->preserve); - into->preserve = NULL; - } - if (into->level_names) { - _XkbFree(into->level_names); - into->level_names = NULL; - } + + _XkbFree(into->map); + into->map = NULL; + + _XkbFree(into->preserve); + into->preserve = NULL; + + _XkbFree(into->level_names); + into->level_names = NULL; + *into = *from; if ((from->map) && (into->map_count > 0)) { into->map = _XkbTypedCalloc(into->map_count, XkbKTMapEntryRec); @@ -302,7 +300,7 @@ XkbAddKeyType(XkbDescPtr xkb, } } } - if ((!map) || (!map->types) || (!map->num_types < XkbNumRequiredTypes)) { + if ((!map) || (!map->types) || (map->num_types < XkbNumRequiredTypes)) { tmp = XkbNumRequiredTypes + 1; if (XkbAllocClientMap(xkb, XkbKeyTypesMask, tmp) != Success) return NULL; @@ -385,11 +383,9 @@ XkbResizeKeyType(XkbDescPtr xkb, } type = &xkb->map->types[type_ndx]; if (map_count == 0) { - if (type->map != NULL) - _XkbFree(type->map); + _XkbFree(type->map); type->map = NULL; - if (type->preserve != NULL) - _XkbFree(type->preserve); + _XkbFree(type->preserve); type->preserve = NULL; type->map_count = 0; } @@ -400,8 +396,7 @@ XkbResizeKeyType(XkbDescPtr xkb, type->map = _XkbTypedRealloc(type->map, map_count, XkbKTMapEntryRec); if (!type->map) { - if (prev_map) - _XkbFree(prev_map); + _XkbFree(prev_map); return BadAlloc; } if (want_preserve) { @@ -412,12 +407,11 @@ XkbResizeKeyType(XkbDescPtr xkb, XkbModsRec); } if (!type->preserve) { - if (prev_preserve) - _XkbFree(prev_preserve); + _XkbFree(prev_preserve); return BadAlloc; } } - else if (type->preserve != NULL) { + else { _XkbFree(type->preserve); type->preserve = NULL; } @@ -430,8 +424,7 @@ XkbResizeKeyType(XkbDescPtr xkb, type->level_names = _XkbTypedRealloc(type->level_names, new_num_lvls, Atom); if (!type->level_names) { - if (prev_level_names) - _XkbFree(prev_level_names); + _XkbFree(prev_level_names); return BadAlloc; } } @@ -919,19 +912,16 @@ XkbFreeClientMap(XkbDescPtr xkb, unsigned what, Bool freeMap) XkbKeyTypePtr type; for (i = 0, type = map->types; i < map->num_types; i++, type++) { - if (type->map != NULL) { - _XkbFree(type->map); - type->map = NULL; - } - if (type->preserve != NULL) { - _XkbFree(type->preserve); - type->preserve = NULL; - } + _XkbFree(type->map); + type->map = NULL; + + _XkbFree(type->preserve); + type->preserve = NULL; + type->map_count = 0; - if (type->level_names != NULL) { - _XkbFree(type->level_names); - type->level_names = NULL; - } + + _XkbFree(type->level_names); + type->level_names = NULL; } } _XkbFree(map->types); @@ -940,17 +930,14 @@ XkbFreeClientMap(XkbDescPtr xkb, unsigned what, Bool freeMap) } } if (what & XkbKeySymsMask) { - if (map->key_sym_map != NULL) { - _XkbFree(map->key_sym_map); - map->key_sym_map = NULL; - } - if (map->syms != NULL) { - _XkbFree(map->syms); - map->size_syms = map->num_syms = 0; - map->syms = NULL; - } + _XkbFree(map->key_sym_map); + map->key_sym_map = NULL; + + _XkbFree(map->syms); + map->size_syms = map->num_syms = 0; + map->syms = NULL; } - if ((what & XkbModifierMapMask) && (map->modmap != NULL)) { + if (what & XkbModifierMapMask) { _XkbFree(map->modmap); map->modmap = NULL; } @@ -971,26 +958,23 @@ XkbFreeServerMap(XkbDescPtr xkb, unsigned what, Bool freeMap) if (freeMap) what = XkbAllServerInfoMask; map = xkb->server; - if ((what & XkbExplicitComponentsMask) && (map->explicit != NULL)) { + if (what & XkbExplicitComponentsMask) { _XkbFree(map->explicit); map->explicit = NULL; } if (what & XkbKeyActionsMask) { - if (map->key_acts != NULL) { - _XkbFree(map->key_acts); + _XkbFree(map->key_acts); map->key_acts = NULL; - } - if (map->acts != NULL) { - _XkbFree(map->acts); + + _XkbFree(map->acts); map->num_acts = map->size_acts = 0; map->acts = NULL; - } } - if ((what & XkbKeyBehaviorsMask) && (map->behaviors != NULL)) { + if (what & XkbKeyBehaviorsMask) { _XkbFree(map->behaviors); map->behaviors = NULL; } - if ((what & XkbVirtualModMapMask) && (map->vmodmap != NULL)) { + if (what & XkbVirtualModMapMask) { _XkbFree(map->vmodmap); map->vmodmap = NULL; } |