Aric Stewart : usp10: Correct Left and Right confusions for Arabic joining and shaping.

Alexandre Julliard julliard at winehq.org
Fri May 21 12:15:22 CDT 2010


Module: wine
Branch: master
Commit: e276fbc22284135019c15bba055ad943328a4b01
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=e276fbc22284135019c15bba055ad943328a4b01

Author: Aric Stewart <aric at codeweavers.com>
Date:   Fri May 21 10:08:30 2010 -0500

usp10: Correct Left and Right confusions for Arabic joining and shaping.

---

 dlls/usp10/shape.c |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/dlls/usp10/shape.c b/dlls/usp10/shape.c
index bccb1fd..71022ef 100644
--- a/dlls/usp10/shape.c
+++ b/dlls/usp10/shape.c
@@ -51,8 +51,8 @@ enum joining_types {
 
 enum joined_forms {
     Xn=0,
-    Xl,
     Xr,
+    Xl,
     Xm
 };
 
@@ -448,12 +448,12 @@ static CHAR neighbour_joining_type(int i, int delta, const CHAR* context_type, I
 
 static inline BOOL right_join_causing(CHAR joining_type)
 {
-    return (joining_type == jtR || joining_type == jtD || joining_type == jtC);
+    return (joining_type == jtL || joining_type == jtD || joining_type == jtC);
 }
 
 static inline BOOL left_join_causing(CHAR joining_type)
 {
-    return (joining_type == jtL || joining_type == jtD || joining_type == jtC);
+    return (joining_type == jtR || joining_type == jtD || joining_type == jtC);
 }
 
 /* SHAPE_ShapeArabicGlyphs
@@ -470,13 +470,13 @@ void SHAPE_ShapeArabicGlyphs(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa, WC
 
     if (!psa->fLogicalOrder && psa->fRTL)
     {
-        dirR = -1;
-        dirL = 1;
+        dirR = 1;
+        dirL = -1;
     }
     else
     {
-        dirR = 1;
-        dirL = -1;
+        dirR = -1;
+        dirL = 1;
     }
 
     if (!psc->GSUB_Table)




More information about the wine-cvs mailing list