Commit 7c4ac3cb0c3defe453009503d2a85026227bad55

Алексей Подтележников 2010-11-28T08:23:40

[ftsmooth]: Minor code simplification. * src/smooth/ftgrays (gray_render_cubic): Do only one comparison instead of two.

diff --git a/ChangeLog b/ChangeLog
index f81527d..8a3968d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2010-11-28  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+	[ftsmooth]: Minor code simplification.
+
+	* src/smooth/ftgrays (gray_render_cubic): Do only one comparison
+	instead of two.
+
 2010-11-26  Johnson Y. Yan  <yinsen_yan@foxitsoftware.com>
 
 	[truetype] Better multi-threading support.
diff --git a/src/smooth/ftgrays.c b/src/smooth/ftgrays.c
index 8f93392..a85e160 100644
--- a/src/smooth/ftgrays.c
+++ b/src/smooth/ftgrays.c
@@ -1057,7 +1057,13 @@ typedef ptrdiff_t  FT_PtrDist;
 
         dx_ = FT_ABS( dx );
         dy_ = FT_ABS( dy );
-        L = ( 236 * FT_MAX( dx_, dy_ ) + 97 * FT_MIN( dx_, dy_ ) ) >> 8;
+
+        /* This is the same as                     */
+        /*                                         */
+        /*   L = ( 236 * FT_MAX( dx_, dy_ )        */
+        /*       + 97 * FT_MIN( dx_, dy_ ) ) >> 8; */
+        L = ( dx_ > dy_ ? 236 * dx_ +  97 * dy_
+                        :  97 * dx_ + 236 * dy_ ) >> 8;
 
         /* Avoid possible arithmetic overflow below by splitting. */
         if ( L > 32767 )