From: Sebastian Harl Date: Mon, 4 Aug 2008 13:59:33 +0000 (+0200) Subject: Added debian/patches/bts493553-pango-utf-8. X-Git-Tag: debian/1.3.1-3 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=fdaf70780f2c9328fcc9e30019336294bba8da6c;p=pkg-rrdtool.git Added debian/patches/bts493553-pango-utf-8. This patch tries to make sure an UTF-8 string is passed to pango_layout_set_{text,markup}() as required by libpango. Closes: #493553 --- diff --git a/debian/changelog b/debian/changelog index 4be7f7b..702068c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,12 @@ rrdtool (1.3.1-3) unstable; urgency=low * Added "libxml2-dev" to librrd-dev's dependencies (Closes: #493342). + * debian/patches: + - Added bts493553-pango-utf-8 to try to make sure an UTF-8 string is + passed to pango_layout_set_{text,markup}() as required by libpango + (Closes: #493553). - -- Sebastian Harl Sat, 2 Aug 2008 11:11:34 +0200 + -- Sebastian Harl Mon, 04 Aug 2008 15:57:26 +0200 rrdtool (1.3.1-2) unstable; urgency=low diff --git a/debian/patches/bts493553-pango-utf-8 b/debian/patches/bts493553-pango-utf-8 new file mode 100644 index 0000000..f016688 --- /dev/null +++ b/debian/patches/bts493553-pango-utf-8 @@ -0,0 +1,34 @@ +diff a/src/rrd_gfx.c b/src/rrd_gfx.c +--- a/src/rrd_gfx.c ++++ b/src/rrd_gfx.c +@@ -133,6 +133,8 @@ static PangoLayout *gfx_prep_text( + long tab_shift = fmod(x, tabwidth); + int border = im->text_prop[TEXT_PROP_LEGEND].size * 2.0; + ++ gchar *utf8_text; ++ + PangoTabArray *tab_array; + PangoContext *pango_context; + +@@ -156,10 +158,19 @@ static PangoLayout *gfx_prep_text( + font_desc = pango_font_description_from_string(font); + pango_font_description_set_size(font_desc, size * PANGO_SCALE); + pango_layout_set_font_description(layout, font_desc); ++ ++ /* pango expects the string to be utf-8 encoded */ ++ utf8_text = g_locale_to_utf8((const gchar *)text, -1, NULL, NULL, NULL); ++ ++ /* In case of an error, i.e. utf8_text == NULL (locale settings messed ++ * up?), we fall back to a possible "invalid UTF-8 string" warning instead ++ * of provoking a failed assertion in libpango. */ + if (im->with_markup) +- pango_layout_set_markup(layout, text, -1); ++ pango_layout_set_markup(layout, utf8_text ? utf8_text : text, -1); + else +- pango_layout_set_text(layout, text, -1); ++ pango_layout_set_text(layout, utf8_text ? utf8_text : text, -1); ++ ++ g_free(utf8_text); + return layout; + } + diff --git a/debian/patches/series b/debian/patches/series index 69cecaa..cd2055f 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,5 @@ bts428778-floating-point-exception +bts493553-pango-utf-8 setup.py-module-name no-rpath-for-ruby no-rpath-for-perl