Get rid of a spurious warning on the console when booting the kernel
from the interactive loader(8) prompt and beastie_disable="YES" is set in loader.conf(5). In this case menu.rc is not evaluated and consequently menu-unset does not have a body yet. This results in the ficl warning "menu-unset not found" when try-menu-unset invokes menu-unset. Check for beastie_disable="YES" explicitly, so that the try-menu-unset word will not attempt to invoke menu-unset because the menu will have never been configured. [1] Use the sfind primitive as a last resort as an additional safer approach conjuring a foreign word safely. [2] PR: kern/163938 Submitted by: Devin Teske [1] Reviewed by: Devin Teske [2] Reported and tested by: dim MFC after: 1 week X-MFC with: r228985
This commit is contained in:
parent
0577b44f73
commit
b714ea6bf9
@ -44,9 +44,20 @@ include /boot/support.4th
|
||||
only forth also support-functions also builtins definitions
|
||||
|
||||
: try-menu-unset
|
||||
\ menu-unset may not be present
|
||||
s" beastie_disable" getenv
|
||||
dup -1 <> if
|
||||
s" YES" compare-insensitive 0= if
|
||||
exit
|
||||
then
|
||||
else
|
||||
drop
|
||||
then
|
||||
s" menu-unset"
|
||||
['] evaluate catch if
|
||||
2drop
|
||||
sfind if
|
||||
execute
|
||||
else
|
||||
drop
|
||||
then
|
||||
;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user