diff options
Diffstat (limited to 'toolkit/components/thumbnails/test/thumbnails_crash_content_helper.js')
-rw-r--r-- | toolkit/components/thumbnails/test/thumbnails_crash_content_helper.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/toolkit/components/thumbnails/test/thumbnails_crash_content_helper.js b/toolkit/components/thumbnails/test/thumbnails_crash_content_helper.js new file mode 100644 index 000000000..935175f86 --- /dev/null +++ b/toolkit/components/thumbnails/test/thumbnails_crash_content_helper.js @@ -0,0 +1,31 @@ +/* Any copyright is dedicated to the Public Domain. +* http://creativecommons.org/publicdomain/zero/1.0/ */ + +var Cu = Components.utils; + +// Ideally we would use CrashTestUtils.jsm, but that's only available for +// xpcshell tests - so we just copy a ctypes crasher from it. +Cu.import("resource://gre/modules/ctypes.jsm"); +var crash = function() { // this will crash when called. + let zero = new ctypes.intptr_t(8); + let badptr = ctypes.cast(zero, ctypes.PointerType(ctypes.int32_t)); + badptr.contents +}; + + +var TestHelper = { + init: function() { + addMessageListener("thumbnails-test:crash", this); + }, + + receiveMessage: function(msg) { + switch (msg.name) { + case "thumbnails-test:crash": + privateNoteIntentionalCrash(); + crash(); + break; + } + }, +} + +TestHelper.init(); |