[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] ioemu: Fall back to SDL rendering when GLX fails.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1206702943 0 # Node ID abae878a65f47deca68189c719fca5506326cda1 # Parent 50efc4b3ffdb7996ab58a4cb6d4d48fed197454f ioemu: Fall back to SDL rendering when GLX fails. From: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx> --- tools/ioemu/sdl.c | 33 ++++++++++++++++++++++----------- 1 files changed, 22 insertions(+), 11 deletions(-) diff -r 50efc4b3ffdb -r abae878a65f4 tools/ioemu/sdl.c --- a/tools/ioemu/sdl.c Fri Mar 28 09:50:50 2008 +0000 +++ b/tools/ioemu/sdl.c Fri Mar 28 11:15:43 2008 +0000 @@ -210,21 +210,32 @@ static void sdl_resize(DisplayState *ds, again: screen = SDL_SetVideoMode(w, h, 0, flags); -#ifndef CONFIG_OPENGL + if (!screen) { fprintf(stderr, "Could not open SDL display: %s\n", SDL_GetError()); + if (opengl_enabled) { + /* Fallback to SDL */ + opengl_enabled = 0; + ds->dpy_update = sdl_update; + ds->dpy_setdata = sdl_setdata; + sdl_resize(ds, w, h, linesize); + return; + } exit(1); } - if (!screen->pixels && (flags & SDL_HWSURFACE) && (flags & SDL_FULLSCREEN)) { - flags &= ~SDL_HWSURFACE; - goto again; - } - - if (!screen->pixels) { - fprintf(stderr, "Could not open SDL display: %s\n", SDL_GetError()); - exit(1); - } -#endif + + if (!opengl_enabled) { + if (!screen->pixels && (flags & SDL_HWSURFACE) && (flags & SDL_FULLSCREEN)) { + flags &= ~SDL_HWSURFACE; + goto again; + } + + if (!screen->pixels) { + fprintf(stderr, "Could not open SDL display: %s\n", SDL_GetError()); + exit(1); + } + } + ds->width = w; ds->height = h; if (!ds->shared_buf) { _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |