2012-10-19 36 views
2

我有一个基于文档的应用程序。自升级到XCode 4.5.1(从4.4开始)当我从Xcode调试应用程序时,NSOpenPanel崩溃。当我直接启动程序时它不会崩溃。当使用Xcode 4.5.1进行调试时,NSOpenPanel崩溃

我在两种情况下使用NSOpenPanel:当用户从“文件”菜单中选择“打开”(因为它是一个基于文档的应用程序,我自己的代码都不涉及)以及将一些数据导入到我的文档(所以它被我自己的代码调用)。 NSOpenPanel在两种情况下都会崩溃(对话框会打开,但在我可以执行任何操作之前,会引发异常)。

我做了干净的尝试,从苹果LLVM切换到LLVM GCC和调试器从LLDB到GDB,但没有变化。

这是我的导入代码:

long result; 
NSArray *fileTypes = [NSArray arrayWithObjects: @"txt", @"csv", @"text", 
         NSFileTypeForHFSTypeCode('TEXT'), nil]; 
NSOpenPanel *oPanel = [NSOpenPanel openPanel]; 

[oPanel setAllowsMultipleSelection:NO]; 
[oPanel setAllowedFileTypes:fileTypes]; 
[oPanel setMessage:@"Please select import file:"]; 

result = [oPanel runModal]; 

看来期间代码签名检查某处崩溃(我的应用程序没有代码签字):

stack trace

我必须设置启动一个新项目?任何帮助表示赞赏...

非常感谢。

回答

12

我发现原因:我有一个断点设置为“所有异常”。当我禁用它或选择“评估后自动继续”时,它可以工作。我猜它与App Sandbox有关。

相关问题