Commit 5228c2d3b40d976f451831a8a8b3092c37f44747

Authored by balrog
1 parent 29885477

Force a resize after leaving graphical mode in curses (spotted by Samuel Thibault).


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3978 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 8 additions and 7 deletions
hw/vga.c
@@ -1674,8 +1674,7 @@ static void vga_update_text(void *opaque, console_ch_t *chardata) @@ -1674,8 +1674,7 @@ static void vga_update_text(void *opaque, console_ch_t *chardata)
1674 uint32_t *src; 1674 uint32_t *src;
1675 console_ch_t *dst, val; 1675 console_ch_t *dst, val;
1676 char msg_buffer[80]; 1676 char msg_buffer[80];
1677 - int full_update;  
1678 - full_update = 0; 1677 + int full_update = 0;
1679 1678
1680 if (!(s->ar_index & 0x20)) { 1679 if (!(s->ar_index & 0x20)) {
1681 graphic_mode = GMODE_BLANK; 1680 graphic_mode = GMODE_BLANK;
@@ -1804,19 +1803,21 @@ static void vga_update_text(void *opaque, console_ch_t *chardata) @@ -1804,19 +1803,21 @@ static void vga_update_text(void *opaque, console_ch_t *chardata)
1804 } 1803 }
1805 1804
1806 /* Display a message */ 1805 /* Display a message */
  1806 + s->last_width = 60;
  1807 + s->last_height = height = 3;
1807 dpy_cursor(s->ds, -1, -1); 1808 dpy_cursor(s->ds, -1, -1);
1808 - dpy_resize(s->ds, 60, 3); 1809 + dpy_resize(s->ds, s->last_width, height);
1809 1810
1810 - for (dst = chardata, i = 0; i < 60 * 3; i ++) 1811 + for (dst = chardata, i = 0; i < s->last_width * height; i ++)
1811 console_write_ch(dst ++, ' '); 1812 console_write_ch(dst ++, ' ');
1812 1813
1813 size = strlen(msg_buffer); 1814 size = strlen(msg_buffer);
1814 - width = (60 - size) / 2;  
1815 - dst = chardata + 60 + width; 1815 + width = (s->last_width - size) / 2;
  1816 + dst = chardata + s->last_width + width;
1816 for (i = 0; i < size; i ++) 1817 for (i = 0; i < size; i ++)
1817 console_write_ch(dst ++, 0x00200100 | msg_buffer[i]); 1818 console_write_ch(dst ++, 0x00200100 | msg_buffer[i]);
1818 1819
1819 - dpy_update(s->ds, 0, 0, 60, 3); 1820 + dpy_update(s->ds, 0, 0, s->last_width, height);
1820 } 1821 }
1821 1822
1822 static CPUReadMemoryFunc *vga_mem_read[3] = { 1823 static CPUReadMemoryFunc *vga_mem_read[3] = {