ObjFW  Diff

Differences From Artifact [168ac17ab0]:

To Artifact [e6b5b1a83b]:


366
367
368
369
370
371
372
373

374

375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
- (size_t)retainCount
{
	return PRE_IVAR->retain_count;
}

- release
{
	if (!--PRE_IVAR->retain_count)

		return [self free];


	return self;
}

- free
{
	void **iter = PRE_IVAR->memchunks + PRE_IVAR->memchunks_size;

	while (iter-- > PRE_IVAR->memchunks)
		free(*iter);

	if (PRE_IVAR->memchunks != NULL)
		free(PRE_IVAR->memchunks);

	free((char*)self - PRE_IVAR_ALIGN);
	return nil;
}
@end







|
>
|
>




|










<


366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391

392
393
- (size_t)retainCount
{
	return PRE_IVAR->retain_count;
}

- release
{
	if (!--PRE_IVAR->retain_count) {
		[self dealloc];
		return nil;
	}

	return self;
}

- (void)dealloc
{
	void **iter = PRE_IVAR->memchunks + PRE_IVAR->memchunks_size;

	while (iter-- > PRE_IVAR->memchunks)
		free(*iter);

	if (PRE_IVAR->memchunks != NULL)
		free(PRE_IVAR->memchunks);

	free((char*)self - PRE_IVAR_ALIGN);

}
@end