@@ -190,11 +190,18 @@ toSize: cache_len + len]; } @catch (OFException *e) { [self freeMemory: tmp]; @throw e; } - memcpy(cache + cache_len, tmp, len); + + /* + * It's possible that cache_len + len is 0 and thus cache was + * set to NULL by resizeMemory:toSize:. + */ + if (cache != NULL) + memcpy(cache + cache_len, tmp, len); + cache_len += len; } } - (size_t)writeNBytes: (size_t)size