[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v1 5/6] build: delay check for empty git submodule li
From: |
Daniel P. Berrange |
Subject: |
[Qemu-devel] [PULL v1 5/6] build: delay check for empty git submodule list |
Date: |
Tue, 7 Nov 2017 10:16:41 +0000 |
We short circuit the git submodule update when passed an empty module list.
This accidentally causes the 'status' command to write to the status file. The
test needs to be delayed into the individual commands to avoid this premature
writing of the status file.
Tested-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Daniel P. Berrange <address@hidden>
---
scripts/git-submodule.sh | 19 ++++++++++++-------
1 file changed, 12 insertions(+), 7 deletions(-)
diff --git a/scripts/git-submodule.sh b/scripts/git-submodule.sh
index 3683bc9a04..030617b4ac 100755
--- a/scripts/git-submodule.sh
+++ b/scripts/git-submodule.sh
@@ -33,12 +33,6 @@ error() {
exit 1
}
-if test -z "$maybe_modules"
-then
- test -e $substat || touch $substat
- exit 0
-fi
-
modules=""
for m in $maybe_modules
do
@@ -51,7 +45,7 @@ do
fi
done
-if ! test -e ".git"
+if test -n "$maybe_modules" && ! test -e ".git"
then
echo "$0: unexpectedly called with submodules but no git checkout exists"
exit 1
@@ -59,6 +53,11 @@ fi
case "$command" in
status)
+ if test -z "$maybe_modules"
+ then
+ test -s ${substat} && exit 1 || exit 0
+ fi
+
test -f "$substat" || exit 1
CURSTATUS=`$GIT submodule status $modules`
OLDSTATUS=`cat $substat`
@@ -66,6 +65,12 @@ status)
exit $?
;;
update)
+ if test -z "$maybe_modules"
+ then
+ test -e $substat || touch $substat
+ exit 0
+ fi
+
$GIT submodule update --init $modules 1>/dev/null
test $? -ne 0 && error "failed to update modules"
--
2.13.6
- [Qemu-devel] [PULL v1 0/6] Merge build 2017/11/07, Daniel P. Berrange, 2017/11/07
- [Qemu-devel] [PULL v1 3/6] build: allow automatic git submodule updates to be disabled, Daniel P. Berrange, 2017/11/07
- [Qemu-devel] [PULL v1 1/6] build: allow setting a custom GIT binary for transparent proxying, Daniel P. Berrange, 2017/11/07
- [Qemu-devel] [PULL v1 5/6] build: delay check for empty git submodule list,
Daniel P. Berrange <=
- [Qemu-devel] [PULL v1 2/6] build: don't create temporary files in source dir, Daniel P. Berrange, 2017/11/07
- [Qemu-devel] [PULL v1 6/6] build: remove use of MAKELEVEL optimization in submodule handling, Daniel P. Berrange, 2017/11/07
- [Qemu-devel] [PULL v1 4/6] build: don't fail if given a git submodule which does not exist, Daniel P. Berrange, 2017/11/07
- Re: [Qemu-devel] [PULL v1 0/6] Merge build 2017/11/07, Peter Maydell, 2017/11/07