File libproxy-gnome-waitpid.patch of Package libproxy

From 8472b3b8ba8c50aedad50d5d8fe8d25cbcb10a30 Mon Sep 17 00:00:00 2001
From: Dominique Leuenberger <dimstar@opensuse.org>
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 <sys/types.h>    // For stat()
 #include <sys/stat.h>     // For stat()
 #include <unistd.h>       // For pipe(), close(), vfork(), dup(), execl(), _exit()
+#include <sys/wait.h>     // For waitpid()
 #include <signal.h>       // 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,

openSUSE Build Service is sponsored by