@@ -138,10 +138,15 @@ retCString = of_realloc(retCString, 1, i + 1); } @catch (OFOutOfMemoryException *e) { /* We don't care if it fails, as we only made it smaller. */ } - return [OFString stringWithUTF8StringNoCopy: retCString - length: i - freeWhenDone: true]; + @try { + return [OFString stringWithUTF8StringNoCopy: retCString + length: i + freeWhenDone: true]; + } @catch (id e) { + free(retCString); + @throw e; + } } @end