2009-12-06 8 views
0

mon application se bloque avec EXC BAD ACCESS
J'ai ajouté NSZombieEnabled = YES aux arguments de mon exécutable.
il me donne ce journal:
[Communiqué CFArray]: message envoyé à l'instance désallouées 0x3c26340
et les accidents qui ne se produit que sur la première fois que l'application est installée sur le simulateur .. je presse Build and Go de nouveau les travaux d'application Comme il se doit.se bloque iphone à la première installation

étant donné que l'adresse 0x3c26340 n'est pas l'adresse NSArray sur laquelle l'application se bloque. (après avoir défini les points d'arrêt je l'ai découvert se bloque sur l'accès NSArray mais pas avec l'adresse indiquée dans le journal !!!!!!!!!)

également cette adresse est la même adresse lorsque je supprime l'application du simulateur et se bloque à nouveau sur la première installation. (L'adresse reste la même !!!!)

quelqu'un peut-il aider s'il vous plaît?

merci à l'avance

+0

Non sans code. Vous créez probablement un objet à partir de données stockées. Lorsque les données n'existent pas, vous créez le tableau mais vous ne le retenez pas, ce qui aurait été fait lors du stockage des données. Je l'ai eu dans le passé et j'ai cherché le problème pendant un bon moment, mais finalement résolu en vérifiant toutes mes «fetchs» de données stockées. – Joost

+0

J'ai vérifié toutes les adresses de mémoire dans la fenêtre de débogage avant que l'application plante et aucune instance n'a cette adresse .. la chose la plus étrange est que l'adresse reste la même –

Répondre

0

La première chose dont vous avez besoin est une trace de la pile, ou à tout le moins la dernière fonction appelée avant l'accident, pour savoir exactement ce que variable tableau est sali avec à l'accident.

L'autre chose qui pourrait éventuellement se produire est un tableau accédé sans être correctement initialisé. Cela entraînerait la variable d'avoir un nombre cohérent qui n'est pas l'adresse de n'importe quel objet. J'irais toujours avec le commentaire de JoostK que cela a quelque chose à voir avec un objet stocké qui est créé après la première exécution de l'application.

+0

merci pour la réponse, j'ai révisé tous les paramètres de chemins de code points d'arrêt et en vérifiant toutes les valeurs de variables et donc, vous savez bien qu'il n'y a pas de stacktrace fourni pour ce genre d'exceptions, et bien sûr je pensais faire un point de rupture à chaque étape :) mais le fait est qu'il se bloque entre l'appel de 2 fonctions juste au milieu de nulle part qui me rend fou! –

Questions connexes