summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2004-01-26 17:46:35 +0000
committerOwen Taylor <otaylor@src.gnome.org>2004-01-26 17:46:35 +0000
commit95e8d95b5caa59af6d3f8a9b4785881d0d4fd2f8 (patch)
treeda401c63725a9a580a4bc96ee279919537db321c
parentd14a7bfb243749916a3a113a35e8f8bc81e03424 (diff)
downloadpango-95e8d95b5caa59af6d3f8a9b4785881d0d4fd2f8.tar.gz
Fix up glyph addition code so that it works properly with the typical
Mon Jan 26 10:30:06 2004 Owen Taylor <otaylor@redhat.com> * pango/modules/thai/thai-c: Fix up glyph addition code so that it works properly with the typical TrueType fonts that have 0 width for combining characters. (#124175, Theppitak Karoonboonyanan) Fri Jan 23 16:05:31 2004 Owen Taylor <otaylor@redhat.com> * pango/pango-markup.c (open_tag_free): Fix some more problems with NULL attribute lists.
-rw-r--r--ChangeLog12
-rw-r--r--ChangeLog.pre-1-1012
-rw-r--r--ChangeLog.pre-1-412
-rw-r--r--ChangeLog.pre-1-612
-rw-r--r--ChangeLog.pre-1-812
-rw-r--r--modules/thai/thai-shaper.c21
-rw-r--r--pango/pango-markup.c9
7 files changed, 71 insertions, 19 deletions
diff --git a/ChangeLog b/ChangeLog
index dc83bc79..2f8e047f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+Mon Jan 26 10:30:06 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/modules/thai/thai-c: Fix up glyph addition
+ code so that it works properly with the typical
+ TrueType fonts that have 0 width for combining
+ characters. (#124175, Theppitak Karoonboonyanan)
+
+Fri Jan 23 16:05:31 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/pango-markup.c (open_tag_free): Fix some
+ more problems with NULL attribute lists.
+
Thu Jan 22 12:36:10 2004 Owen Taylor <otaylor@redhat.com>
* === Released 1.3.2 ===
diff --git a/ChangeLog.pre-1-10 b/ChangeLog.pre-1-10
index dc83bc79..2f8e047f 100644
--- a/ChangeLog.pre-1-10
+++ b/ChangeLog.pre-1-10
@@ -1,3 +1,15 @@
+Mon Jan 26 10:30:06 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/modules/thai/thai-c: Fix up glyph addition
+ code so that it works properly with the typical
+ TrueType fonts that have 0 width for combining
+ characters. (#124175, Theppitak Karoonboonyanan)
+
+Fri Jan 23 16:05:31 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/pango-markup.c (open_tag_free): Fix some
+ more problems with NULL attribute lists.
+
Thu Jan 22 12:36:10 2004 Owen Taylor <otaylor@redhat.com>
* === Released 1.3.2 ===
diff --git a/ChangeLog.pre-1-4 b/ChangeLog.pre-1-4
index dc83bc79..2f8e047f 100644
--- a/ChangeLog.pre-1-4
+++ b/ChangeLog.pre-1-4
@@ -1,3 +1,15 @@
+Mon Jan 26 10:30:06 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/modules/thai/thai-c: Fix up glyph addition
+ code so that it works properly with the typical
+ TrueType fonts that have 0 width for combining
+ characters. (#124175, Theppitak Karoonboonyanan)
+
+Fri Jan 23 16:05:31 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/pango-markup.c (open_tag_free): Fix some
+ more problems with NULL attribute lists.
+
Thu Jan 22 12:36:10 2004 Owen Taylor <otaylor@redhat.com>
* === Released 1.3.2 ===
diff --git a/ChangeLog.pre-1-6 b/ChangeLog.pre-1-6
index dc83bc79..2f8e047f 100644
--- a/ChangeLog.pre-1-6
+++ b/ChangeLog.pre-1-6
@@ -1,3 +1,15 @@
+Mon Jan 26 10:30:06 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/modules/thai/thai-c: Fix up glyph addition
+ code so that it works properly with the typical
+ TrueType fonts that have 0 width for combining
+ characters. (#124175, Theppitak Karoonboonyanan)
+
+Fri Jan 23 16:05:31 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/pango-markup.c (open_tag_free): Fix some
+ more problems with NULL attribute lists.
+
Thu Jan 22 12:36:10 2004 Owen Taylor <otaylor@redhat.com>
* === Released 1.3.2 ===
diff --git a/ChangeLog.pre-1-8 b/ChangeLog.pre-1-8
index dc83bc79..2f8e047f 100644
--- a/ChangeLog.pre-1-8
+++ b/ChangeLog.pre-1-8
@@ -1,3 +1,15 @@
+Mon Jan 26 10:30:06 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/modules/thai/thai-c: Fix up glyph addition
+ code so that it works properly with the typical
+ TrueType fonts that have 0 width for combining
+ characters. (#124175, Theppitak Karoonboonyanan)
+
+Fri Jan 23 16:05:31 2004 Owen Taylor <otaylor@redhat.com>
+
+ * pango/pango-markup.c (open_tag_free): Fix some
+ more problems with NULL attribute lists.
+
Thu Jan 22 12:36:10 2004 Owen Taylor <otaylor@redhat.com>
* === Released 1.3.2 ===
diff --git a/modules/thai/thai-shaper.c b/modules/thai/thai-shaper.c
index 5fcbc429..39c2c574 100644
--- a/modules/thai/thai-shaper.c
+++ b/modules/thai/thai-shaper.c
@@ -302,26 +302,15 @@ add_glyph (ThaiFontInfo *font_info,
pango_font_get_glyph_extents (font_info->font,
glyphs->glyphs[index].glyph, &ink_rect, &logical_rect);
- if (combining)
+ if (combining || logical_rect.width > 0)
{
- glyphs->glyphs[index].geometry.x_offset =
- glyphs->glyphs[index - 1].geometry.width;
- glyphs->glyphs[index].geometry.width =
- logical_rect.width + glyphs->glyphs[index - 1].geometry.width;
- glyphs->glyphs[index - 1].geometry.width = 0;
+ glyphs->glyphs[index].geometry.x_offset = 0;
+ glyphs->glyphs[index].geometry.width = logical_rect.width;
}
else
{
- if (logical_rect.width > 0)
- {
- glyphs->glyphs[index].geometry.x_offset = 0;
- glyphs->glyphs[index].geometry.width = logical_rect.width;
- }
- else
- {
- glyphs->glyphs[index].geometry.x_offset = ink_rect.width;
- glyphs->glyphs[index].geometry.width = ink_rect.width;
- }
+ glyphs->glyphs[index].geometry.x_offset = ink_rect.width;
+ glyphs->glyphs[index].geometry.width = ink_rect.width;
}
glyphs->glyphs[index].geometry.y_offset = 0;
}
diff --git a/pango/pango-markup.c b/pango/pango-markup.c
index 6698f872..df139d97 100644
--- a/pango/pango-markup.c
+++ b/pango/pango-markup.c
@@ -816,7 +816,8 @@ parse_absolute_size (OpenTag *tag,
*/
factor = scale_factor (level, 1.0);
add_attribute (tag, pango_attr_scale_new (factor));
- open_tag_set_absolute_font_scale (tag, factor);
+ if (tag)
+ open_tag_set_absolute_font_scale (tag, factor);
return TRUE;
}
@@ -950,7 +951,8 @@ span_parse_func (MarkupData *md,
if (parsed)
{
add_attribute (tag, pango_attr_font_desc_new (parsed));
- open_tag_set_absolute_font_size (tag, pango_font_description_get_size (parsed));
+ if (tag)
+ open_tag_set_absolute_font_size (tag, pango_font_description_get_size (parsed));
pango_font_description_free (parsed);
}
}
@@ -982,7 +984,8 @@ span_parse_func (MarkupData *md,
}
add_attribute (tag, pango_attr_size_new (n));
- open_tag_set_absolute_font_size (tag, n);
+ if (tag)
+ open_tag_set_absolute_font_size (tag, n);
}
else if (strcmp (size, "smaller") == 0)
{