summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Lillqvist <tml@novell.com>2008-02-25 01:31:52 +0000
committerTor Lillqvist <tml@src.gnome.org>2008-02-25 01:31:52 +0000
commitc6e63f33cfd238d43aca48761d30e4a351a25e54 (patch)
tree8d5d01948618a7637aefdadf3f79e02a3ac516b8
parent6a102fbaaa22af0387258c361c11f4843083764d (diff)
downloadpango-1-18.tar.gz
Bug 515484 -- Uniscribe interface handles surrogate pairs incorrectlypango-1-18
2008-02-25 Tor Lillqvist <tml@novell.com> Bug 515484 -- Uniscribe interface handles surrogate pairs incorrectly * modules/basic/basic-win32.c (itemize_shape_and_place): Pass correctly offset wchar string to set_up_pango_log_clusters() so that when it passes the string on to unichar_index(), that function notices the surrogate pairs correctly. svn path=/branches/pango-1-18/; revision=2575
-rw-r--r--ChangeLog10
-rw-r--r--modules/basic/basic-win32.c4
2 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 74430dce..f28906f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2008-02-25 Tor Lillqvist <tml@novell.com>
+
+ Bug 515484 – Uniscribe interface handles surrogate
+ pairs incorrectly
+
+ * modules/basic/basic-win32.c (itemize_shape_and_place): Pass
+ correctly offset wchar string to set_up_pango_log_clusters() so
+ that when it passes the string on to unichar_index(), that
+ function notices the surrogate pairs correctly.
+
2008-02-17 Behdad Esfahbod <behdad@gnome.org>
Bug 517083 – pango modules: wrong fallback adding code?
diff --git a/modules/basic/basic-win32.c b/modules/basic/basic-win32.c
index c0880fb8..f11b34a2 100644
--- a/modules/basic/basic-win32.c
+++ b/modules/basic/basic-win32.c
@@ -367,7 +367,7 @@ dump_glyphs_and_log_clusters (gboolean rtl,
static int
unichar_index (wchar_t *wtext,
- int ix)
+ int ix)
{
int i, index;
@@ -606,7 +606,7 @@ itemize_shape_and_place (PangoFont *font,
ng = glyphs->num_glyphs;
pango_glyph_string_set_size (glyphs, ng + nglyphs);
- set_up_pango_log_clusters (wtext,
+ set_up_pango_log_clusters (wtext + items[item].iCharPos,
items[item].a.fRTL, itemlen, log_clusters,
nglyphs, glyphs->log_clusters + ng,
char_offset);