[rt.cpan.org #65391] test/fix transform2 sat op
authorTony Cook <tony@develop-help.com>
Mon, 14 Feb 2011 08:07:54 +0000 (19:07 +1100)
committerTony Cook <tony@develop-help.com>
Mon, 14 Feb 2011 08:07:54 +0000 (19:07 +1100)
Changes
regmach.c
t/t58trans2.t

diff --git a/Changes b/Changes
index 390e0fc..bff1a79 100644 (file)
--- a/Changes
+++ b/Changes
@@ -40,6 +40,9 @@ Bug fixes:
  - handle a slightly different warning from libtiff 4.x
    https://rt.cpan.org/Ticket/Display.html?id=65268
 
  - handle a slightly different warning from libtiff 4.x
    https://rt.cpan.org/Ticket/Display.html?id=65268
 
+ - the sat transform2() op returned an incorrect saturation.
+   https://rt.cpan.org/Ticket/Display.html?id=65391
+
 Imager 0.80 - 17 Jan 2011
 ===========
 
 Imager 0.80 - 17 Jan 2011
 ===========
 
index fa6578e..c3d629c 100644 (file)
--- a/regmach.c
+++ b/regmach.c
@@ -66,7 +66,7 @@ static double hsv_sat(i_color color) {
     return 0;
   }
   else {
     return 0;
   }
   else {
-    int temp = i_min(i_max(color.rgb.r, color.rgb.g), color.rgb.b);
+    int temp = i_min(i_min(color.rgb.r, color.rgb.g), color.rgb.b);
     return (value - temp) / (double)value;
   }
 }
     return (value - temp) / (double)value;
   }
 }
index eca3638..ab569ff 100644 (file)
@@ -1,6 +1,6 @@
 #!perl -w
 use strict;
 #!perl -w
 use strict;
-use Test::More tests => 37;
+use Test::More tests => 38;
 BEGIN { use_ok('Imager'); }
 use Imager::Test qw(is_color3);
 
 BEGIN { use_ok('Imager'); }
 use Imager::Test qw(is_color3);
 
@@ -139,6 +139,9 @@ EOS
 op_test('800000', <<'EOS', 128, 0, 0, 'det');
 1 0 0 1 det 128 * 1 1 1 1 det 128 * 0 rgb
 EOS
 op_test('800000', <<'EOS', 128, 0, 0, 'det');
 1 0 0 1 det 128 * 1 1 1 1 det 128 * 0 rgb
 EOS
+op_test('FF80C0', <<'EOS', 127, 0, 0, 'sat');
+0 0 getp1 sat 255 * 0.01 + 0 0 rgb
+EOS
 
 use Imager::Transform;
 
 
 use Imager::Transform;