cirrus_vga: also assign gr0/1 when writting shadow_gr0/1
authorJuan Quintela <quintela@redhat.com>
Mon, 21 Sep 2009 12:35:17 +0000 (14:35 +0200)
committerAnthony Liguori <aliguori@us.ibm.com>
Mon, 5 Oct 2009 14:32:36 +0000 (09:32 -0500)
This is a regression/bug caused by previous vga_cleanup.  This fixes
Ubuntu installer reported by:
 Pierre Riteau

Signed-off-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
hw/cirrus_vga.c

index 7e95f10..ae4be82 100644 (file)
@@ -1490,9 +1490,11 @@ cirrus_vga_write_gr(CirrusVGAState * s, unsigned reg_index, int reg_value)
 #endif
     switch (reg_index) {
     case 0x00:                 // Standard VGA, BGCOLOR 0x000000ff
+       s->vga.gr[reg_index] = reg_value & gr_mask[reg_index];
        s->cirrus_shadow_gr0 = reg_value;
        break;
     case 0x01:                 // Standard VGA, FGCOLOR 0x000000ff
+       s->vga.gr[reg_index] = reg_value & gr_mask[reg_index];
        s->cirrus_shadow_gr1 = reg_value;
        break;
     case 0x02:                 // Standard VGA