Evas: Filter: Brightness: Fix clamp ranges, and don't double negate
authornash <nash@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sun, 1 May 2011 06:39:26 +0000 (06:39 +0000)
committernash <nash@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sun, 1 May 2011 06:39:26 +0000 (06:39 +0000)
Basically it's a clamp function...

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@59068 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/canvas/evas_filter.c

index 452c1ba..42e9053 100644 (file)
@@ -1187,9 +1187,9 @@ brightness_filter(Evas_Filter_Info *info, RGBA_Image *src, RGBA_Image *dst)
                  g = G_VAL(in);
                  b = B_VAL(in);
                  adjdelta = (a * delta) >> 8;
-                 r = MIN(r + adjdelta, 255);
-                 g = MIN(g + adjdelta, 255);
-                 b = MIN(b + adjdelta, 255);
+                 r = MIN(r + adjdelta, a);
+                 g = MIN(g + adjdelta, a);
+                 b = MIN(b + adjdelta, a);
                  *out = ARGB_JOIN(a, r ,g, b);
                  out++;
                  in++;
@@ -1208,9 +1208,9 @@ brightness_filter(Evas_Filter_Info *info, RGBA_Image *src, RGBA_Image *dst)
                   g = G_VAL(in);
                   b = B_VAL(in);
                   adjdelta = (a * delta) >> 8;
-                  r = MAX(r - adjdelta, 0);
-                  g = MAX(g - adjdelta, 0);
-                  b = MAX(b - adjdelta, 0);
+                  r = MAX(r + adjdelta, 0);
+                  g = MAX(g + adjdelta, 0);
+                  b = MAX(b + adjdelta, 0);
                   *out = ARGB_JOIN(a, r ,g, b);
                   out++;
                   in++;