This has the added benefit of 'gotnet' only being freed after
it was possibly used in the output string.
../src/internal.h:519:27: error: ‘%s’ directive argument is null
[-Werror=format-overflow=]
519 | # define fprintf(fh, ...) g_fprintf(fh, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../tests/sockettest.c:194:9: note: in expansion of macro ‘fprintf’
194 | fprintf(stderr, "Expected %s, got %s\n", networkstr, gotnet);
| ^~~~~~~
Signed-off-by: Ján Tomko <jtomko(a)redhat.com>
Reported-by: Jaroslav Suchanek <jsuchane(a)redhat.com>
Fixes: ba08c5932e556aa4f5101357127a6224c40e5ebe
---
tests/sockettest.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/tests/sockettest.c b/tests/sockettest.c
index 3183ca523f..e9654fcebb 100644
--- a/tests/sockettest.c
+++ b/tests/sockettest.c
@@ -175,7 +175,7 @@ static int testMaskNetwork(const char *addrstr,
{
virSocketAddr addr;
virSocketAddr network;
- char *gotnet = NULL;
+ g_autofree char *gotnet = NULL;
/* Intentionally fill with garbage */
memset(&network, 1, sizeof(network));
@@ -190,11 +190,9 @@ static int testMaskNetwork(const char *addrstr,
return -1;
if (STRNEQ(networkstr, gotnet)) {
- VIR_FREE(gotnet);
fprintf(stderr, "Expected %s, got %s\n", networkstr, gotnet);
return -1;
}
- VIR_FREE(gotnet);
return 0;
}
--
2.26.2