Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macOS Sierra: AppKit turns some exceptions into crashes with annotations which KSCrash does not report #181

Open
depth42 opened this issue Nov 14, 2016 · 0 comments

Comments

@depth42
Copy link

depth42 commented Nov 14, 2016

Crashes which occur during view drawing under macOS Sierra get caught by AppKit and are directly turned into crashes with private annotations which KSCrash does not pick up.

Here is an example of such a crash reported by the Apple crash reporter and by KSCrash:
AppleCrash.txt
KSCrash.txt

I suggest, KSCrash should implement picking up this information using the private annotations structure:

#define CRASH_ALIGN __attribute__((aligned(8)))
typedef struct {
    unsigned    version   CRASH_ALIGN;
    const char *message   CRASH_ALIGN;
    const char *signature CRASH_ALIGN;
    const char *backtrace CRASH_ALIGN;
    const char *message2  CRASH_ALIGN;
    void       *reserved  CRASH_ALIGN;
    void       *reserved2 CRASH_ALIGN;
} crash_info_t;

    crash_info_t* infoPtr = (crash_info_t*)getsectdatafromFramework("AppKit", "__DATA", "__crash_info", &size);

You can learn more about these structures at https://alastairs-place.net/blog/2013/01/10/interesting-os-x-crash-report-tidbits/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant