From fbe328fa96fd84dfad326b01205a7d1a67eb5d99 Mon Sep 17 00:00:00 2001 From: Eyal Ilsar Date: Tue, 3 Apr 2018 04:19:14 +0300 Subject: [PATCH] diag: masks: Use realloc() to increase mask in diag_cmd_get_event_mask() Rather than calling malloc() and free() use realloc() to increase mask size in diag_cmd_get_event_mask(). Signed-off-by: Eyal Ilsar Signed-off-by: Bjorn Andersson --- masks.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/masks.c b/masks.c index 4d6c756..a56073d 100644 --- a/masks.c +++ b/masks.c @@ -565,14 +565,13 @@ int diag_cmd_update_event_mask(uint16_t num_bits, const uint8_t *mask) void *tmp_buf; if (num_bits > event_max_num_bits ) { - tmp_buf = malloc(BITS_TO_BYTES(num_bits)); + tmp_buf = realloc(event_mask.ptr, BITS_TO_BYTES(num_bits)); if (!tmp_buf) { event_mask.status = DIAG_CTRL_MASK_INVALID; warn("Failed to reallocate event mask\n"); return -errno; } - free(event_mask.ptr); event_mask.ptr = tmp_buf; event_max_num_bits = num_bits;