From 445f83668b068e4662b26fc9a43d5d570c0351b4 Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Mon, 24 Feb 2025 12:15:01 +0100 Subject: [PATCH] xkb: replace xallocarray() by calloc() Only key difference that calloc(), in contrast to rellocarray(), is zero-initializing. The overhead is hard to measure on today's machines, and it's safer programming practise to always allocate zero-initialized, so one can't forget to do it explicitly. Cocci rule: @@ expression COUNT; expression LEN; @@ - xallocarray(COUNT,LEN) + calloc(COUNT,LEN) Signed-off-by: Enrico Weigelt, metux IT consult --- xkb/xkb.c | 6 +++--- xkb/xkbUtils.c | 13 ++++++------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/xkb/xkb.c b/xkb/xkb.c index 582749fc1..872e3451d 100644 --- a/xkb/xkb.c +++ b/xkb/xkb.c @@ -2838,7 +2838,7 @@ XkbSendCompatMap(ClientPtr client, int size; if (rep->length > 0) { - data = xallocarray(rep->length, 4); + data = calloc(rep->length, 4); if (data) { register unsigned i, bit; xkbModsWireDesc *grp; @@ -3225,7 +3225,7 @@ XkbSendIndicatorMap(ClientPtr client, if (rep->length > 0) { CARD8 *to; - to = map = xallocarray(rep->length, 4); + to = map = calloc(rep->length, 4); if (map) { xkbIndicatorMapWireDesc *wire = (xkbIndicatorMapWireDesc *) to; @@ -5037,7 +5037,7 @@ XkbSendGeometry(ClientPtr client, int len; if (geom != NULL) { - start = desc = xallocarray(rep->length, 4); + start = desc = calloc(rep->length, 4); if (!start) return BadAlloc; len = rep->length * 4; diff --git a/xkb/xkbUtils.c b/xkb/xkbUtils.c index 4b2cba12b..181558e9f 100644 --- a/xkb/xkbUtils.c +++ b/xkb/xkbUtils.c @@ -1066,8 +1066,8 @@ _XkbCopyClientMap(XkbDescPtr src, XkbDescPtr dst) } else if (!dtype->map_count || !dtype->map || i >= dst->map->num_types) { - tmp = xallocarray(stype->map_count, - sizeof(XkbKTMapEntryRec)); + tmp = calloc(stype->map_count, + sizeof(XkbKTMapEntryRec)); if (!tmp) return FALSE; dtype->map = tmp; @@ -1095,8 +1095,7 @@ _XkbCopyClientMap(XkbDescPtr src, XkbDescPtr dst) } else if (!dtype->preserve || !dtype->map_count || i >= dst->map->num_types) { - tmp = xallocarray(stype->map_count, - sizeof(XkbModsRec)); + tmp = calloc(stype->map_count, sizeof(XkbModsRec)); if (!tmp) return FALSE; dtype->preserve = tmp; @@ -1606,8 +1605,8 @@ _XkbCopyGeom(XkbDescPtr src, XkbDescPtr dst) j < sshape->num_outlines; j++, soutline++, doutline++) { if (soutline->num_points) { - tmp = xallocarray(soutline->num_points, - sizeof(XkbPointRec)); + tmp = calloc(soutline->num_points, + sizeof(XkbPointRec)); if (!tmp) return FALSE; doutline->points = tmp; @@ -1734,7 +1733,7 @@ _XkbCopyGeom(XkbDescPtr src, XkbDescPtr dst) for (j = 0, srow = ssection->rows, drow = dsection->rows; j < ssection->num_rows; j++, srow++, drow++) { if (srow->num_keys) { - tmp = xallocarray(srow->num_keys, sizeof(XkbKeyRec)); + tmp = calloc(srow->num_keys, sizeof(XkbKeyRec)); if (!tmp) return FALSE; drow->keys = tmp;