diff libswscale/swscale.c @ 29633:9f0eb4812a07

Reset slice direction at end of each frame.
author ramiro
date Sun, 13 Sep 2009 01:49:40 +0000
parents c35359578f8d
children f6d56a15f1d8
line wrap: on
line diff
--- a/libswscale/swscale.c	Sat Sep 12 20:10:22 2009 +0000
+++ b/libswscale/swscale.c	Sun Sep 13 01:49:40 2009 +0000
@@ -3167,6 +3167,10 @@
         reset_ptr(src2, c->srcFormat);
         reset_ptr(dst2, c->dstFormat);
 
+        /* reset slice direction at end of frame */
+        if (srcSliceY + srcSliceH == c->srcH)
+            c->sliceDir = 0;
+
         return c->swScale(c, src2, srcStride2, srcSliceY, srcSliceH, dst2, dstStride2);
     } else {
         // slices go from bottom to top => we flip the image internally
@@ -3186,6 +3190,10 @@
         reset_ptr(src2, c->srcFormat);
         reset_ptr(dst2, c->dstFormat);
 
+        /* reset slice direction at end of frame */
+        if (!srcSliceY)
+            c->sliceDir = 0;
+
         return c->swScale(c, src2, srcStride2, c->srcH-srcSliceY-srcSliceH, srcSliceH, dst2, dstStride2);
     }
 }