NSCFString autoreleased with no pool in place

  • Hi,
    I'm getting this on the console:
    _NSAutoreleaseNoPool(): Object 0x18a850 of class NSCFString
    autoreleased with no pool in place - just leaking
    Otherwise the instructions after this are being executed accurately.

    Wishes,
    Nick
  • So what you need to do is creating your own autorelease pool around
    the code that is resulting in an autoreleased string.

    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    // Do work here
    [pool release];

    On 19 Feb 2008, at 13:04, Nick Rogers wrote:

    > Hi,
    > I'm getting this on the console:
    > _NSAutoreleaseNoPool(): Object 0x18a850 of class NSCFString
    > autoreleased with no pool in place - just leaking
    > Otherwise the instructions after this are being executed accurately.
    >
    > Wishes,
    > Nick
  • If you put a breakpoint on NSLog, you can find out where this is happening.

    Common places where no pool has yet been created include +load methods
    and code executed on secondary threads.

    -Ken

    On Feb 19, 2008 5:29 AM, Mike Abdullah <cocoadev...> wrote:
    > So what you need to do is creating your own autorelease pool around
    > the code that is resulting in an autoreleased string.
    >
    > NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    > // Do work here
    > [pool release];
    >
    >
    > On 19 Feb 2008, at 13:04, Nick Rogers wrote:
    >
    >> Hi,
    >> I'm getting this on the console:
    >> _NSAutoreleaseNoPool(): Object 0x18a850 of class NSCFString
    >> autoreleased with no pool in place - just leaking
    >> Otherwise the instructions after this are being executed accurately.
    >>
    >> Wishes,
    >> Nick

    >