on 16/09/2011 01:47 Jan Kiszka said the following: > From: Jan Kiszka <jan.kis...@siemens.com> > > 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.
Thank you very much! I can confirm that with the patch I get a complete screen dump. > Signed-off-by: Jan Kiszka <jan.kis...@siemens.com> > --- > 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; > } > - -- Andriy Gapon