[MPlayer-cvslog] r28107 - trunk/libvo/vo_gl.c

reimar subversion at mplayerhq.hu
Sat Dec 6 07:44:54 CET 2008


Author: reimar
Date: Sat Dec  6 07:44:54 2008
New Revision: 28107

Log:
More possible fixes for mesa-buffer mode.


Modified:
   trunk/libvo/vo_gl.c

Modified: trunk/libvo/vo_gl.c
==============================================================================
--- trunk/libvo/vo_gl.c	(original)
+++ trunk/libvo/vo_gl.c	Sat Dec  6 07:44:54 2008
@@ -178,6 +178,7 @@ static void texSize(int w, int h, int *t
       *texh *= 2;
   }
   if (ati_hack) *texw = (*texw + 511) & ~511;
+  if (mesa_buffer) *texw = (*texw + 63) & ~63;
 }
 
 //! maximum size of custom fragment program
@@ -702,7 +703,7 @@ static uint32_t get_image(mp_image_t *mp
     mpi->width = texture_width;
     mpi->height = texture_height;
   }
-  if (mesa_buffer) mpi->width = (mpi->width + 63) & ~63;
+  if (mesa_buffer) mpi->width = texture_width;
   mpi->stride[0] = mpi->width * mpi->bpp / 8;
   needed_size = mpi->stride[0] * mpi->height;
   if (mesa_buffer) {
@@ -794,8 +795,10 @@ static uint32_t draw_image(mp_image_t *m
   planes[0] = mpi->planes[0]; planes[1] = mpi->planes[1]; planes[2] = mpi->planes[2];
   mpi_flipped = stride[0] < 0;
   if (mpi->flags & MP_IMGFLAG_DIRECT) {
-    if (mesa_buffer) glPixelStorei(GL_UNPACK_CLIENT_STORAGE_APPLE, 1);
-    else {
+    if (mesa_buffer) {
+      glPixelStorei(GL_UNPACK_CLIENT_STORAGE_APPLE, 1);
+      w = texture_width;
+    } else {
       intptr_t base = (intptr_t)planes[0];
       if (ati_hack) { w = texture_width; h = texture_height; }
       if (mpi_flipped)



More information about the MPlayer-cvslog mailing list