@@ -19,11 +19,12 @@ #import "OFMacros.h" int _OFXMLParser_reference; static OF_INLINE OFString* -transform_string(OFString *cache, OFObject *handler) +transform_string(OFMutableString *cache, + OFObject *handler) { /* TODO: Support for xml:space */ [cache removeLeadingAndTrailingWhitespaces]; return [cache stringByXMLUnescapingWithHandler: handler]; @@ -505,16 +506,16 @@ - stringByXMLUnescapingWithHandler: (OFObject *)h { size_t i, last; BOOL in_entity; - OFString *ret; + OFMutableString *ret; last = 0; in_entity = NO; ret = [OFMutableString string]; - ret->is_utf8 = is_utf8; + ((OFString*)ret)->is_utf8 = is_utf8; for (i = 0; i < length; i++) { if (!in_entity && string[i] == '&') { [ret appendCStringWithoutUTF8Checking: string + last length: i - last];