Re: [GUILT v2 26/29] "guilt pop" now fails when there are no more patches to pop.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Josef 'Jeff' Sipek <jeffpc@xxxxxxxxxxxxxx>

On Tue, May 13, 2014 at 10:31:02PM +0200, Per Cederqvist wrote:
> This is analogous to how "guilt push" now fails when there are no more
> patches to push.  Like push, the "--all" argument still succeeds even
> if there was no need to pop anything.
> 
> Updated the test suite.
> 
> Signed-off-by: Per Cederqvist <cederp@xxxxxxxxx>
> ---
>  guilt-pop            | 17 +++++++++++------
>  regression/t-021.out |  2 ++
>  regression/t-021.sh  |  6 ++++++
>  regression/t-061.sh  |  6 +++++-
>  4 files changed, 24 insertions(+), 7 deletions(-)
> 
> diff --git a/guilt-pop b/guilt-pop
> index f0e647f..191313e 100755
> --- a/guilt-pop
> +++ b/guilt-pop
> @@ -49,9 +49,19 @@ fi
>  patch="$1"
>  [ ! -z "$all" ] && patch="-a"
>  
> +# Treat "guilt pop" as "guilt pop -n 1".
> +if [ -z "$patch" ]; then
> +	patch=1
> +	num=t
> +fi
> +
>  if [ ! -s "$applied" ]; then
>  	disp "No patches applied."
> -	exit 0
> +	if [ "$patch" = "-a" ]; then
> +		exit 0
> +	else
> +		exit 1
> +	fi
>  elif [ "$patch" = "-a" ]; then
>  	# we are supposed to pop all patches
>  
> @@ -68,11 +78,6 @@ elif [ ! -z "$num" ]; then
>  	# catch underflow
>  	[ $eidx -lt 0 ] && eidx=0
>  	[ $eidx -eq $sidx ] && die "No patches requested to be removed."
> -elif [ -z "$patch" ]; then
> -	# we are supposed to pop only the current patch on the stack
> -
> -	sidx=`wc -l < "$applied"`
> -	eidx=`expr $sidx - 1`
>  else
>  	# we're supposed to pop only up to a patch, make sure the patch is
>  	# in the series
> diff --git a/regression/t-021.out b/regression/t-021.out
> index 9b42d9c..58be12f 100644
> --- a/regression/t-021.out
> +++ b/regression/t-021.out
> @@ -287,6 +287,8 @@ index 0000000..8baef1b
>  +++ b/def
>  @@ -0,0 +1 @@
>  +abc
> +% guilt pop
> +No patches applied.
>  % guilt push --all
>  Applying patch..modify
>  Patch applied.
> diff --git a/regression/t-021.sh b/regression/t-021.sh
> index 614e870..e0d2dc1 100755
> --- a/regression/t-021.sh
> +++ b/regression/t-021.sh
> @@ -23,6 +23,12 @@ guilt series | _tac | while read n ; do
>  done
>  
>  #
> +# pop when there is nothing to pop
> +#
> +
> +shouldfail guilt pop
> +
> +#
>  # push all
>  #
>  cmd guilt push --all
> diff --git a/regression/t-061.sh b/regression/t-061.sh
> index 1411baa..6192f1b 100755
> --- a/regression/t-061.sh
> +++ b/regression/t-061.sh
> @@ -48,7 +48,11 @@ cmd list_files
>  
>  for i in `seq 5`
>  do
> -	cmd guilt pop
> +	if [ $i -ge 5 ]; then
> +		shouldfail guilt pop
> +	else
> +		cmd guilt pop
> +	fi
>  	cmd git for-each-ref
>  	cmd guilt push
>  	cmd git for-each-ref
> -- 
> 1.8.3.1
> 

-- 
Linux, n.:
  Generous programmers from around the world all join forces to help
  you shoot yourself in the foot for free. 
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]