configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
If there are less than 2 arguments in version_ge(), the second
'shift' prints this error:
../configure: line 232: shift: shift count out of range
Let's skip it if there are no more arguments.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
---
v2:
- do not shift if there are no more arguments [Peter]
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index 4e5fe33211..5f5f370e2c 100755
--- a/configure
+++ b/configure
@@ -229,7 +229,7 @@ version_ge () {
set x $local_ver1
local_first=${2-0}
# shift 2 does nothing if there are less than 2 arguments
- shift; shift
+ shift; test $# -gt 0 && shift
local_ver1=$*
set x $local_ver2
# the second argument finished, the first must be greater or equal
--
2.26.2
On 8/21/20 6:33 PM, Stefano Garzarella wrote:
> If there are less than 2 arguments in version_ge(), the second
> 'shift' prints this error:
> ../configure: line 232: shift: shift count out of range
>
> Let's skip it if there are no more arguments.
>
> Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
> ---
> v2:
> - do not shift if there are no more arguments [Peter]
> ---
> configure | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/configure b/configure
> index 4e5fe33211..5f5f370e2c 100755
> --- a/configure
> +++ b/configure
> @@ -229,7 +229,7 @@ version_ge () {
> set x $local_ver1
> local_first=${2-0}
> # shift 2 does nothing if there are less than 2 arguments
> - shift; shift
> + shift; test $# -gt 0 && shift
> local_ver1=$*
> set x $local_ver2
> # the second argument finished, the first must be greater or equal
>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
On 8/21/20 11:33 AM, Stefano Garzarella wrote:
> If there are less than 2 arguments in version_ge(), the second
> 'shift' prints this error:
> ../configure: line 232: shift: shift count out of range
>
> Let's skip it if there are no more arguments.
>
> Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
> ---
> v2:
> - do not shift if there are no more arguments [Peter]
> ---
> configure | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/configure b/configure
> index 4e5fe33211..5f5f370e2c 100755
> --- a/configure
> +++ b/configure
> @@ -229,7 +229,7 @@ version_ge () {
> set x $local_ver1
> local_first=${2-0}
> # shift 2 does nothing if there are less than 2 arguments
> - shift; shift
> + shift; test $# -gt 0 && shift
That works. Or you could go with the shorter one-liner:
shift ${2:+2}
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
On Fri, Aug 21, 2020 at 01:18:54PM -0500, Eric Blake wrote:
> On 8/21/20 11:33 AM, Stefano Garzarella wrote:
> > If there are less than 2 arguments in version_ge(), the second
> > 'shift' prints this error:
> > ../configure: line 232: shift: shift count out of range
> >
> > Let's skip it if there are no more arguments.
> >
> > Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
> > ---
> > v2:
> > - do not shift if there are no more arguments [Peter]
> > ---
> > configure | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/configure b/configure
> > index 4e5fe33211..5f5f370e2c 100755
> > --- a/configure
> > +++ b/configure
> > @@ -229,7 +229,7 @@ version_ge () {
> > set x $local_ver1
> > local_first=${2-0}
> > # shift 2 does nothing if there are less than 2 arguments
> > - shift; shift
> > + shift; test $# -gt 0 && shift
>
>
> That works. Or you could go with the shorter one-liner:
>
> shift ${2:+2}
yeah, it is better!
I'll send v3.
Thanks,
Stefano
© 2016 - 2026 Red Hat, Inc.