[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: NSZoneMallocAtomic disappeared from NSZone.h in -trunk
From: |
hns |
Subject: |
Re: NSZoneMallocAtomic disappeared from NSZone.h in -trunk |
Date: |
Tue, 24 Mar 2009 00:07:48 -0700 (PDT) |
User-agent: |
G2/1.0 |
On 24 Mrz., 07:30, Sebastian Reitenbach <sebas...@l00-bugdead-
prods.de> wrote:
> a bug report made me start
> investigating:http://bugzilla.opengroupware.org/bugzilla/show_bug.cgi?id=2025
>
> in revision: 27630 NSZoneMallocAtomic disappeared from NSZone.h, due to: "GC
> changes for MacOS-X compatiblity", since the svn log entry.
> NSZoneMallocAtomic was added:
>
> Fri May 21 16:40:00 1999 Richard Frith-Macdonald <richard@xxxxxxxxxxxxxxxx>
>
> * Source/include/NSZone.h: Added NSZoneMallocAtomic() for Helge
> and in anticipation of adding garbage collection support some day.
>
> the only usage of it that I found also was removed at the same revision 27630
> in Source/NSNotificationCenter.m:
> = (Observation*)NSZoneMallocAtomic(NSDefaultMallocZone(), size);
> = (Observation*)NSZoneMalloc(GSAtomicMallocZone(), size);
>
> NSZoneMallocAtomic is implemented this way in NSZone.h in stable 0.18:
>
> /**
> * Allocates mmemory of size bytes from zone, with the assumption that the
> * memory will never contain pointers. This is only relevant in situations
> * where a form of garbage collection is enabled, and NSZoneMalloc() should
> * always be used otherwise. Not defined by OpenStep or OS X.
> */
> GS_ZONE_SCOPE void* NSZoneMallocAtomic (NSZone *zone, size_t size)
> {
> return NSZoneMalloc(GSAtomicMallocZone(), size);
>
> }
>
> sope doesn't compile anymore with gnustep-base trunk. When I take a look at
> the code in sope, how it is using NSZoneMallocAtomic there I see, it is using
> NSZoneMallocAtomic everywhere but for NeXT_Foundation_LIBRARY I guess, it may
> also be available on Mac OS X, but I've no possibility to check that out, at
> least googling NSZoneMallocAtomic only finds references to gnustep and
> libFoundation.
>
> I'm writing here, because of my research now, I'm not perfectly sure whether
> it was removed intentionally or accidently.
>
> cheers
> Sebastian
Cocoa defines NSZoneMalloc() but no NSZoneMallocAtomic(). So it
appears to be an extension of GNUstep on which SOPE relies.
-- hns