diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2012-02-24 12:43:45 +0100 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2012-02-24 13:36:05 -0600 |
commit | 45efb16124efef51de5157afc31984b5a47700f9 (patch) | |
tree | 3f391912a9c7d6172c3abf861bf2e56accdf8aae /hw/omap_lcdc.c | |
parent | 167351020420c285b67cdf0603501b3d3b15e3f7 (diff) |
optimize screendump for the common non-switch case
switch console only if needed, also pass down whenever the console was
switched or not because a displaysurface redraw is only needed in case
the console was switched.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'hw/omap_lcdc.c')
-rw-r--r-- | hw/omap_lcdc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/hw/omap_lcdc.c b/hw/omap_lcdc.c index f265306556..f172093876 100644 --- a/hw/omap_lcdc.c +++ b/hw/omap_lcdc.c @@ -264,9 +264,12 @@ static int ppm_save(const char *filename, uint8_t *data, return 0; } -static void omap_screen_dump(void *opaque, const char *filename) { +static void omap_screen_dump(void *opaque, const char *filename, bool cswitch) +{ struct omap_lcd_panel_s *omap_lcd = opaque; - omap_update_display(opaque); + if (cswitch) { + omap_update_display(opaque); + } if (omap_lcd && ds_get_data(omap_lcd->state)) ppm_save(filename, ds_get_data(omap_lcd->state), omap_lcd->width, omap_lcd->height, |