diff options
author | Niels De Graef <nielsdegraef@gmail.com> | 2023-01-16 19:50:44 +0100 |
---|---|---|
committer | Niels De Graef <nielsdegraef@gmail.com> | 2023-01-16 21:03:48 +0000 |
commit | 7ad43a0ee68a43dee771f0a2005ef571fedfd24e (patch) | |
tree | 6432fdbbad551d74e05d45dce3790dfc1654b227 /gcr | |
parent | ca815e40536f684409ca43ca7a32bbbcc1fb3137 (diff) | |
download | gcr-7ad43a0ee68a43dee771f0a2005ef571fedfd24e.tar.gz |
gcr: Don't leak error/stderror when spawning askpass
Diffstat (limited to 'gcr')
-rw-r--r-- | gcr/gcr-ssh-agent-service.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcr/gcr-ssh-agent-service.c b/gcr/gcr-ssh-agent-service.c index beae47b..1f185f4 100644 --- a/gcr/gcr-ssh-agent-service.c +++ b/gcr/gcr-ssh-agent-service.c @@ -267,22 +267,22 @@ ensure_key (GcrSshAgentService *self, g_object_unref (interaction); if (!g_spawn_sync (NULL, argv, NULL, - G_SPAWN_STDOUT_TO_DEV_NULL, + G_SPAWN_STDOUT_TO_DEV_NULL, gcr_ssh_askpass_child_setup, askpass, NULL, &standard_error, &status, &error)) { g_warning ("couldn't run %s: %s", argv[0], error->message); - g_error_free (error); } else if (!g_spawn_check_exit_status (status, &error)) { g_message ("the %s command failed: %s", argv[0], error->message); g_printerr ("%s", _gcr_ssh_agent_canon_error (standard_error)); - g_free (standard_error); } else { add_key (self, key); } + g_free (standard_error); g_hash_table_unref (fields); g_free (unique); gcr_ssh_agent_key_info_free (info); + g_clear_error (&error); g_object_unref (askpass); } |