Smart Crash Reporter - Plex Blog

Smart Crash Reporter

| 29 Jul 2008 | by 15 Comments

I’m glad the new version of Smart Crash Reporter installed for more people, the reports are pouring in this morning. The good news is that the majority are clustered around the same few issues, so it definitely helps us focus our attention.

To the people who took the time to write in the crash report a quick description of what they were doing at the time of the crash, grazie mille!! That really helps. And if you said “no” to the installer but changed your mind, you can install it from here.


Share this

15 Comments so far

  1. PlexUsr July 29th, 2008 1:38 pm

    Just wanted to say that it’s great that you guys maintain good communication and transparency of your development process through this blog.

    Plex, even in this early state, is good enough that I’ve retired my long-used xbox. Now that I can play HD content through my Macbook with Plex, the aging xbox hardware can’t compete.

    Looking forward to future releases.
    Keep up the great work!

  2. rukiddin July 29th, 2008 2:01 pm

    I opted to install it, but only got the normal apple error reporting request. Is that the report I should be filling out? I’ll try it again.

  3. elan July 29th, 2008 2:03 pm

    @rukiddin: It looks like the regular Apple Reporting dialog (and it is, in fact), but there should be an extra button at the button “Send to Plex and Apple” in addition to the “Send to Apple” button.

  4. Mickey July 29th, 2008 7:15 pm

    I installed, but I only have “Send to Apple” and “Send to Apple and Insanity” ??? not “To Plex” ??? What do I have to do to send to Plex ??

    BTW, my crash was consistently when, for videos at least, clicking to change the sort criteria (episode, names, etc.) in an empty TV show folder.

  5. Mickey July 29th, 2008 7:15 pm

    Unsanity* sorry :)

  6. chris July 29th, 2008 9:45 pm

    This is a great tool! I can’t seem to locate the source in your git tree and is down. Could you point me to the source?

  7. d4rk July 29th, 2008 9:46 pm

    Hi Elan, thanks for the credit.

    If I’m not mistaken, Smart Crash Reporter is neither GPL nor open source? If that’s the case, you can’t link any GPL code to it (SmartCrashReportsAPI.o and SmartCrashReportsInstall.o). There are some good open source alternative like Breakpad:

    and Socorro:

    However, if you still want to continue using Smart Crash Reporter, it could be linked against another process that in turn spawns Plex or something.

  8. chris July 29th, 2008 9:59 pm

    nm, it was my dns. but now i see it’s not open source :(

  9. mdpdb July 30th, 2008 5:08 am

    @d4rk: There’s no linking to proprietary binaries to use Smart Crash Reporter. The only change to the application is to include two properties in the application’s Info.plist.

  10. d4rk July 30th, 2008 6:23 am

    Sure it is linked to proprietary binaries, and it’s obvious by looking at the project file and easily verified by doing an ‘nm Plex | grep Unsanity’ and ‘nm Plex | grep Crash’. Both list a bunch of symbols to which I couldn’t find the source. Are they available elsewhere?

    # nm Plex | grep Crash
    00051f23 T _InstallCrashReporter
    00abb6a0 D _gSmartCrashReportsArchive
    00ab65c0 D _gSmartCrashReportsInstallUI

    # nm Plex | grep Unsanity
    00818a4d T _UnsanitySCR_CanInstall
    00818ab4 T _UnsanitySCR_Install
    00818599 T _UnsanitySCR_InstallableVersion
    00818759 T _UnsanitySCR_InstalledVersion
    00817d09 T _UnsanitySCR_IsMatchSpecifierRegistered
    00817ebb T _UnsanitySCR_RegisterMatchSpecifier
    00817e22 T _UnsanitySCR_UnregisterMatchSpecifier
    00817892 T __UnsanitySCR_ArrayCompare
    008179ee t __UnsanitySCR_CopyRulesArray
    008185a3 t __UnsanitySCR_CreateURLToSCRBundle
    00817752 t __UnsanitySCR_FindInArray
    008175fb t __UnsanitySCR_IsMatchSpecifierValid
    008186ef t __UnsanitySCR_PathToSCRBundle
    008180ef T __UnsanitySCR_RecursiveIsSecureInputManager
    00819d72 T __UnsanitySCR_RestoreArchive
    00817668 t __UnsanitySCR_StoreRulesArray
    0081896a t __UnsanitySCR_WaitOnPipe

  11. mdpdb July 30th, 2008 6:32 am

    “Sure it is linked to proprietary binaries”

    “Both list a bunch of symbols to which I couldn’t find the source.”

    You’re assuming those symbols weren’t injected by the OS at runtime, which is actually pretty common in Obj-C land. Like I said, the only change to the application is adding a few properties to a config file. The documentation of this is available here:

    I’m not affiliated with this project, and I’m not even really a user of it (I’ve launched it and played with it a few times, never actually watched anything in it), so I say this without prejudice: It seems to me you guys need to call off the OSS witch hunt, or at least do enough research to deterministically back up your claims before jumping on this project’s case. This isn’t the first time I’ve happened on one of these threads where there have been overreaching accusations of breaking the XBMC license.

  12. d4rk July 30th, 2008 7:09 am

    “You’re assuming those symbols weren’t injected by the OS at runtime, which is actually pretty common in Obj-C land.”

    I’m not assuming anything, and you wouldn’t have to either if you read the man page of ‘nm’, they’re not objc messages. I’ll ignore the rest of your out of context sympathy inspiring post.

  13. mdpdb July 30th, 2008 7:30 am

    You’ll ignore the fact that the project files don’t link against closed source, too, apparently.

  14. d4rk July 30th, 2008 8:08 am

    No I didn’t and yes it does. Anyway, my post was an FYI to the Plex _dev_ team not to their clueless $2 PR troll.

  15. mdpdb July 30th, 2008 8:14 am

    Show me the source in this project that makes any mention of this Unsanity stuff. Because if “stuff I can find with nm” counts, one could *never* release any GPL code in a Cocoa app, since Cocoa is closed-source. The GPL leaves what constitutes “linking” vague for a reason.

    Your cheap insults don’t help your argument, either. Learn to behave.