Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(95)

Side by Side Diff: third_party/harfbuzz/src/harfbuzz-arabic.c

Issue 543067: linux: hack around arabic advances in harfbuzz (Closed)
Patch Set: with comments Created 10 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | third_party/harfbuzz/src/harfbuzz-shaper.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 2 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
3 * 3 *
4 * This is part of HarfBuzz, an OpenType Layout engine library. 4 * This is part of HarfBuzz, an OpenType Layout engine library.
5 * 5 *
6 * Permission is hereby granted, without written agreement and without 6 * Permission is hereby granted, without written agreement and without
7 * license or royalty fees, to use, copy, modify, and distribute this 7 * license or royalty fees, to use, copy, modify, and distribute this
8 * software and its documentation for any purpose, provided that the 8 * software and its documentation for any purpose, provided that the
9 * above copyright notice and the following two paragraphs appear in 9 * above copyright notice and the following two paragraphs appear in
10 * all copies of this software. 10 * all copies of this software.
(...skipping 1089 matching lines...) Expand 10 before | Expand all | Expand 10 after
1100 /* #### stil missing: identify invalid character combinations */ 1100 /* #### stil missing: identify invalid character combinations */
1101 HB_Bool HB_ArabicShape(HB_ShaperItem *item) 1101 HB_Bool HB_ArabicShape(HB_ShaperItem *item)
1102 { 1102 {
1103 int slen; 1103 int slen;
1104 HB_Bool haveGlyphs; 1104 HB_Bool haveGlyphs;
1105 HB_STACKARRAY(HB_UChar16, shapedChars, item->item.length); 1105 HB_STACKARRAY(HB_UChar16, shapedChars, item->item.length);
1106 1106
1107 assert(item->item.script == HB_Script_Arabic || item->item.script == HB_Scri pt_Syriac 1107 assert(item->item.script == HB_Script_Arabic || item->item.script == HB_Scri pt_Syriac
1108 || item->item.script == HB_Script_Nko); 1108 || item->item.script == HB_Script_Nko);
1109 1109
1110 item->shaperFlags |= HB_ShaperFlag_ArabicHack;
agl 2010/01/15 10:21:57 Since this code is scheduled for demolition soon(i
1110 #ifndef NO_OPENTYPE 1111 #ifndef NO_OPENTYPE
1111 1112
1112 if (HB_SelectScript(item, item->item.script == HB_Script_Arabic ? arabic_fea tures : syriac_features)) { 1113 if (HB_SelectScript(item, item->item.script == HB_Script_Arabic ? arabic_fea tures : syriac_features)) {
1113 HB_Bool ot_ok; 1114 HB_Bool ot_ok;
1114 if (arabicSyriacOpenTypeShape(item, &ot_ok)) 1115 if (arabicSyriacOpenTypeShape(item, &ot_ok))
1115 return TRUE; 1116 return TRUE;
1116 if (ot_ok) 1117 if (ot_ok)
1117 return FALSE; 1118 return FALSE;
1118 /* fall through to the non OT code*/ 1119 /* fall through to the non OT code*/
1119 } 1120 }
(...skipping 15 matching lines...) Expand all
1135 HB_FREE_STACKARRAY(shapedChars); 1136 HB_FREE_STACKARRAY(shapedChars);
1136 1137
1137 if (!haveGlyphs) 1138 if (!haveGlyphs)
1138 return FALSE; 1139 return FALSE;
1139 1140
1140 HB_HeuristicPosition(item); 1141 HB_HeuristicPosition(item);
1141 return TRUE; 1142 return TRUE;
1142 } 1143 }
1143 1144
1144 1145
OLDNEW
« no previous file with comments | « no previous file | third_party/harfbuzz/src/harfbuzz-shaper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698