diff --git a/grub-core/loader/i386/bsd.c b/grub-core/loader/i386/bsd.c index b92cbe98d..84322830f 100644 --- a/grub-core/loader/i386/bsd.c +++ b/grub-core/loader/i386/bsd.c @@ -1605,7 +1605,7 @@ grub_cmd_openbsd (grub_extcmd_context_t ctxt, int argc, char *argv[]) kernel_type = KERNEL_TYPE_OPENBSD; bootflags = grub_bsd_parse_flags (ctxt->state, openbsd_flags); - if (ctxt->state[OPENBSD_ROOT_ARG].set) + if (ctxt->state[OPENBSD_ROOT_ARG].set && ctxt->state[OPENBSD_ROOT_ARG].arg != NULL) { const char *arg = ctxt->state[OPENBSD_ROOT_ARG].arg; unsigned type, unit, part; @@ -1622,7 +1622,7 @@ grub_cmd_openbsd (grub_extcmd_context_t ctxt, int argc, char *argv[]) "unknown disk type name"); unit = grub_strtoul (arg, (char **) &arg, 10); - if (! (arg && *arg >= 'a' && *arg <= 'z')) + if (! (*arg >= 'a' && *arg <= 'z')) return grub_error (GRUB_ERR_BAD_ARGUMENT, "only device specifications of form " " are supported");