diff options
author | prlw1 <prlw1@pkgsrc.org> | 2013-09-16 10:48:04 +0000 |
---|---|---|
committer | prlw1 <prlw1@pkgsrc.org> | 2013-09-16 10:48:04 +0000 |
commit | 4b971a2e7981a5a7e5646381f43ebadc6f4899e0 (patch) | |
tree | 1103866641dbbe941e5a2e1001b3f5835b335406 /devel | |
parent | 55faecc79e4a96933d81af2a20f8b86ffdf18a7b (diff) | |
download | pkgsrc-4b971a2e7981a5a7e5646381f43ebadc6f4899e0.tar.gz |
Apply fix for rebase from Matthieu Moy in
https://github.com/git/git/commit/99855dd
Reported Sergey Svishchev.
Diffstat (limited to 'devel')
-rw-r--r-- | devel/git-base/Makefile | 3 | ||||
-rw-r--r-- | devel/git-base/distinfo | 3 | ||||
-rw-r--r-- | devel/git-base/patches/patch-git-rebase.sh | 41 |
3 files changed, 45 insertions, 2 deletions
diff --git a/devel/git-base/Makefile b/devel/git-base/Makefile index 1a5f2c52acf..d521905d6bf 100644 --- a/devel/git-base/Makefile +++ b/devel/git-base/Makefile @@ -1,8 +1,9 @@ -# $NetBSD: Makefile,v 1.3 2013/09/11 01:26:00 obache Exp $ +# $NetBSD: Makefile,v 1.4 2013/09/16 10:48:04 prlw1 Exp $ .include "../../devel/git/Makefile.common" PKGNAME= git-base-${GIT_VERSION} +PKGREVISION= 1 COMMENT= GIT Tree History Storage Tool (base package) CONFLICTS+= scmgit-base-[0-9]* diff --git a/devel/git-base/distinfo b/devel/git-base/distinfo index ffb60812aee..741b78427b0 100644 --- a/devel/git-base/distinfo +++ b/devel/git-base/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.1 2013/09/09 13:54:44 wiz Exp $ +$NetBSD: distinfo,v 1.2 2013/09/16 10:48:04 prlw1 Exp $ SHA1 (git-1.8.4.tar.gz) = 2a361a2d185b8bc604f7f2ce2f502d0dea9d3279 RMD160 (git-1.8.4.tar.gz) = 546720ff4234e0aec4867a81c7fba3130ccae397 @@ -11,4 +11,5 @@ SHA1 (patch-ag) = 4f0b9a5745203ea7ef369c8272b3ea7c644762f0 SHA1 (patch-ah) = f22a2160631fb624e9e20616c68ad1a4aa2bebc7 SHA1 (patch-ai) = 56b63d4790a11f5eb128186ad5efdd1bcf102f2e SHA1 (patch-config.mak.uname) = e7fa7a91d4d9dd6793d752b1833f97fcaea236b1 +SHA1 (patch-git-rebase.sh) = a3f79687011ff82766925893a03526d925218f5d SHA1 (patch-wrapper.c) = d8252c63cca9a134fca3f8f6f28663f563c7b4bc diff --git a/devel/git-base/patches/patch-git-rebase.sh b/devel/git-base/patches/patch-git-rebase.sh new file mode 100644 index 00000000000..1ca683b6db4 --- /dev/null +++ b/devel/git-base/patches/patch-git-rebase.sh @@ -0,0 +1,41 @@ +$NetBSD: patch-git-rebase.sh,v 1.1 2013/09/16 10:48:05 prlw1 Exp $ + +Rebase: fix run_specific_rebase's use of "return" on FreeBSD + +Since a1549e1, git-rebase--am.sh uses the shell's "return" statement, to +mean "return from the current file inclusion", which is POSIXly correct, +but badly interpreted on FreeBSD, which returns from the current +function, hence skips the finish_rebase statement that follows the file +inclusion. + +Make the use of "return" portable by using the file inclusion as the last +statement of a function. + +https://github.com/git/git/commit/99855dd + +--- git-rebase.sh.orig 2013-08-23 19:38:43.000000000 +0000 ++++ git-rebase.sh +@@ -167,13 +167,22 @@ You can run "git stash pop" or "git stas + rm -rf "$state_dir" + } + +-run_specific_rebase () { ++run_specific_rebase_internal () { + if [ "$interactive_rebase" = implied ]; then + GIT_EDITOR=: + export GIT_EDITOR + autosquash= + fi ++ # On FreeBSD, the shell's "return" returns from the current ++ # function, not from the current file inclusion. ++ # run_specific_rebase_internal has the file inclusion as a ++ # last statement, so POSIX and FreeBSD's return will do the ++ # same thing. + . git-rebase--$type ++} ++ ++run_specific_rebase () { ++ run_specific_rebase_internal + ret=$? + if test $ret -eq 0 + then |