加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

warning: check_safe_call: could not restore current frame

发布时间:2020-12-12 20:34:28 所属栏目:百科 来源:网络整理
导读:转载自: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 error warning: check_safe_call: could not restore current fram

0
down vote favorite 1 share [g+] share [fb] share [tw]

What does the errorwarning: check_safe_call: could not restore current frameusually 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).NSZombieEnabledshows 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.6k83782
79% accept rate What exactly are you doing?– Brian Liang Feb 19 '10 at 17:02 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.2k74483This was the exact issue I had that caused the error.– Brian Liang Feb 19 '10 at 17:06 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
59136 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
102

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

转载自:http://stackoverflow.com/questions/2295295/warning-check-safe-call-could-not-restore-current-frame

    推荐文章
      热点阅读