diff --git a/src/lib/evas/filters/evas_filter.c b/src/lib/evas/filters/evas_filter.c index 2dce45c17d..6d2d7f8d23 100644 --- a/src/lib/evas/filters/evas_filter.c +++ b/src/lib/evas/filters/evas_filter.c @@ -1558,6 +1558,7 @@ _clip_to_target(int *sx /* OUT */, int *sy /* OUT */, int sw, int sh, { if (ox > 0) { + (*sx) = 0; (*dx) = ox; (*cols) = sw; if (((*dx) + (*cols)) > (dw)) @@ -1565,18 +1566,21 @@ _clip_to_target(int *sx /* OUT */, int *sy /* OUT */, int sw, int sh, } else if (ox < 0) { + (*dx) = 0; (*sx) = (-ox); (*cols) = sw - (*sx); if ((*cols) > dw) (*cols) = dw; } else { + (*dx) = 0; (*cols) = sw; if ((*cols) > dw) (*cols) = dw; } if (oy > 0) { + (*sy) = 0; (*dy) = oy; (*rows) = sh; if (((*dy) + (*rows)) > (dh)) @@ -1584,12 +1588,14 @@ _clip_to_target(int *sx /* OUT */, int *sy /* OUT */, int sw, int sh, } else if (oy < 0) { + (*dy) = 0; (*sy) = (-oy); (*rows) = sh - (*sy); if ((*rows) > dh) (*rows) = dh; } else { + (*dy) = 0; (*rows) = sh; if ((*rows) > dh) (*rows) = dh; }