+ Fix the precision when multiplying two fixed point numbers
authorturran <turran>
Sun, 1 Mar 2009 12:35:30 +0000 (12:35 +0000)
committerturran <turran@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sun, 1 Mar 2009 12:35:30 +0000 (12:35 +0000)
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/eina@39307 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/include/eina_f16p16.h

index 1f21bbf..7f09cf8 100644 (file)
@@ -89,7 +89,7 @@ static inline Eina_F16p16 eina_f16p16_sub(Eina_F16p16 a, Eina_F16p16 b)
  */
 static inline Eina_F16p16 eina_f16p16_mul(Eina_F16p16 a, Eina_F16p16 b)
 {
-       return (a * b) >> 16;
+       return ((int64_t)a * (int64_t)b) >> 16;
 }
 /**
  * To be documented