--- trunk/grubby/grubby.c 2012/10/01 12:39:50 1940 +++ trunk/grubby/grubby.c 2013/02/20 14:00:54 2052 @@ -1773,10 +1773,14 @@ /* check all the lines matching checkType */ for (line = entry->lines; line; line = line->next) { - line = getLineByType(entry->multiboot && checkType == LT_KERNEL - ? LT_KERNEL|LT_KERNEL_EFI|LT_MBMODULE|LT_HYPER - : checkType, line); - if (!line) break; /* not found in this entry */ + enum lineType_e ct = checkType; + if (entry->multiboot && checkType == LT_KERNEL) + ct = LT_KERNEL|LT_KERNEL_EFI|LT_MBMODULE|LT_HYPER; + else if (checkType & LT_KERNEL) + ct = checkType | LT_KERNEL_EFI; + line = getLineByType(ct, line); + if (!line) + break; /* not found in this entry */ if (line && line->type != LT_MENUENTRY && line->numElements >= 2) {