From 62fd12149f73feb4e9c93a961670d527436a6e33 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Sun, 12 Jul 2020 09:12:07 +0200 Subject: [PATCH] CONTRIB: da: fix memory leak in dummy function da_atlas_open() The dummy function takes care of doing a bit of work using a malloc() to avoid returning a constant but it doesn't free the tested pointer, which coverity noticed in issue #741. Let's free it before testing it for the return value. This may be backported but is not important since this code is only present to allow to build the device detection code and not to actually run it. --- contrib/deviceatlas/dac.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/contrib/deviceatlas/dac.c b/contrib/deviceatlas/dac.c index f94fe8daf5..720dc6af4d 100644 --- a/contrib/deviceatlas/dac.c +++ b/contrib/deviceatlas/dac.c @@ -63,8 +63,9 @@ da_atlas_compile(void *ctx, da_read_fn readfn, da_setpos_fn rewind, void **ptr, da_status_t da_atlas_open(da_atlas_t *atlas, da_property_decl_t *extraprops, const void *ptr, size_t len) { - ptr = malloc(len); - return ptr ? DA_OK : DA_NOMEM; + void *ptr2 = malloc(len); + free(ptr2); + return ptr2 ? DA_OK : DA_NOMEM; } void