如何在崩溃后调试崩溃报告者的行为?

时间:2015-12-22 22:18:37

标签: c++ debugging google-breakpad

我使用Google Breakpad在Mac和Windows上报告C ++应用程序崩溃。在这两个平台上,Breakpad通过为未捕获的异常注册处理程序来工作。该处理程序由通常会使进程崩溃的大多数事件触发,例如取消引用空指针。

但是现在我有一个没有调用处理程序并且进程崩溃到OS崩溃报告器的场景。它是100%可重现的,但我无法调试它,因为将调试器附加到进程会抢占未捕获的异常处理程序。

什么技术(除了大量的printfs之外)可以帮助我跟踪代码流的去向,如果不是我的处理程序?我想我想要一些IDE设置让我的调试器(Visual Studio和/或Xcode)跳过空指针取消引用并进入C ++运行时的处理程序代码。但其他技术也会受到欢迎。

我在这里对问题场景进行了极少的再现:https://bugreports.qt.io/browse/QTBUG-50061

0 个答案:

没有答案