Re: Introducing a poweroff(8) command
From: Stefan Farfeleder (stefanf_at_FreeBSD.org)
Date: 08/23/04
- Previous message: Pawel Jakub Dawidek: "Re: Mounting root..."
- In reply to: John Baldwin: "Re: Introducing a poweroff(8) command"
- Next in thread: John Baldwin: "Re: Introducing a poweroff(8) command"
- Reply: John Baldwin: "Re: Introducing a poweroff(8) command"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Mon, 23 Aug 2004 23:09:49 +0200 To: John Baldwin <jhb@FreeBSD.org>
On Mon, Aug 23, 2004 at 11:41:24AM -0400, John Baldwin wrote:
> On Saturday 21 August 2004 04:22 pm, Giorgos Keramidas wrote:
> > - if (strstr((p = rindex(*argv, '/')) ? p + 1 : *argv, "halt")) {
> > + p = rindex(*argv, '/') ? p + 1 : *argv;
> > + if (strcmp(p, "halt") == 0) {
>
> I think this is buggy in that p will point to the / character since you don't
> modify it in the second case. I.e. what you wrote is basically this:
>
> p = rindex(*argv, '/');
> if (p != NULL)
> p + 1; /* does nothing */
> else
> *argv; /* also does nothing */
No,
p = rindex(*argv, '/') ? p + 1 : *argv
is parsed as
p = (rindex(*argv, '/') ? p + 1 : *argv).
Your code is equivalent to
(p = rindex(*argv, '/')) ? p + 1 : *argv.
Cheers,
Stefan
_______________________________________________
freebsd-arch@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
- Previous message: Pawel Jakub Dawidek: "Re: Mounting root..."
- In reply to: John Baldwin: "Re: Introducing a poweroff(8) command"
- Next in thread: John Baldwin: "Re: Introducing a poweroff(8) command"
- Reply: John Baldwin: "Re: Introducing a poweroff(8) command"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|