On (2002/11/12 16:37), Nate Lawson wrote:

> I've found an interesting contradiction and was wondering what behavior
> sleep should have.  It checks for a command line flag with getopt(3) and
> exits with usage() if it finds one.  However, it then checks for a '-' or
> '+' sign.  If negative, it behaves like "sleep 0" and exits
> immediately.  This case can almost never be triggered since the
> getopt(3) will catch the minus sign, even if a digit follows it.
> 
> Current behavior:
> sleep 0 = exits immediately
> sleep -1 = exits with usage()
> sleep -f = exits with usage()
> sleep "   -1" = exits immediately and is the only way I know to trigger
> the negative case.
> 
> What is the standard, desired behavior?

IEEE Std 1003.2-1992 says:

        time    A nonnegative decimal integer specifying the number of
                seconds for which to suspend execution.

I think it's pretty clear that negative time arguments to sleep(1) are
not portable.

Ciao,
Sheldon.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to