summaryrefslogtreecommitdiff
path: root/backport-Leaking-zombie-child-processes.patch
blob: 8d05a225ade361eace084488b9791a5342cfb41a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
From 8638ec5cd534dcc616b68e5b0744c493c0c71dc9 Mon Sep 17 00:00:00 2001
From: Jan Rybar <jrybar@redhat.com>
Date: Wed, 15 Aug 2018 16:11:22 +0200
Subject: [PATCH] Leaking zombie child processes Resolves: bz#106021

Subject: [PATCH] polkitd: fix zombie not reaped when js spawned process timed
 out

The child watch source attached to thread context didn't work due
to the release of it's main loop and context outside. So we attach
the source to the global default main context to make it work and
avoid zombies.
---
 src/polkitbackend/polkitbackendcommon.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/polkitbackend/polkitbackendcommon.c b/src/polkitbackend/polkitbackendcommon.c
index 517f3c6..7602714 100644
--- a/src/polkitbackend/polkitbackendcommon.c
+++ b/src/polkitbackend/polkitbackendcommon.c
@@ -1595,7 +1595,8 @@ utils_spawn_data_free (UtilsSpawnData *data)
                              (GSourceFunc) utils_child_watch_from_release_cb,
                              source,
                              (GDestroyNotify) g_source_destroy);
-      g_source_attach (source, data->main_context);
+      /* attach source to the global default main context */
+      g_source_attach (source, NULL);
       g_source_unref (source);
       data->child_pid = 0;
     }
-- 
2.33.0