Browse Source

scripts/patch.sh: apply patches in a loop instead of a single `git am` command

Using a loop makes the script a bit nicer, and it works around a git bug
corrupting patch dates when multiple patches are applied at once.
Matthias Schiffer 8 years ago
parent
commit
0f91fa6fa8
1 changed files with 5 additions and 5 deletions
  1. 5 5
      scripts/patch.sh

+ 5 - 5
scripts/patch.sh

@@ -9,13 +9,13 @@ for module in $GLUON_MODULES; do
 	cd "$GLUONDIR"/$module
 	git checkout -B patching base
 
-	if [ "$(echo "$GLUONDIR"/patches/$module/*.patch)" ]; then
-		git -c user.name='Gluon Patch Manager' -c user.email='gluon@void.example.com' am --whitespace=nowarn "$GLUONDIR"/patches/$module/*.patch || (
+	for patch in "$GLUONDIR"/patches/$module/*.patch; do
+		if ! git -c user.name='Gluon Patch Manager' -c user.email='gluon@void.example.com' am --whitespace=nowarn "$patch"; then
 			git am --abort
 			git checkout patched
 			git branch -D patching
-			false
-		)
-	fi
+			exit 1
+		fi
+	done
 	git branch -M patched
 done