[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] ioemu: fix sdl opengl rendering



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1205935997 0
# Node ID 7d8892a90c9020f7ff8742edab33a6bf7afa7026
# Parent  3e5973ab442afd508dce6d0ffc9d0fff5631e4c5
ioemu: fix sdl opengl rendering
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
---
 tools/ioemu/sdl.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff -r 3e5973ab442a -r 7d8892a90c90 tools/ioemu/sdl.c
--- a/tools/ioemu/sdl.c Wed Mar 19 14:12:12 2008 +0000
+++ b/tools/ioemu/sdl.c Wed Mar 19 14:13:17 2008 +0000
@@ -110,7 +110,7 @@ static void opengl_setdata(DisplayState 
             glPixelStorei (GL_UNPACK_ALIGNMENT, 4);
             break;
     }   
-    glPixelStorei(GL_UNPACK_ROW_LENGTH, (ds->linesize * 8 / ds->depth) - 
ds->width);
+    glPixelStorei(GL_UNPACK_ROW_LENGTH, (ds->linesize * 8) / ds->depth);
     glTexImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, gl_format, ds->width, 
ds->height, 0, tex_format, tex_type, pixels);
     glTexParameterf(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_PRIORITY, 1.0);
     glTexParameteri(GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MIN_FILTER, 
GL_LINEAR);
@@ -125,7 +125,7 @@ static void opengl_update(DisplayState *
     int bpp = ds->depth / 8;
     GLvoid *pixels = ds->data + y * ds->linesize + x * bpp;
     glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texture_ref);
-    glPixelStorei(GL_UNPACK_ROW_LENGTH, (ds->linesize / bpp) - w);
+    glPixelStorei(GL_UNPACK_ROW_LENGTH, ds->linesize / bpp);
     glTexSubImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, x, y, w, h, tex_format, 
tex_type, pixels);
     glBegin(GL_QUADS);
         glTexCoord2d(0, 0);
@@ -476,7 +476,8 @@ static void toggle_full_screen(DisplaySt
 static void toggle_full_screen(DisplayState *ds)
 {
     gui_fullscreen = !gui_fullscreen;
-    sdl_resize(ds, screen->w, screen->h, ds->linesize);
+    sdl_resize(ds, ds->width, ds->height, ds->linesize);
+    ds->dpy_setdata(ds, ds->data);
     if (gui_fullscreen) {
         gui_saved_grab = gui_grab;
         sdl_grab_start();
@@ -503,7 +504,7 @@ static void sdl_refresh(DisplayState *ds
     while (SDL_PollEvent(ev)) {
         switch (ev->type) {
         case SDL_VIDEOEXPOSE:
-            sdl_update(ds, 0, 0, ds->width, ds->height);
+            ds->dpy_update(ds, 0, 0, ds->width, ds->height);
             break;
         case SDL_KEYDOWN:
         case SDL_KEYUP:

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.