aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-06-06 19:10:43 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-06-07 08:52:13 +0100
commit23f15c63777020f5d43b070a1eb2bcf246c19ff8 (patch)
tree8fae447ce79f4f44503204e8e47ef374001f72a7
parent0a77f4b680332a692abf0231e397fab44c59bde3 (diff)
downloadopenembedded-core-contrib-23f15c63777020f5d43b070a1eb2bcf246c19ff8.tar.gz
openembedded-core-contrib-23f15c63777020f5d43b070a1eb2bcf246c19ff8.tar.bz2
openembedded-core-contrib-23f15c63777020f5d43b070a1eb2bcf246c19ff8.zip
rpm: Fix patch to ensure variables aren't used uninitialised
Recent patches were applied which removed a function which set the xx variable. This means xx can be uninitalised and prerm functions can fail. This adjusts the patch to ensure the xx value isn't used in such a way. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch16
1 files changed, 13 insertions, 3 deletions
diff --git a/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch b/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
index a38675f89c..bf24d43eb9 100644
--- a/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
@@ -6,6 +6,9 @@ Subject: [PATCH 1/2] Do not reset the PATH environment variable before running
We add lots of native stuff into it and scriptlets rely on that.
+Also need to remove the xx test later in the function since the
+value could now be used un-initialised.
+
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
@@ -25,6 +28,13 @@ index 92f949fa2..7c1aa75a8 100644
free(ipath);
}
---
-2.11.0
-
+@@ -206,9 +206,7 @@ static void doScriptExec(ARGV_const_t ar
+ /* XXX Don't mtrace into children. */
+ unsetenv("MALLOC_CHECK_");
+
+- if (xx == 0) {
+ xx = execv(argv[0], argv);
+- }
+ }
+ _exit(127); /* exit 127 for compatibility with bash(1) */
+ }