From ffe8b821a1ac7d3318b00004e37f13615ff60a9f Mon Sep 17 00:00:00 2001 From: Jes Sorensen Date: Wed, 16 Mar 2011 13:33:30 +0100 Subject: Consolidate DisplaySurface allocation in qemu_alloc_display() This removes various code duplication from console.e and sdl.c Signed-off-by: Jes Sorensen Signed-off-by: Anthony Liguori --- ui/sdl.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) (limited to 'ui/sdl.c') diff --git a/ui/sdl.c b/ui/sdl.c index 47ac49c993..c5bb0a3705 100644 --- a/ui/sdl.c +++ b/ui/sdl.c @@ -176,22 +176,18 @@ static DisplaySurface* sdl_create_displaysurface(int width, int height) surface->width = width; surface->height = height; - + if (scaling_active) { + int linesize; + PixelFormat pf; if (host_format.BytesPerPixel != 2 && host_format.BytesPerPixel != 4) { - surface->linesize = width * 4; - surface->pf = qemu_default_pixelformat(32); + linesize = width * 4; + pf = qemu_default_pixelformat(32); } else { - surface->linesize = width * host_format.BytesPerPixel; - surface->pf = sdl_to_qemu_pixelformat(&host_format); + linesize = width * host_format.BytesPerPixel; + pf = sdl_to_qemu_pixelformat(&host_format); } -#ifdef HOST_WORDS_BIGENDIAN - surface->flags = QEMU_ALLOCATED_FLAG | QEMU_BIG_ENDIAN_FLAG; -#else - surface->flags = QEMU_ALLOCATED_FLAG; -#endif - surface->data = (uint8_t*) qemu_mallocz(surface->linesize * surface->height); - + qemu_alloc_display(surface, width, height, linesize, pf, 0); return surface; } -- cgit v1.2.3-55-g7522