svn commit: trunk/busybox/shell: ash_test ash_test/ash-misc
vda at busybox.net
vda at busybox.net
Wed Jul 30 15:35:06 UTC 2008
Author: vda
Date: 2008-07-30 08:35:05 -0700 (Wed, 30 Jul 2008)
New Revision: 22990
Log:
ash: bash compat: "shift $BIGNUM" is equivalent to "shift 1"
Added:
trunk/busybox/shell/ash_test/ash-misc/
trunk/busybox/shell/ash_test/ash-misc/shift1.right
trunk/busybox/shell/ash_test/ash-misc/shift1.tests
Modified:
trunk/busybox/shell/ash.c
Changeset:
Modified: trunk/busybox/shell/ash.c
===================================================================
--- trunk/busybox/shell/ash.c 2008-07-29 19:48:30 UTC (rev 22989)
+++ trunk/busybox/shell/ash.c 2008-07-30 15:35:05 UTC (rev 22990)
@@ -9665,7 +9665,7 @@
if (argv[1])
n = number(argv[1]);
if (n > shellparam.nparam)
- n = shellparam.nparam;
+ n = 0; /* bash compat, was = shellparam.nparam; */
INT_OFF;
shellparam.nparam -= n;
for (ap1 = shellparam.p; --n >= 0; ap1++) {
Added: trunk/busybox/shell/ash_test/ash-misc/shift1.right
===================================================================
--- trunk/busybox/shell/ash_test/ash-misc/shift1.right (rev 0)
+++ trunk/busybox/shell/ash_test/ash-misc/shift1.right 2008-07-30 15:35:05 UTC (rev 22990)
@@ -0,0 +1,9 @@
+2 3 4
+0: shift: line 1: Illegal number: -1
+1 2 3 4
+2 3 4
+3 4
+4
+
+1 2 3 4
+1 2 3 4
Added: trunk/busybox/shell/ash_test/ash-misc/shift1.tests
===================================================================
--- trunk/busybox/shell/ash_test/ash-misc/shift1.tests (rev 0)
+++ trunk/busybox/shell/ash_test/ash-misc/shift1.tests 2008-07-30 15:35:05 UTC (rev 22990)
@@ -0,0 +1,10 @@
+$THIS_SH -c 'shift; echo "$@"' 0 1 2 3 4
+#We do abort on -1, but then we abort. bash executes echo.
+$THIS_SH -c 'shift -1; echo "$@"' 0 1 2 3 4
+$THIS_SH -c 'shift 0; echo "$@"' 0 1 2 3 4
+$THIS_SH -c 'shift 1; echo "$@"' 0 1 2 3 4
+$THIS_SH -c 'shift 2; echo "$@"' 0 1 2 3 4
+$THIS_SH -c 'shift 3; echo "$@"' 0 1 2 3 4
+$THIS_SH -c 'shift 4; echo "$@"' 0 1 2 3 4
+$THIS_SH -c 'shift 5; echo "$@"' 0 1 2 3 4
+$THIS_SH -c 'shift 6; echo "$@"' 0 1 2 3 4
Property changes on: trunk/busybox/shell/ash_test/ash-misc/shift1.tests
___________________________________________________________________
Name: svn:executable
+ *
More information about the busybox-cvs
mailing list