summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@gnome.org>2007-12-10 08:31:33 +0000
committerBehdad Esfahbod <behdad@src.gnome.org>2007-12-10 08:31:33 +0000
commitf4fad0c741636d017aefd76d58e271466696cc6f (patch)
tree2e77cb9df99173cd841609f5ccdb4a40136dcd21 /docs
parented7f7ab40893d20bab5a221cc95cfcba965cd93e (diff)
downloadpango-f4fad0c741636d017aefd76d58e271466696cc6f.tar.gz
Bug 478914 – Use something invalid instead of '?' when validating input
2007-12-10 Behdad Esfahbod <behdad@gnome.org> Bug 478914 – Use something invalid instead of '?' when validating input text * pango/pango-layout.c (pango_layout_set_text): Set invalid input bytes to -1, which gives a unichar value of -1, and eventually a glyph value of -1, aka PANGO_GLYPH_INVALID_INPUT. * pango/fonts.c (pango_font_get_glyph_extents), (pango_font_get_metrics), (pango_font_get_font_map): * pango/modules.c (build_map): * pango/pango-context.c (get_script), (get_shaper_and_font), (string_from_script), (itemize_state_process_run): * pango/pango-coverage.c (pango_coverage_get): * pango/pango-impl-utils.h: * pango/pango-utils.c: * pango/pangocairo-font.c (pango_cairo_font_get_scaled_font), (_pango_cairo_font_private_get_hex_box_info), (_pango_cairo_font_private_get_glyph_extents_missing): * pango/pangocairo-private.h: * pango/pangocairo-render.c (_pango_cairo_renderer_draw_frame), (_pango_cairo_renderer_draw_box_glyph), (_pango_cairo_renderer_draw_unknown_glyph): * pango/pangofc-fontmap.c (pango_fc_font_map_get_patterns): * pango/pangoft2-private.h: * pango/pangoft2-render.c (pango_ft2_font_render_box_glyph), (pango_ft2_font_render_glyph), (pango_ft2_renderer_draw_glyph): * pango/pangoft2.c (pango_ft2_font_get_face), (pango_ft2_font_get_glyph_extents): * pango/pangox.c (pango_x_find_subfont), (pango_x_render): * pango/pangoxft-font.c (_pango_xft_font_get_mini_font), (get_glyph_extents_missing), (pango_xft_font_get_font): * pango/pangoxft-private.h: * pango/pangoxft-render.c (get_total_matrix), (draw_box), (_pango_xft_renderer_draw_box_glyph), (_pango_xft_renderer_draw_unknown_glyph), (pango_xft_renderer_draw_glyphs): * pango/shape.c (pango_shape): Render PANGO_GLYPH_INVALID_INPUT to a single-width box with a cross inside. Also cleanup spewed warnings and warn at the source, where we fail to find a shaper, instead of at every location that we see a NULL font. * pango/pango-font.h: * docs/pango-sections.txt: * docs/tmpl/glyphs.sgml: New public macro: PANGO_GLYPH_INVALID_INPUT svn path=/trunk/; revision=2519
Diffstat (limited to 'docs')
-rw-r--r--docs/pango-sections.txt1
-rw-r--r--docs/tmpl/glyphs.sgml14
2 files changed, 15 insertions, 0 deletions
diff --git a/docs/pango-sections.txt b/docs/pango-sections.txt
index 7571eea1..af8ce234 100644
--- a/docs/pango-sections.txt
+++ b/docs/pango-sections.txt
@@ -97,6 +97,7 @@ pango_matrix_transform_pixel_rectangle
pango_matrix_get_font_scale_factor
PangoGlyph
PANGO_GLYPH_EMPTY
+PANGO_GLYPH_INVALID_INPUT
PANGO_GLYPH_UNKNOWN_FLAG
PANGO_GET_UNKNOWN_GLYPH
PangoGlyphInfo
diff --git a/docs/tmpl/glyphs.sgml b/docs/tmpl/glyphs.sgml
index 46a2b2f0..5f019c1c 100644
--- a/docs/tmpl/glyphs.sgml
+++ b/docs/tmpl/glyphs.sgml
@@ -304,6 +304,20 @@ Unicode characters (those passing pango_is_zero_width()).
+<!-- ##### MACRO PANGO_GLYPH_INVALID_INPUT ##### -->
+<para>
+The %PANGO_GLYPH_EMPTY macro represents a #PangoGlyph value that has a
+special meaning of invalid input. #PangoLayout produces one such glyph
+per invalid input UTF-8 byte and such a glyph is rendered as a crossed
+box.
+
+Note that this value is defined such that it has the %PANGO_GLYPH_UNKNOWN_FLAG
+on.
+</para>
+
+@Since: 1.20
+
+
<!-- ##### MACRO PANGO_GLYPH_UNKNOWN_FLAG ##### -->
<para>
The %PANGO_GLYPH_UNKNOWN_FLAG macro is a flag value that can be added to