qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] qga-win: Free GMatchInfo properly


From: Konstantin Kostiuk
Subject: Re: [PATCH] qga-win: Free GMatchInfo properly
Date: Thu, 10 Jun 2021 17:53:35 +0300

Hi All,

For freeing GMatchInfo struct, a special function is required. I'm not sure is it possible to use g_autoptr in this case or no.
In GLib example https://developer.gnome.org/glib/stable/glib-Perl-compatible-regular-expressions.html#g-regex-match, g_match_info_free is used directly.

Best wishes,
Kostiantyn Kostiuk


On Thu, Jun 10, 2021 at 5:41 PM Marc-André Lureau <marcandre.lureau@gmail.com> wrote:
Hi

On Thu, Jun 10, 2021 at 6:38 PM Kostiantyn Kostiuk <konstantin@daynix.com> wrote:
The g_regex_match function creates match_info even if it
returns FALSE. So we should always call g_match_info_free.

Signed-off-by: Kostiantyn Kostiuk <konstantin@daynix.com>
---
 qga/commands-win32.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/qga/commands-win32.c b/qga/commands-win32.c
index 300b87c859..e8bc3df306 100644
--- a/qga/commands-win32.c
+++ b/qga/commands-win32.c
@@ -2497,6 +2497,7 @@ GuestDeviceInfoList *qmp_guest_get_devices(Error **errp)
             GMatchInfo *match_info;

What about using g_autoptr instead?

             GuestDeviceIdPCI *id;
             if (!g_regex_match(device_pci_re, hw_ids[j], 0, &match_info)) {
+                g_match_info_free(match_info);
                 continue;
             }
             skip = false;
--
2.25.1




--
Marc-André Lureau

reply via email to

[Prev in Thread] Current Thread [Next in Thread]