From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:39692) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R4Kis-0001kQ-48 for qemu-devel@nongnu.org; Thu, 15 Sep 2011 18:47:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R4Kir-0003mj-8V for qemu-devel@nongnu.org; Thu, 15 Sep 2011 18:47:58 -0400 Received: from fmmailgate01.web.de ([217.72.192.221]:33590) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R4Kiq-0003mf-Tq for qemu-devel@nongnu.org; Thu, 15 Sep 2011 18:47:57 -0400 Message-ID: <4E72809B.8000209@web.de> Date: Fri, 16 Sep 2011 00:47:55 +0200 From: Jan Kiszka MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Sender: jan.kiszka@web.de Subject: [Qemu-devel] [PATCH] vga: Fix text mode screendumps List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori , qemu-devel Cc: Andriy Gapon From: Jan Kiszka In text mode, even a full refresh of the screen takes multiple updates. As we reset the dump file pointer after the first call, we only wrote the first line. Signed-off-by: Jan Kiszka --- hw/vga.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/vga.c b/hw/vga.c index 0a0c5a6..f9a6014 100644 --- a/hw/vga.c +++ b/hw/vga.c @@ -149,7 +149,7 @@ static uint16_t expand2[256]; static uint8_t expand4to8[16]; static void vga_screen_dump(void *opaque, const char *filename); -static char *screen_dump_filename; +static const char *screen_dump_filename; static DisplayChangeListener *screen_dump_dcl; static void vga_update_memory_access(VGACommonState *s) @@ -2319,7 +2319,6 @@ static void vga_save_dpy_update(DisplayState *ds, { if (screen_dump_filename) { ppm_save(screen_dump_filename, ds->surface); - screen_dump_filename = NULL; } } @@ -2397,8 +2396,8 @@ static void vga_screen_dump(void *opaque, const char *filename) if (!screen_dump_dcl) screen_dump_dcl = vga_screen_dump_init(s->ds); - screen_dump_filename = (char *)filename; + screen_dump_filename = filename; vga_invalidate_display(s); vga_hw_update(); + screen_dump_filename = NULL; } -