diff options
Diffstat (limited to 'src/common/text.c')
-rw-r--r-- | src/common/text.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/common/text.c b/src/common/text.c index 2677ebc4..4a274f98 100644 --- a/src/common/text.c +++ b/src/common/text.c @@ -814,6 +814,16 @@ text_convert_invalid (const gchar* text, gssize len, GIConv converter, const gch gchar * text_fixup_invalid_utf8 (const gchar* text, gssize len, gsize *len_out) { +#if GLIB_CHECK_VERSION (2, 52, 0) +G_GNUC_BEGIN_IGNORE_DEPRECATIONS + gchar *result = g_utf8_make_valid (text, len); +G_GNUC_END_IGNORE_DEPRECATIONS + if (len_out) + { + *len_out = strlen (result); + } + return result; +#else static GIConv utf8_fixup_converter = NULL; if (utf8_fixup_converter == NULL) { @@ -821,6 +831,7 @@ text_fixup_invalid_utf8 (const gchar* text, gssize len, gsize *len_out) } return text_convert_invalid (text, len, utf8_fixup_converter, unicode_fallback_string, len_out); +#endif } void |