问题
Debugger is telling me this, when I run my app on device:
Program received signal: “EXC_BAD_ACCESS”.
mi_cmd_stack_list_frames: Not enough frames in stack.
mi_cmd_stack_list_frames: Not enough frames in stack.
I don't get information about where in code that happens. That's all I get. Any idea what that could mean?
The app crashes after that. When the device is not connected to the mac, it still crashes, so not a debugger problem.
回答1:
Building on the 4.0 sdk onto a 3.1.3 phone caused this for me.
Fixed by weak linking UIKit in the target.
回答2:
EXC_BAD_ACCESS happens when a message is sent to an object that has already been released.
I've seen "mi_cmd_stack_list_frames: Not enough frames in stack" before when trying to release something that's already been released as well.
My suggestion is to set the NSZombieEnabled environment variable and see which released object you are trying to access.
This site has a great tutorial on it: http://www.codza.com/how-to-debug-exc_bad_access-on-iphone
回答3:
I've seen this caused by at least three different kinds of problems:
• As described in the other answer, overrelease errors can do it.
• I had it happen when I was upgrading an app to use iAd and IOS 4.0. I think the problem was that I tried to use the iAd framework in the 3.0 version of the app as well, which of course isn't possible because iAd is only around in 4.0 and above.
• I had it happen when I removed a bunch of stuff from an app and recompiled, but vestiges of the old stuff were still around on the simulator. Resetting the simulator cleared the problem. What I was removing was the Flurry API. I'm afraid I don't know what, specifically, in there stuck around and caused the problem.
回答4:
I have the same issue. My solution is:Quit the Xcode and then restart it after waiting some time.
回答5:
I've got such a message when was trying to launch an app on iPhone under iOS 3.1.2 with a string like that
Class messageClass = (NSClassFromString(@"MFMessageComposeViewController"));
At the same time that works well when I use a device with iOS 4.
So I can assume that app could crash when start running on device if there are any references to iOS4-only classes.
回答6:
Creating a new project and copying all the existing files in it solved this problem for me.
来源:https://stackoverflow.com/questions/1372117/what-does-that-mean-mi-cmd-stack-list-frames-not-enough-frames-in-stack