[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Fetching with NSUrl/NSTimer and accepting Input from DO --> Double Relea
From: |
Philip Mötteli |
Subject: |
Fetching with NSUrl/NSTimer and accepting Input from DO --> Double Release |
Date: |
Mon, 12 Jan 2004 23:54:15 +0100 |
Hi
I have a daemon (which is single threaded), that is once a minute
triggered by an NSTimer, to fetch some data from the Internet:
NSTimer ----> [NSString stringWithContentsOfURL:anNSUrl];
It might happen, that I also connect from within another program to
this same daemon, using Distributed Objects. This client program will
crash somewhere in [NSStaticData decode...], because in the daemon a
GSMutableArray instance from NSPortCoder gets released twice. I
actually don't know why, but have the impression, the reason for it is
not in my code.
Is that a problem to use NSUrl and DO in the same program?
Here the backtrace from GDB for the daemon:
(gdb) bt
#0 -[NSException raise] (self=0x81ecbe8, _cmd=0x40231710) at
NSException.m:233
#1 0x40114923 in +[NSException raise:format:arguments:]
(self=0x40231680, _cmd=0x402316f8, name=0x40231884, format=0x4023a69c,
argList=0xbfffbd00 "\001") at NSException.m:196
#2 0x40114874 in +[NSException raise:format:] (self=0x40231680,
_cmd=0x4023a348, name=0x40231884, format=0x4023a69c) at
NSException.m:177
#3 0x40138d88 in -[NSObject release] (self=0x81ec678, _cmd=0x4023b4b0)
at NSObject.m:1812
#4 0x4013ba2c in -[NSPortCoder dealloc] (self=0x81eb6b0,
_cmd=0x4023a350) at NSPortCoder.m:351
#5 0x40138dbf in -[NSObject release] (self=0x81eb6b0, _cmd=0x4022a780)
at NSObject.m:1818
#6 0x400ee862 in -[NSConnection(Private) _doneInRmc:] (self=0x81eb2d0,
_cmd=0x4022a4e8, c=0x81eb6b0) at NSConnection.m:2832
#7 0x400ecfc3 in -[NSConnection(Private) _service:rootObject:]
(self=0x81eb2d0, _cmd=0x4022a2f0, rmc=0x81eb6b0) at NSConnection.m:2505
#8 0x400ebc6b in -[NSConnection(Private) handlePortMessage:]
(self=0x80ce300, _cmd=0x40240510, msg=0x81ead28) at NSConnection.m:2171
#9 0x40155fe6 in -[NSSocketPort handlePortMessage:] (self=0x80d57f0,
_cmd=0x40240160, m=0x81ead28) at NSSocketPort.m:1781
#10 0x40153a46 in -[GSTcpHandle receivedEvent:type:extra:forMode:]
(self=0x81e81e0, _cmd=0x402405f8, data=0x80d57f0, type=ET_RPORT,
extra=0x9, mode=0x4023ddf4) at NSSocketPort.m:1021
#11 0x401567ae in -[NSSocketPort receivedEvent:type:extra:forMode:]
(self=0x80d57f0, _cmd=0x4023dad0, data=0x80d57f0, type=ET_RPORT,
extra=0x9, mode=0x4023ddf4) at NSSocketPort.m:1933
#12 0x40145cb9 in -[GSRunLoopCtxt pollUntil:within:] (self=0x80cc850,
_cmd=0x4023dc78, milliseconds=1075, contexts=0x80c4668) at
NSRunLoop.m:835
#13 0x4014802f in -[NSRunLoop acceptInputForMode:beforeDate:]
(self=0x80c3db8, _cmd=0x4023dce8, mode=0x4023ddf4,
limit_date=0x80cb368) at NSRunLoop.m:1972
#14 0x4014837e in -[NSRunLoop runMode:beforeDate:] (self=0x80c3db8,
_cmd=0x40249080, mode=0x4023ddf4, date=0x80cd590) at NSRunLoop.m:2042
#15 0x4017d993 in -[NSURL resourceDataUsingCache:] (self=0x81b44f0,
_cmd=0x4022bc90, shouldUseCache=1 '\001') at NSURL.m:1361
#16 0x400f31ca in +[NSData dataWithContentsOfURL:] (self=0x4022bb80,
_cmd=0x40242ab8, url=0x81b44f0) at NSData.m:459
#17 0x4015d7af in -[NSString initWithContentsOfURL:] (self=0x8054558,
_cmd=0x40242908, url=0x81b44f0) at NSString.m:1361
#18 0x4015c57c in +[NSString stringWithContentsOfURL:]
(self=0x40242600, _cmd=0x40532340, url=0x81b44f0) at NSString.m:547
#19 0x40529a14 in -[MMYahooTextLineQuote fetch] (self=0x818c110,
_cmd=0x40530d58) at MMYahooTextLineQuote.m:228
#20 0x401d0fa7 in L10 () from
/usr/GNUstep/System/Library/Libraries/libgnustep-base_d.so.1
#21 0x0818c110 in ?? ()
#22 0x40530d58 in _OBJC_SELECTOR_TABLE () from
/usr/GNUstep/Local/Library/Libraries/libMultiMarket.so.1
#23 0x081b2970 in ?? ()
#24 0x00000001 in ?? ()
Thanks for any help
Phil
- Fetching with NSUrl/NSTimer and accepting Input from DO --> Double Release,
Philip Mötteli <=