[BusyBox 0006294]: expr overloads exitcode of 1 to mean several different things (mismatch with coreutils)
bugs at busybox.net
bugs at busybox.net
Wed Nov 12 22:16:41 UTC 2008
The following issue has been CLOSED
======================================================================
http://busybox.net/bugs/view.php?id=6294
======================================================================
Reported By: pgbovine
Assigned To: BusyBox
======================================================================
Project: BusyBox
Issue ID: 6294
Category: Standards Compliance
Reproducibility: always
Severity: major
Priority: normal
Status: closed
Resolution: open
Fixed in Version:
======================================================================
Date Submitted: 11-11-2008 13:55 PST
Last Modified: 11-12-2008 14:16 PST
======================================================================
Summary: expr overloads exitcode of 1 to mean several
different things (mismatch with coreutils)
Description:
>From 'info expr':
Exit status:
0 if the expression is neither null nor 0,
1 if the expression is null or 0,
2 if the expression is invalid,
3 if an internal error occurred (e.g., arithmetic overflow).
Busybox overloads exitcode 1 both to signify a successful exit with a
'false' value and to signify a syntax error. In contrast, coreutils uses a
special exit code 2 to signify a syntax error.
Coreutils:
$ expr '1' '<' '0'
0
$ echo $?
1
(this expression is valid and FALSE, so coreutils properly returns an
exitcode of 1)
$ expr '<' '0'
expr: syntax error
$ echo $?
2
(this expression is INVALID, so coreutils properly returns an exitcode of
2)
Busybox:
$ ./busybox expr '1' '<' '0'
0
$ echo $?
1
(so far, so good)
$ ./busybox expr '<' '0'
expr: syntax error
$ echo $?
1
(uh oh, should return exitcode of 2 here rather than 1.)
======================================================================
----------------------------------------------------------------------
vda - 11-11-08 14:37
----------------------------------------------------------------------
Please try attached 9.patch
----------------------------------------------------------------------
vda - 11-12-08 14:16
----------------------------------------------------------------------
Fixed in svn.
Issue History
Date Modified Username Field Change
======================================================================
11-11-08 13:55 pgbovine New Issue
11-11-08 13:55 pgbovine Status new => assigned
11-11-08 13:55 pgbovine Assigned To => BusyBox
11-11-08 14:37 vda File Added: 9.patch
11-11-08 14:37 vda Note Added: 0015474
11-12-08 14:16 vda Status assigned => closed
11-12-08 14:16 vda Note Added: 0015594
======================================================================
More information about the busybox-cvs
mailing list