# HG changeset patch # User Ka-Hing Cheung # Date 1230779350 0 # Node ID 647684cdbbac3ff550c54393e3ced520dcef3503 # Parent b2f8b1e1e7cc7e3167961a1e7e819f6142e5d00d validates that string PurpleValues are utf-8 status attributes use PurpleValue and this should prevent badly written plugins from putting invalid utf-8 in status.xml and subsequently causes pidgin not able to start diff -r b2f8b1e1e7cc -r 647684cdbbac libpurple/value.c --- a/libpurple/value.c Thu Jan 01 01:04:34 2009 +0000 +++ b/libpurple/value.c Thu Jan 01 03:09:10 2009 +0000 @@ -320,6 +320,7 @@ purple_value_set_string(PurpleValue *value, const char *data) { g_return_if_fail(value != NULL); + g_return_if_fail(data == NULL || g_utf8_validate(data, -1, NULL)); g_free(value->data.string_data); value->data.string_data = g_strdup(data);