comments for nash
authorCarsten Haitzler <raster@rasterman.com>
Sat, 23 Apr 2011 01:22:17 +0000 (01:22 +0000)
committerCarsten Haitzler <raster@rasterman.com>
Sat, 23 Apr 2011 01:22:17 +0000 (01:22 +0000)
SVN revision: 58837

legacy/evas/src/lib/engines/common/evas_scale_sample.c

index 68d9e49..6feb8e6 100644 (file)
@@ -242,6 +242,7 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst,
        func = evas_common_gfx_func_composite_pixel_mask_span_get(src, dst, dst_clip_w, dc->render_op);
        maskobj = dc->mask.mask;
        mask = maskobj->mask.mask;
+/*        
        if (1 || dst_region_w > src_region_w || dst_region_h > src_region_h){
               printf("Mask w/h: %d/%d\n",maskobj->cache_entry.w,
                               maskobj->cache_entry.h);
@@ -249,6 +250,7 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst,
                               dst_region_w,src_region_w,
                               dst_region_h,src_region_h);
        }
+ */
      }
    else if (dc->mul.use)
      func = evas_common_gfx_func_composite_pixel_color_span_get(src, dc->mul.col, dst, dst_clip_w, dc->render_op);
@@ -286,6 +288,13 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst,
                   /* * blend here [clip_w *] ptr -> dst_ptr * */
                   if (mask)
                     {
+                       // nash: problem here. normally dst_clip_x == dc->mask.x
+                       // but then... at some point they cease to be equal
+                       // and thus you add a negative value to mask here
+                       // in fact... u simply don't handle the mask being
+                       // disjoint from the object. now maybe the test in
+                       // expedite has a bug where it moves the mask img
+                       // wrongly - but... i can see this code is fragile
                        mask += dst_clip_x - dc->mask.x;
                        mask += (dst_clip_y - dc->mask.y) * maskobj->cache_entry.w;
                     }