--- deliantra/Deliantra-Client/Client.xs 2006/06/05 03:48:49 1.106 +++ deliantra/Deliantra-Client/Client.xs 2006/06/12 13:26:14 1.111 @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -87,7 +88,10 @@ static void substitute_func (FcPattern *pattern, gpointer data) { - FcPatternAddBool (pattern, FC_HINTING , 1); + FcPatternAddBool (pattern, FC_HINTING, 1); +#ifdef FC_HINT_STYLE + FcPatternAddBool (pattern, FC_HINT_STYLE, FC_HINT_FULL); +#endif #ifdef _WIN32 FcPatternAddBool (pattern, FC_AUTOHINT, 1); #else @@ -702,7 +706,12 @@ #ifdef _WIN32 MessageBox (0, message, "Crossfire+ Fatal Error", MB_OK | MB_ICONERROR); #endif - exit (1); + _Exit (1); + +void +_exit (int retval) + CODE: + _Exit (retval); MODULE = CFClient PACKAGE = CFClient::Font @@ -786,7 +795,7 @@ get_text (CFClient::Layout self) CODE: RETVAL = newSVpv (pango_layout_get_text (self->pl), 0); - SvUTF8_on (RETVAL); + sv_utf8_decode (RETVAL); OUTPUT: RETVAL @@ -1052,6 +1061,7 @@ { map_clear (self); Safefree (self->face); + Safefree (self->tex); Safefree (self); }