@@ -389,10 +389,13 @@ - freeMemory: (void*)ptr; { void **iter, *last, **memchunks; size_t i, memchunks_size; + + if (ptr == NULL) + return self; iter = PRE_IVAR->memchunks + PRE_IVAR->memchunks_size; i = PRE_IVAR->memchunks_size; while (iter-- > PRE_IVAR->memchunks) {