2010-10-27 6 views
0

J'ai une application appelée Flick Background (je suis le développeur). Cela fonctionne bien sur Leopard, mais ne fonctionne pas sur Snow Leopard (se bloque lors du téléchargement d'une image). Voici le journal de l'accident (une partie est retirée, car elle contient des informations personnelles):Crashes dans le léopard des neiges, pas léopard

Process:   Flick Background [8591] 
Path:   <<hidden>> 
Identifier:  com.alexy.Flick Background 

Exception Type: EXC_BAD_ACCESS (SIGSEGV) 
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000020a38928 
Crashed Thread: 0 Dispatch queue: com.apple.main-thread 

Thread 0 Crashed: Dispatch queue: com.apple.main-thread 
0 libobjc.A.dylib     0x916caee4 objc_msgSend + 36 
1 com.apple.CFNetwork    0x969ac054 URLDownload::willSendRequest(_CFURLRequest const*, _CFURLResponse*) + 56 
2 com.apple.CFNetwork    0x9694a0a7 URLConnectionClient::getRequestForTransmission(_CFURLResponse*, _CFURLRequest const*, __CFError**) + 413 
3 com.apple.CFNetwork    0x96949b2f URLConnectionClient::_clientWillSendRequest(_CFURLRequest const*, _CFURLResponse*, URLConnectionClient::ClientConnectionEventQueue*) + 223 
4 com.apple.CFNetwork    0x969ce456 URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) + 148 
5 com.apple.CFNetwork    0x9694994e URLConnectionClient::processEvents() + 94 
6 com.apple.CFNetwork    0x969497ef MultiplexerSource::perform() + 183 
7 com.apple.CoreFoundation   0x910d90fb __CFRunLoopDoSources0 + 1563 
8 com.apple.CoreFoundation   0x910d6bbf __CFRunLoopRun + 1071 
9 com.apple.CoreFoundation   0x910d6094 CFRunLoopRunSpecific + 452 
10 com.apple.CoreFoundation   0x910d5ec1 CFRunLoopRunInMode + 97 
11 com.apple.HIToolbox    0x94426f9c RunCurrentEventLoopInMode + 392 
12 com.apple.HIToolbox    0x94426c8d ReceiveNextEventCommon + 158 
13 com.apple.HIToolbox    0x94426bd6 BlockUntilNextEventMatchingListInMode + 81 
14 com.apple.AppKit     0x91bbba89 _DPSNextEvent + 847 
15 com.apple.AppKit     0x91bbb2ca -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 156 
16 com.apple.AppKit     0x91b7d55b -[NSApplication run] + 821 
17 com.apple.AppKit     0x91b755ed NSApplicationMain + 574 
18 com.alexy.Flick Background  0x00001cfa start + 54 

Ce que je vois est que lorsque les téléchargements d'images, de plantage de mon application. Ma première conclusion est que ce que j'utilise pour télécharger l'image est déprécié dans Snow Leopard.

Je n'ai pas de machine à léopard des neiges, donc je ne peux pas localiser l'erreur directement. Cela fait partie du code que je pourrais penser est la cause du problème:

NSError *error = nil; 
NSData *initalizedUrl = [NSData dataWithContentsOfURL: [NSURL URLWithString:@"URLHERE"] options:0 error:&error]; 
NSString *rawContents = [[NSString alloc] initWithData:initalizedUrl encoding:NSASCIIStringEncoding]; 

Je suis presque sûr à 100% que ce problème sera résolu dans le léopard des neiges.

+0

Pourquoi pensez-vous que le code cause le problème? À quoi ressemble votre journal de bord après l'avoir symbolisé? (Vous * enregistrez le paquet dSYM de chacune de vos versions, non?) –

+0

Je pense que c'est ce code parce que c'est la seule fonction qui télécharge quelque chose. J'ai déplacé ma fenêtre principale rapidement et je fuyais des centaines d'objets, j'ai découvert plus tard. Je n'ai même pas commencé le processus de téléchargement. Hmm ... – alexy13

+0

Eh bien, si vous ne libérez pas l'objet NSString, ce serait l'une des fuites. L'instrument Leaks vous en dira plus. Vous devriez toujours symboliser le journal des accidents; alors vous serez en mesure d'aller aux lignes exactes de votre code que votre programme était quand il s'est écrasé. –

Répondre

0

Ce problème a été corrigé lors de la mise à niveau vers Snow Leopard.

Questions connexes