44 lines
1.4 KiB
Diff
44 lines
1.4 KiB
Diff
|
|
From 39baaf38c00b4ff78100bf3d1b378140678e9dfb Mon Sep 17 00:00:00 2001
|
||
|
|
From: John Ferlan <jferlan@redhat.com>
|
||
|
|
Date: Tue, 16 Jun 2020 08:07:04 -0400
|
||
|
|
Subject: [PATCH 003/108] lxc: Fix memory leak in
|
||
|
|
virLXCControllerPopulateDevices
|
||
|
|
|
||
|
|
Since 5b82f7f3, @path should have been placed inside the for loop
|
||
|
|
since it'd need to be free'd for each pass through the loop; otherwise,
|
||
|
|
we'd leak like a sieve.
|
||
|
|
|
||
|
|
Found by Coverity.
|
||
|
|
|
||
|
|
Signed-off-by: John Ferlan <jferlan@redhat.com>
|
||
|
|
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
|
||
|
|
(cherry picked from commit 52e3c2b4801c4ef3d8be5c1398de1884e93a1f52)
|
||
|
|
---
|
||
|
|
src/lxc/lxc_controller.c | 3 ++-
|
||
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
|
||
|
|
diff --git a/src/lxc/lxc_controller.c b/src/lxc/lxc_controller.c
|
||
|
|
index 453b435dd6..7a3a79a9a0 100644
|
||
|
|
--- a/src/lxc/lxc_controller.c
|
||
|
|
+++ b/src/lxc/lxc_controller.c
|
||
|
|
@@ -1490,7 +1490,6 @@ static int virLXCControllerSetupDev(virLXCControllerPtr ctrl)
|
||
|
|
static int virLXCControllerPopulateDevices(virLXCControllerPtr ctrl)
|
||
|
|
{
|
||
|
|
size_t i;
|
||
|
|
- g_autofree char *path = NULL;
|
||
|
|
const struct {
|
||
|
|
int maj;
|
||
|
|
int min;
|
||
|
|
@@ -1510,6 +1509,8 @@ static int virLXCControllerPopulateDevices(virLXCControllerPtr ctrl)
|
||
|
|
|
||
|
|
/* Populate /dev/ with a few important bits */
|
||
|
|
for (i = 0; i < G_N_ELEMENTS(devs); i++) {
|
||
|
|
+ g_autofree char *path = NULL;
|
||
|
|
+
|
||
|
|
path = g_strdup_printf("/%s/%s.dev/%s", LXC_STATE_DIR, ctrl->def->name,
|
||
|
|
devs[i].path);
|
||
|
|
|
||
|
|
--
|
||
|
|
2.33.0
|
||
|
|
|