[oe-commits] Richard Purdie : sstate: Fix incorrect return value handling

git at git.openembedded.org git at git.openembedded.org
Tue Sep 16 21:15:54 UTC 2014


Module: openembedded-core.git
Branch: master
Commit: 75040a098e11927e6872e3a2a6286fe3ed0c7f47
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=75040a098e11927e6872e3a2a6286fe3ed0c7f47

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Fri Sep 12 16:39:16 2014 +0100

sstate: Fix incorrect return value handling

The use of [ and && here means $? is reset and the exit 1 error
interception wasn't working, leading to "file changed as we read it"
errors from sstate_create_package when heavily using hardlinks.

Fix this by placing $? into a variable.

(From OE-Core rev: 6e51f900b76b06c09a3d6927f8db7398e2c035ed)

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/sstate.bbclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 67e0c1d..2d8db57 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -599,7 +599,8 @@ sstate_create_package () {
 	if [ "$(ls -A)" ]; then
 		set +e
 		tar -czf $TFILE *
-		if [ $? -ne 0 ] && [ $? -ne 1 ]; then
+		ret=$?
+		if [ $ret -ne 0 ] && [ $ret -ne 1 ]; then
 			exit 1
 		fi
 		set -e



More information about the Openembedded-commits mailing list