From 8472b3b8ba8c50aedad50d5d8fe8d25cbcb10a30 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Fri, 22 Jul 2016 14:21:45 +0200 Subject: [PATCH] GNOME3: Wait for pxgsettings to vanish while destroying the plugin This helps avoiding zombie processes in case a caller creates/destroys ProxyFactories for each URL (even though we recommend to have a long-living PF for caching reasons). Originally reported at https://bugzilla.opensuse.org/show_bug.cgi?id=967601 --- libproxy/modules/config_gnome3.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libproxy/modules/config_gnome3.cpp b/libproxy/modules/config_gnome3.cpp index 47e7a42..666d639 100644 --- a/libproxy/modules/config_gnome3.cpp +++ b/libproxy/modules/config_gnome3.cpp @@ -24,6 +24,7 @@ #include // For stat() #include // For stat() #include // For pipe(), close(), vfork(), dup(), execl(), _exit() +#include // For waitpid() #include // For kill() #include "../extension_config.hpp" @@ -161,6 +162,7 @@ class gnome_config_extension : public config_extension { fclose(this->read); fclose(this->write); kill(this->pid, SIGTERM); + waitpid(this->pid, NULL, 0); } void store_response(const string &type,