diff -ru fillets-ng-0.8.1.orig/src/effect/Font.cpp fillets-ng-0.8.1/src/effect/Font.cpp --- fillets-ng-0.8.1.orig/src/effect/Font.cpp 2006-01-05 23:31:18.000000000 +0100 +++ fillets-ng-0.8.1/src/effect/Font.cpp 2009-03-02 21:20:23.000000000 +0100 @@ -26,7 +26,7 @@ FriBidiChar *logicalString = new FriBidiChar[text.length() + 1]; FriBidiChar *visualString = new FriBidiChar[text.length() + 1]; - int ucsLength = fribidi_utf8_to_unicode(const_cast(text.c_str()), + int ucsLength = fribidi_charset_to_unicode(FRIBIDI_CHAR_SET_UTF8, const_cast(text.c_str()), text.length(), logicalString); fribidi_boolean ok = fribidi_log2vis(logicalString, ucsLength, &base, visualString, NULL, NULL, NULL); @@ -37,7 +37,7 @@ } char *buffer = new char[text.length() + 1]; - int length = fribidi_unicode_to_utf8(visualString, ucsLength, buffer); + int length = fribidi_unicode_to_charset(FRIBIDI_CHAR_SET_UTF8, visualString, ucsLength, buffer); std::string result = std::string(buffer, length); delete[] buffer; delete[] visualString;