blob: 5d481f232ebe6b44045439dfa5b9d103a1888062 [file] [log] [blame]
Patrick Williamsb48b7b42016-08-17 15:04:38 -05001Fix the memory leak problem when HAVE_ENVIRON is defined
2
3Upstream-Status: Pending
4
5Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com>
6---
Brad Bishop316dfdd2018-06-25 12:45:53 -04007Index: syslog-ng-3.8.1/lib/gprocess.c
8===================================================================
9--- syslog-ng-3.8.1.orig/lib/gprocess.c
10+++ syslog-ng-3.8.1/lib/gprocess.c
11@@ -1432,6 +1432,18 @@ g_process_startup_ok(void)
Patrick Williamsb48b7b42016-08-17 15:04:38 -050012 void
13 g_process_finish(void)
14 {
15+#ifdef HAVE_ENVIRON
16+ int i = 0;
17+
18+ while (environ[i]) {
19+ g_free(environ[i]);
20+ ++i;
21+ }
22+ if (environ)
23+ g_free(environ);
24+ if (process_opts.argv_orig)
25+ free(process_opts.argv_orig);
26+#endif
27 g_process_remove_pidfile();
28 }
29