@@ -74,20 +74,23 @@ static OFString* parseEntities(OFString *self, id (*lookup)(void*, OFString*, OFString*), void *context) { + OFMutableString *ret; + void *pool; const char *string; size_t i, last, length; bool inEntity; - OFMutableString *ret; + + ret = [OFMutableString string]; + + pool = objc_autoreleasePoolPush(); string = [self UTF8String]; length = [self UTF8StringLength]; - ret = [OFMutableString string]; - last = 0; inEntity = false; for (i = 0; i < length; i++) { if (!inEntity && string[i] == '&') { @@ -167,10 +170,12 @@ [ret appendUTF8String: string + last length: i - last]; [ret makeImmutable]; + + objc_autoreleasePoolPop(pool); return ret; } static id