[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 08/26] tests/qtests: clean-up and fix leak in generic_fuzz
From: |
Juan Quintela |
Subject: |
Re: [PATCH v2 08/26] tests/qtests: clean-up and fix leak in generic_fuzz |
Date: |
Tue, 27 Jun 2023 09:43:26 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Alex Bennée <alex.bennee@linaro.org> wrote:
> An update to the clang tooling detects more issues with the code
> including a memory leak from the g_string_new() allocation. Clean up
> the code with g_autoptr and use ARRAY_SIZE while we are at it.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> tests/qtest/fuzz/generic_fuzz.c | 11 ++++-------
> 1 file changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/tests/qtest/fuzz/generic_fuzz.c b/tests/qtest/fuzz/generic_fuzz.c
> index c525d22951..a4841181cc 100644
> --- a/tests/qtest/fuzz/generic_fuzz.c
> +++ b/tests/qtest/fuzz/generic_fuzz.c
> @@ -954,17 +954,14 @@ static void register_generic_fuzz_targets(void)
> .crossover = generic_fuzz_crossover
> });
>
> - GString *name;
> + g_autoptr(GString) name = g_string_new("");
> const generic_fuzz_config *config;
>
> - for (int i = 0;
> - i < sizeof(predefined_configs) / sizeof(generic_fuzz_config);
> - i++) {
> + for (int i = 0; i < ARRAY_SIZE(predefined_configs); i++) {
> config = predefined_configs + i;
> - name = g_string_new("generic-fuzz");
> - g_string_append_printf(name, "-%s", config->name);
> + g_string_printf(name, "generic-fuzz-%s", config->name);
> fuzz_add_target(&(FuzzTarget){
> - .name = name->str,
> + .name = g_strdup(name->str),
> .description = "Predefined generic-fuzz config.",
> .get_init_cmdline = generic_fuzz_predefined_config_cmdline,
> .pre_fuzz = generic_pre_fuzz,
Once that you are here, what about?
(Yes, I didn't care about the ARRAY_SIZE) but you got the idea.
Reviewed-by: Juan Quintela <quintela@redhat.com>
To your proposal with/without the change that I proposse.
modified tests/qtest/fuzz/generic_fuzz.c
@@ -954,17 +954,14 @@ static void register_generic_fuzz_targets(void)
.crossover = generic_fuzz_crossover
});
- GString *name;
const generic_fuzz_config *config;
for (int i = 0;
i < sizeof(predefined_configs) / sizeof(generic_fuzz_config);
i++) {
config = predefined_configs + i;
- name = g_string_new("generic-fuzz");
- g_string_append_printf(name, "-%s", config->name);
fuzz_add_target(&(FuzzTarget){
- .name = name->str,
+ .name = g_strdup_printf("generic-fuzz-%s", config->name),
.description = "Predefined generic-fuzz config.",
.get_init_cmdline = generic_fuzz_predefined_config_cmdline,
.pre_fuzz = generic_pre_fuzz,
- [PATCH v2 00/26] maintainer omnibus: testing, fuzz, plugins, documentation, Alex Bennée, 2023/06/26
- [PATCH v2 02/26] gitlab: ensure coverage job also publishes meson log, Alex Bennée, 2023/06/26
- [PATCH v2 01/26] gitlab: explicit set artifacts publishing criteria, Alex Bennée, 2023/06/26
- [PATCH v2 03/26] gitlab: reduce testing scope of check-gcov, Alex Bennée, 2023/06/26
- [PATCH v2 08/26] tests/qtests: clean-up and fix leak in generic_fuzz, Alex Bennée, 2023/06/26
- Re: [PATCH v2 08/26] tests/qtests: clean-up and fix leak in generic_fuzz,
Juan Quintela <=
- Re: [PATCH v2 08/26] tests/qtests: clean-up and fix leak in generic_fuzz, Alexander Bulekov, 2023/06/27
- [PATCH v2 09/26] tests/docker: add test-fuzz, Alex Bennée, 2023/06/26
- [PATCH v2 11/26] tests/lcitool: update to latest version, Alex Bennée, 2023/06/26
- [PATCH v2 04/26] docs/devel: remind developers to run CI container pipeline when updating images, Alex Bennée, 2023/06/26
- [PATCH v2 06/26] qemu-keymap: properly check return from xkb_keymap_mod_get_index, Alex Bennée, 2023/06/26
- [PATCH v2 10/26] Makefile: add lcitool-refresh to UNCHECKED_GOALS, Alex Bennée, 2023/06/26