- if (dymin < dst->cr.ymin)
- {
- srcy += dst->cr.ymin - dymin;
- dymin = dst->cr.ymin;
- }
- dxmax = MIN(MIN(rect->xmax, rect->xmin + src->width), dst->cr.xmax);
- dymax = MIN(MIN(rect->ymax, rect->ymin + src->height), dst->cr.ymax);
+ dxmax = MIN(rect->xmax, rect->xmin + src->width);
+ dymax = MIN(rect->ymax, rect->ymin + src->height);
+
+ /* Perform regular clipping */
+ gfx_clip(dxmin, dxmax, srcx, dst->cr.xmin, dst->cr.xmax);
+ gfx_clip(dymin, dymax, srcy, dst->cr.ymin, dst->cr.ymax);
+
+ //kprintf("dxmin=%d, sxmin=%d, dxmax=%d; ", dxmin, sxmin, dxmax);
+ //kprintf("dymin=%d, symin=%d, dymax=%d\n", dymin, symin, dymax);