diff options
Diffstat (limited to 'libvo')
-rw-r--r-- | libvo/vo_x11.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/libvo/vo_x11.c b/libvo/vo_x11.c index 523d2dd0b3..5e1ec7fddf 100644 --- a/libvo/vo_x11.c +++ b/libvo/vo_x11.c @@ -650,14 +650,12 @@ static int draw_slice(uint8_t * src[], int stride[], int w, int h, dstStride[1] = dstStride[2] = 0; dst[1] = dst[2] = NULL; + dstStride[0] = image_width * ((bpp + 7) / 8); + dst[0] = ImageData; if (Flip_Flag) { - dstStride[0] = -image_width * ((bpp + 7) / 8); - dst[0] = ImageData - (long)dstStride[0] * (image_height - 1); - } else - { - dstStride[0] = image_width * ((bpp + 7) / 8); - dst[0] = ImageData; + dst[0] += dstStride[0] * (image_height - 1); + dstStride[0] = -dstStride[0]; } sws_scale_ordered(swsContext, src, stride, y, h, dst, dstStride); return 0; |