From 99834b85b214a72aa6a00d6b4b0aa8a0f8e591ff Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Mon, 12 Dec 2016 14:02:35 +0100 Subject: [PATCH] perl: fix memory leak in RStruct actions The return value struct was freed using a simple free() instead of the own cleanup function of each struct: this meant dynamically allocated values (such as strings) were leaked. Use the proper cleanup functions instead. --- generator/perl.ml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator/perl.ml b/generator/perl.ml index 290b68763..4c7f8054d 100644 --- a/generator/perl.ml +++ b/generator/perl.ml @@ -657,7 +657,7 @@ and generate_perl_struct_code typ cols name style n = pr " PUSHs (sv_2mortal (newSVnv (r->%s)));\n" name ) cols; - pr " free (r);\n" + pr " guestfs_free_%s (r);\n" typ (* Generate Sys/Guestfs.pm. *) and generate_perl_pm () =