summaryrefslogtreecommitdiff
path: root/backport-Fix-prog-leak-in-parseScript.patch
blob: fe0d78655e42a536292bb0f0924b5006d22ea0a9 (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
34
35
From c013821c0c9350b67d9f9a02848e1a7f87fa180b Mon Sep 17 00:00:00 2001
From: xujing <xujing125@huawei.com>
Date: Fri, 25 Nov 2022 17:04:11 +0800
Subject: [PATCH 2/5] Fix prog leak in parseScript

The "prog" will be alloced when using "-p" options, which cause src
"proc" leak. Add "origproc" to point to src "proc" to fix it.
---
 build/parseScript.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/build/parseScript.c b/build/parseScript.c
index df7919238..f8b693ac6 100644
--- a/build/parseScript.c
+++ b/build/parseScript.c
@@ -102,6 +102,7 @@ int parseScript(rpmSpec spec, int parsePart)
     poptContext optCon = NULL;
     char *name = NULL;
     char *prog = xstrdup("/bin/sh");
+    char *origprog = prog;
     char *file = NULL;
     int priority = 1000000;
     struct poptOption optionsTable[] = {
@@ -482,6 +483,8 @@ exit:
     free(reqargs);
     freeStringBuf(sb);
     free(progArgv);
+    if (origprog != prog)
+	free(origprog);
     free(prog);
     free(name);
     free(file);
-- 
2.27.0