Since http://hg.mozilla.org/mozilla-central/rev/9521cf441d3a, (and http://hg.mozilla.org/mozilla-central/rev/e1d2e090c9a6), NS_RUNTIMEABORT appends the error string to crash report App Notes in libxul-builds/apps. As we've already added the string, it ends up repeated, and we get app notes such as "X_CloseDevice: XI_BadDevice (invalid Device parameter); 9 requests agoxpcom_runtime_abort(###!!! ABORT: X_CloseDevice: XI_BadDevice (invalid Device parameter); 9 requests ago: file /builds/slave/cen-lnx64-ntly/build/toolkit/xre/nsX11ErrorHandler.cpp, line 190)"
Oops! Unless there are existing tools that break when trying to parse the error string inside of the "xpcom_runtime_abort()", the simplest fix would be to switch the RUNTIMEABORT() in nsX11ErrorHandler to a direct mozalloc_abort().
Created attachment 514416 [details] [diff] [review] 't add X11 error app notes when they will be added during NS_RUNTIMEABORT
Comment on attachment 514416 [details] [diff] [review] 't add X11 error app notes when they will be added during NS_RUNTIMEABORT cjones pointed out that NS_RUNTIMEABORT doesn't handle forwarding from plugin processes, so this (on its own, at least) is not good.
Need bug 581341 for that.
Created attachment 516784 [details] [diff] [review] call mozalloc_abort directly to skip NS_RUNTIMEABORT adding X11 error app notes again As suggested by cjones in comment 1. This also happens to workaround the double message output of NS_DebugBreak and in debug builds the double stack dump. It loses the "###!!! ABORT", but I'm not too worried about that.
Created attachment 521449 [details] [diff] [review] updated patch Some platforms (maemo, linux64 opt + debug) need the header explicitly included now.
Bug 581341 is making progress and, with that fixed, it would make sense to use NS_RUNTIMEABORT and fix the problems with NS_DebugBreak for all clients.