From 7231c2c7f2afaf79e7efe6179a860d0afc6ab8b5 Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Tue, 5 Sep 2023 03:06:30 +0200 Subject: [PATCH] unistr/u{8,16,32}-strtok tests: Fix -Wanalyzer-allocation-size warnings. * tests/unistr/test-u-strtok.h (test_u_strtok): Correct values of input_len and delim_len. --- ChangeLog | 4 ++++ tests/unistr/test-u-strtok.h | 10 ++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index e9a5461070..1d6239beec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2023-09-04 Bruno Haible + unistr/u{8,16,32}-strtok tests: Fix -Wanalyzer-allocation-size warnings. + * tests/unistr/test-u-strtok.h (test_u_strtok): Correct values of + input_len and delim_len. + sigpipe tests: Fix -Wanalyzer-unsafe-call-within-signal-handler warning. * tests/test-sigpipe.c (handler): Invoke _exit, not exit. * tests/test-raise.c (handler): Update comments after 2020-11-25 change. diff --git a/tests/unistr/test-u-strtok.h b/tests/unistr/test-u-strtok.h index a156d58d24..c7da3d4027 100644 --- a/tests/unistr/test-u-strtok.h +++ b/tests/unistr/test-u-strtok.h @@ -50,10 +50,12 @@ test_u_strtok (void) 'A', 'B', 'C', 'D', 'A', 'B', 'C', 'D', 'A', 'B', 'D', 'E', 0 }; ucs4_t u_delim[] = { 0x3000, 0x3001, 0 }; - size_t input_len = 6 * SIZEOF (u_input); - UNIT *input = (UNIT *) malloc (input_len); - size_t delim_len = 6 * SIZEOF (u_delim); - UNIT *delim = (UNIT *) malloc (delim_len); + /* Convert ucs4_t[] to UNIT[]. + Every ucs4_t yields at most 4 / sizeof (UNIT) units. */ + size_t input_len = SIZEOF (u_input) * (4 / sizeof (UNIT)); + UNIT *input = (UNIT *) malloc (input_len * sizeof (UNIT)); + size_t delim_len = SIZEOF (u_delim) * (4 / sizeof (UNIT)); + UNIT *delim = (UNIT *) malloc (delim_len * sizeof (UNIT)); UNIT *state; const UNIT *result; UNIT *ptr, *first_ptr, *second_ptr; -- 2.39.5