[gnome-settings-daemon] updates: Use g_spawn_sync() rather than parsing a constructed command line
- From: Richard Hughes <rhughes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-settings-daemon] updates: Use g_spawn_sync() rather than parsing a constructed command line
- Date: Mon, 2 Jul 2012 08:56:17 +0000 (UTC)
commit eeea53142c30c467d8a1bff8190c50e8cfdfb678
Author: Richard Hughes <richard hughsie com>
Date: Mon Jul 2 09:53:19 2012 +0100
updates: Use g_spawn_sync() rather than parsing a constructed command line
plugins/updates/gsd-updates-firmware.c | 26 +++++++++++++++-----------
1 files changed, 15 insertions(+), 11 deletions(-)
---
diff --git a/plugins/updates/gsd-updates-firmware.c b/plugins/updates/gsd-updates-firmware.c
index 52715e6..47987dd 100644
--- a/plugins/updates/gsd-updates-firmware.c
+++ b/plugins/updates/gsd-updates-firmware.c
@@ -161,7 +161,7 @@ static gboolean
device_rebind (GsdUpdatesFirmware *firmware)
{
gboolean ret;
- gchar *command;
+ gchar *argv[4];
gchar *rebind_stderr = NULL;
gchar *rebind_stdout = NULL;
GError *error = NULL;
@@ -185,17 +185,22 @@ device_rebind (GsdUpdatesFirmware *firmware)
g_string_set_size (string, string->len-1);
/* use PolicyKit to do this as root */
- command = g_strdup_printf ("pkexec %s %s",
- GSD_UPDATES_FIRMWARE_DEVICE_REBIND_PROGRAM,
- string->str);
- ret = g_spawn_command_line_sync (command,
- &rebind_stdout,
- &rebind_stderr,
- &exit_status,
- &error);
+ argv[0] = "pkexec";
+ argv[1] = GSD_UPDATES_FIRMWARE_DEVICE_REBIND_PROGRAM;
+ argv[2] = string->str;
+ argv[3] = NULL;
+ ret = g_spawn_sync (NULL,
+ argv,
+ NULL,
+ 0,
+ NULL, NULL,
+ &rebind_stdout,
+ &rebind_stderr,
+ &exit_status,
+ &error);
if (!ret) {
g_warning ("failed to spawn '%s': %s",
- command, error->message);
+ argv[1], error->message);
g_error_free (error);
goto out;
}
@@ -210,7 +215,6 @@ device_rebind (GsdUpdatesFirmware *firmware)
out:
g_free (rebind_stdout);
g_free (rebind_stderr);
- g_free (command);
g_string_free (string, TRUE);
return ret;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]