Hi, Looks good to me. I have committed it, but I put the comment before the calculation of flags. I also added a small comment about the issue into the code.
Thanks, Marcus At Wed, 23 Feb 2005 17:48:29 -0500, Ben Asselstine <[EMAIL PROTECTED]> wrote: > > * init.c (main): Only pass ARGP_NO_ERRS to argp_parse when invoked by > the bootstrap filesystem. > (flags): New variable. > > diff -u -N -r -p hurd.orig/init/init.c hurd/init/init.c > --- hurd.orig/init/init.c 2005-02-23 04:43:40.000000000 -0500 > +++ hurd/init/init.c 2005-02-23 09:44:36.000000000 -0500 > @@ -529,13 +529,18 @@ main (int argc, char **argv, char **envp > { > volatile int err; > int i; > + int flags; > mach_port_t consdev; > struct argp argp = { options, parse_opt, 0, doc }; > > + flags = ARGP_IN_ORDER; > + if (getpid () == 0) > + flags |= ARGP_NO_ERRS; > + > /* Parse the arguments. We don't want the vector reordered, > we should pass on to our child the exact arguments we got > and just ignore any arguments that aren't flags for us. */ > - argp_parse (&argp, argc, argv, ARGP_NO_ERRS|ARGP_IN_ORDER, 0, 0); > + argp_parse (&argp, argc, argv, flags, 0, 0); > > if (getpid () > 0) > error (2, 0, "can only be run by bootstrap filesystem"); > _______________________________________________ Bug-hurd mailing list Bug-hurd@gnu.org http://lists.gnu.org/mailman/listinfo/bug-hurd