https://bugs.openldap.org/show_bug.cgi?id=9209
--- Comment #13 from Howard Chu hyc@openldap.org --- (In reply to Ryan Tandy from comment #12)
The last commits fixed this for GNU which (/opt/csw/gnu/which), but not for the built-in which (/usr/bin/which), which prints its error message to stdout.
Running with set -x, test072 does this:
- which dsadm
- test ! no dsadm in /usr/xpg6/bin /usr/sfw/bin /usr/ccs/bin /usr/bin
/opt/csw/bin
- mkdir -p /export/home/ryan/openldap/tests/testrun
/export/home/ryan/openldap/tests/testrun/db.2.a
Sounds like a ridiculously broken "which". That test is checking the exit status of which, and it should be non-zero if the command wasn't found.