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

Side by Side Diff: third_party/harfbuzz/chromium.patch

Issue 10382212: Fix the alignment issue with Arabic when a font has kerning or cursive gsub. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 7 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 | Annotate | Revision Log
« no previous file with comments | « third_party/harfbuzz/README.chromium ('k') | third_party/harfbuzz/src/harfbuzz-shaper.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 diff --git a/contrib/harfbuzz-unicode.c b/contrib/harfbuzz-unicode.c 1 diff --git a/contrib/harfbuzz-unicode.c b/contrib/harfbuzz-unicode.c
2 index 72c5cf2..49e47b0 100644 2 index 72c5cf2..49e47b0 100644
3 --- a/contrib/harfbuzz-unicode.c 3 --- a/contrib/harfbuzz-unicode.c
4 +++ b/contrib/harfbuzz-unicode.c 4 +++ b/contrib/harfbuzz-unicode.c
5 @@ -120,7 +120,6 @@ hb_utf16_script_run_next(unsigned *num_code_points, HB_Scrip tItem *output, 5 @@ -120,7 +120,6 @@ hb_utf16_script_run_next(unsigned *num_code_points, HB_Scrip tItem *output,
6 current_script = script; 6 current_script = script;
7 continue; 7 continue;
8 } else if (script == HB_Script_Inherited) { 8 } else if (script == HB_Script_Inherited) {
9 - current_script = script; 9 - current_script = script;
10 continue; 10 continue;
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 +++ b/src/harfbuzz-tibetan.c 126 +++ b/src/harfbuzz-tibetan.c
127 @@ -90,7 +90,7 @@ static const unsigned char tibetanForm[0x80] = { 127 @@ -90,7 +90,7 @@ static const unsigned char tibetanForm[0x80] = {
128 128
129 129
130 #define tibetan_form(c) \ 130 #define tibetan_form(c) \
131 - ((c) >= 0x0f40 && (c) <= 0x0fc0 ? (TibetanForm)tibetanForm[(c) - 0x0f40] : TibetanOther) 131 - ((c) >= 0x0f40 && (c) <= 0x0fc0 ? (TibetanForm)tibetanForm[(c) - 0x0f40] : TibetanOther)
132 + ((c) >= 0x0f40 && (c) < 0x0fc0 ? (TibetanForm)tibetanForm[(c) - 0x0f40] : T ibetanOther) 132 + ((c) >= 0x0f40 && (c) < 0x0fc0 ? (TibetanForm)tibetanForm[(c) - 0x0f40] : T ibetanOther)
133 133
134 static const HB_OpenTypeFeature tibetan_features[] = { 134 static const HB_OpenTypeFeature tibetan_features[] = {
135 { HB_MAKE_TAG('c', 'c', 'm', 'p'), CcmpProperty }, 135 { HB_MAKE_TAG('c', 'c', 'm', 'p'), CcmpProperty },
136 diff --git a/src/harfbuzz-shaper.cpp b/src/harfbuzz-shaper.cpp
137 index ce4d4ac..6b4d6d2 100644
138 --- a/src/harfbuzz-shaper.cpp
139 +++ b/src/harfbuzz-shaper.cpp
140 @@ -1263,16 +1263,13 @@ HB_Bool HB_OpenTypePosition(HB_ShaperItem *item, int ava ilableGlyphs, HB_Bool do
141 // (int)(positions[i].x_pos >> 6), (int)(positions[i].y_pos >> 6),
142 // positions[i].back, positions[i].new_advance);
143
144 - HB_Fixed adjustment = (item->item.bidiLevel % 2) ? -positions[i].x_ advance : positions[i].x_advance;
145 + HB_Fixed adjustment = positions[i].x_advance;
146
147 if (!(face->current_flags & HB_ShaperFlag_UseDesignMetrics))
148 adjustment = HB_FIXED_ROUND(adjustment);
149
150 - if (positions[i].new_advance) {
151 - advances[i] = adjustment;
152 - } else {
153 + if (positions[i].new_advance == 0)
154 advances[i] += adjustment;
155 - }
156
157 int back = 0;
158 HB_FixedPoint *offsets = item->offsets;
OLDNEW
« no previous file with comments | « third_party/harfbuzz/README.chromium ('k') | third_party/harfbuzz/src/harfbuzz-shaper.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698