zfsboot: honor -q if it's present in boot.config
Before r228267 the option was honored but the original content of boot.config was not preserved. I tried to fix that but missed the idea. Now the proper way of doing things is taken from i386/boo2. Also, a comment is added to explain this a little bit unobvious behavior. Inspired by: jhb MFC after: 5 days
This commit is contained in:
parent
70742a1dd8
commit
5f4b7b5e72
@ -93,6 +93,7 @@ static const char *const dev_nm[NDEV] = {"ad", "da", "fd"};
|
||||
static const unsigned char dev_maj[NDEV] = {30, 4, 2};
|
||||
|
||||
static char cmd[512];
|
||||
static char cmddup[512];
|
||||
static char kname[1024];
|
||||
static int comspeed = SIOSPD;
|
||||
static struct bootinfo bootinfo;
|
||||
@ -541,10 +542,15 @@ main(void)
|
||||
}
|
||||
|
||||
if (*cmd) {
|
||||
if (!OPT_CHECK(RBX_QUIET))
|
||||
printf("%s: %s", PATH_CONFIG, cmd);
|
||||
/*
|
||||
* Note that parse() is destructive to cmd[] and we also want
|
||||
* to honor RBX_QUIET option that could be present in cmd[].
|
||||
*/
|
||||
memcpy(cmddup, cmd, sizeof(cmd));
|
||||
if (parse())
|
||||
autoboot = 0;
|
||||
if (!OPT_CHECK(RBX_QUIET))
|
||||
printf("%s: %s", PATH_CONFIG, cmddup);
|
||||
/* Do not process this command twice */
|
||||
*cmd = 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user