From c4fcfd8744f320635949d62ec0df4ea60ebe60e8 Mon Sep 17 00:00:00 2001 From: Vladimir Serbinenko Date: Mon, 26 Jan 2015 09:53:39 +0100 Subject: [PATCH] vbe: Fix incorrect register usage. Found by: Coverity scan. --- grub-core/video/i386/pc/vbe.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/grub-core/video/i386/pc/vbe.c b/grub-core/video/i386/pc/vbe.c index 62b5c2245..07a614a20 100644 --- a/grub-core/video/i386/pc/vbe.c +++ b/grub-core/video/i386/pc/vbe.c @@ -304,8 +304,7 @@ grub_vbe_bios_getset_dac_palette_width (int set, int *dac_mask_size) struct grub_bios_int_registers regs; regs.eax = 0x4f08; - regs.ebx = (*dac_mask_size & 0xff) >> 8; - regs.ebx = set ? 1 : 0; + regs.ebx = ((*dac_mask_size & 0xff) << 8) | (set ? 1 : 0); regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; grub_bios_interrupt (0x10, ®s); *dac_mask_size = (regs.ebx >> 8) & 0xff;