*tpm

On a Monday in 2021, Michal Privoznik wrote:
This function finds "swtmp", "swtpm_setup" and "swtpm_ioctl"
binaries in $PATH and stores resolved paths in global variables
so that they can be obtainer later. Anyway, the resolved path is
marked as g_autofree and to avoid its freeing later on in the
function the variable is set to NULL manually. Well, we have
g_steal_pointer() for thath.

*that


Signed-off-by: Michal Privoznik <[email protected]>
---
src/util/virtpm.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/util/virtpm.c b/src/util/virtpm.c
index b41eb00619..cd860140d3 100644
--- a/src/util/virtpm.c
+++ b/src/util/virtpm.c
@@ -323,16 +323,14 @@ virTPMEmulatorInit(void)
                                     _("Could not stat %s"), path);
                goto cleanup;
            }
-            *prgs[i].path = path;
+            *prgs[i].path = g_steal_pointer(&path);

            if (prgs[i].caps) {
                *prgs[i].caps = virTPMGetCaps(prgs[i].typeFromStringFn,
                                              path, prgs[i].parm);

The path is used here --------------------------^^^^

-                path = NULL;
                if (!*prgs[i].caps)
                    goto cleanup;
            }
-            path = NULL;
        }
    }

With that fixed:

Reviewed-by: Ján Tomko <[email protected]>

Jano

Attachment: signature.asc
Description: PGP signature

Reply via email to