From 77d4db015c99ce7083fd5b33f0c650176fe8bc98 Mon Sep 17 00:00:00 2001 From: Eduardo Habkost Date: Mon, 25 May 2009 18:20:05 -0300 Subject: [PATCH] Fix vga_screen_dump_blank() PPM generation vga_screen_dump_blank() was not generating a valid PPM file: the width of the image made no sense (why it was multiplied by sizeof(uint32_t)?), and there was only one sample per pixel, instead of three. Signed-off-by: Eduardo Habkost Signed-off-by: Anthony Liguori --- hw/vga.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/vga.c b/hw/vga.c index 97bf1b67a0..134ad1646d 100644 --- a/hw/vga.c +++ b/hw/vga.c @@ -2584,8 +2584,9 @@ static void vga_screen_dump_blank(VGAState *s, const char *filename) { FILE *f; unsigned int y, x, w, h; + unsigned char blank_sample[3] = { 0, 0, 0 }; - w = s->last_scr_width * sizeof(uint32_t); + w = s->last_scr_width; h = s->last_scr_height; f = fopen(filename, "wb"); @@ -2594,7 +2595,7 @@ static void vga_screen_dump_blank(VGAState *s, const char *filename) fprintf(f, "P6\n%d %d\n%d\n", w, h, 255); for (y = 0; y < h; y++) { for (x = 0; x < w; x++) { - fputc(0, f); + fwrite(blank_sample, 3, 1, f); } } fclose(f);