From 2c6a10dc38d08ce7a6bedfb9e428f008f6f0c996 Mon Sep 17 00:00:00 2001
From: Christian Pointner <equinox@helsinki.at>
Date: Sat, 1 Sep 2018 15:27:21 +0200
Subject: [PATCH] zombie reaping

---
 importer/fetch.go | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/importer/fetch.go b/importer/fetch.go
index bee2095..756d1f9 100644
--- a/importer/fetch.go
+++ b/importer/fetch.go
@@ -105,6 +105,8 @@ func (job *Job) fetch() error {
 		job.im.errLog.Printf("fetch(): creating fetch converter failed: %v", err)
 		return err
 	}
+	// from here on conv.Close() and conv.Wait() has to be called in any case to
+	// reap potential child process zombies
 
 	done := make(chan copyResult)
 	go func() {
@@ -128,6 +130,7 @@ func (job *Job) fetch() error {
 	select {
 	case <-job.ctx.Done():
 		conv.Close()
+		go conv.Wait() // do the zombie reaping in seperate go routine since we are not interested in the result anyway
 		err = job.ctx.Err()
 		job.source.done <- &JobSourceResult{Err: err}
 		return err
-- 
GitLab