shithub: freetype+ttf2subf

Download patch

ref: 70961e57729350aad01ace23c2529265045af85b
parent: 8fd87d4e69847e2897dfd5122e8d0a87952e6d45
author: Werner Lemberg <[email protected]>
date: Wed Aug 20 12:19:32 EDT 2014

Minor.

git/fs: mount .git/fs: mount/attach disallowed
--- a/src/base/ftcalc.c
+++ b/src/base/ftcalc.c
@@ -362,35 +362,37 @@
   /*  Graham Asher and Alexei Podtelezhnikov.  The trick is to optimize  */
   /*  a rather common case when everything fits within 32-bits.          */
   /*                                                                     */
-  /*  We compute 'a*b+c/2', then divide it by 'c'. (positive values)     */
+  /*  We compute 'a*b+c/2', then divide it by 'c' (all positive values). */
   /*                                                                     */
   /*  The product of two positive numbers never exceeds the square of    */
-  /*  their mean.  Therefore, we always avoid the overflow by imposing   */
+  /*  its mean values.  Therefore, we always avoid the overflow by       */
+  /*  imposing                                                           */
   /*                                                                     */
-  /*  ( a + b ) / 2 <= sqrt( X - c/2 )                                   */
+  /*    (a + b) / 2 <= sqrt(X - c/2)    ,                                */
   /*                                                                     */
-  /*  where X = 2^32 - 1, the maximun unsigned 32-bit value, and using   */
-  /*  unsigned arithmetic.  Now we replace sqrt with a linear function   */
-  /*  that is smaller or equal in the entire range of c from 0 to X/2;   */
-  /*  it should be equal to sqrt(X) and sqrt(3X/4) at the termini.       */
-  /*  Substituting the linear solution and explicit numbers we get       */
+  /*  where X = 2^32 - 1, the maximum unsigned 32-bit value, and using   */
+  /*  unsigned arithmetic.  Now we replace `sqrt' with a linear function */
+  /*  that is smaller or equal for all values of c in the interval       */
+  /*  [0;X/2]; it should be equal to sqrt(X) and sqrt(3X/4) at the       */
+  /*  endpoints.  Substituting the linear solution and explicit numbers  */
+  /*  we get                                                             */
   /*                                                                     */
-  /*  a + b <= 131071.99 - c / 122291.84                                 */
+  /*    a + b <= 131071.99 - c / 122291.84    .                          */
   /*                                                                     */
-  /*  In practice we should use a faster and even stronger inequality    */
+  /*  In practice, we should use a faster and even stronger inequality   */
   /*                                                                     */
-  /*  a + b <= 131071 - (c >> 16)                                        */
+  /*    a + b <= 131071 - (c >> 16)                                      */
   /*                                                                     */
   /*  or, alternatively,                                                 */
   /*                                                                     */
-  /*  a + b <= 129895 - (c >> 17)                                        */
+  /*    a + b <= 129895 - (c >> 17)    .                                 */
   /*                                                                     */
   /*  FT_MulFix, on the other hand, is optimized for a small value of    */
   /*  the first argument, when the second argument can be much larger.   */
   /*  This can be achieved by scaling the second argument and the limit  */
-  /*  in the above inequalities. For example,                            */
+  /*  in the above inequalities.  For example,                           */
   /*                                                                     */
-  /*  a + (b >> 8) <= (131071 >> 4)                                      */
+  /*    a + (b >> 8) <= (131071 >> 4)                                    */
   /*                                                                     */
   /*  should work well to avoid the overflow.                            */
   /*                                                                     */