转载自:http://stackoverflow.com/questions/2295295/warning-check-safe-call-could-not-restore-current-frame
|
0
down vote
favorite
1
share [g+]
share [fb]
share [tw]
What does the errorwarning: check_safe_call: could not restore current frame
usually indicate? I've read in other places that it's a memory issue. Is it always a memory problem?
I'm getting this error on the device (not the simulator).NSZombieEnabled
shows nothing. If I Build and Debug,my debugger window shows nothing. The peak memory isn't that high (3MB). It just crashes with the same error every time after scrolling around a map.
Any ideas how to debug this? Thanks.
Edit:I added the reason for my crash in an answer below (creating too many SQLite connections). If anyone else gets this error and finds their solution,please post it below. It seems like an error message with multiple causes.
iphone
objective-c
cocoa-touch
xcode
link
|
improve this question
edited
Feb 24 '10 at 12:43
asked
Feb 19 '10 at 9:47
nevan king
14.6k
8
37
82
79% accept rate
–
Brian Liang
feedback
4 Answers
active
oldest
votes
up vote
2
down vote
accepted
I've seen this a few times,but never been able to actually pinpoint it to a problem outright.Although,the times I've seen it usually there has been some kind of infinite loop or recursion gone wrong and the debugger will catch it.I don't know if you've left it long enough,but after a while,the debugger should start to load the stack frames it does have and display them in the debugger window. There you should be able to see what is going wrong.
Like I said,usually when I've seen this its been due to infinite loops or recursion and the debugger will show upwards of 5000 calls to the same function,so finding the problem shouldn't be too difficult - but,saying that,it may not be the exact issue.
Just my two cents.
|
improve this answer
answered
Feb 19 '10 at 16:59
Jasarien
22.2k
7
44
83
–
Brian Liang
feedback
0
down vote
This warning also may happens when to use stack based block out of the scope the block defined without copying it.
http://developer.apple.com/library/mac/documentation/cocoa/Conceptual/Blocks/Articles/bxUsing.html#//apple_ref/doc/uid/TP40007502-CH5-SW2
http://www.friday.com/bbum/2009/08/29/blocks-tips-tricks/
|
improve this answer
answered
Jan 19 at 0:54
hiroshi
591
3
6
feedback
down vote
I found the error in my code. It turns out that the SQLite database I was using was causing the crash. I was forgetting to close my database connection,and each time the code hit a particular function,I'd open a new connection. Eventually there were too many,and the app crashed.
It's looking like a lot of these errors are to do with a kind of overload (as Jasarien says).
|
improve this answer
answered
Feb 24 '10 at 12:41
82
feedback
down vote
I came accross this problem too but I found that it was caused by an image that was at too high a resolution. It would work perfectly in the simulator but not on the device. I resized the image to 320x480 pixels at 180 pixels per inch and now it works perfectly.
Hope that helps
|
improve this answer
answered
Feb 24 '10 at 11:54
Callaghan001
10
2
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!