You can clone with
An old script of mine makes Firefox crash with current releases of Greasemonkey.
I use Firefox 15.0 on Ubuntu 12.04.1 LTS on 64bit AMD.
Steps to reproduce the error:
1) Install Amalgam 1.9.3: http://userscripts.org/scripts/version/13348/372734.user.js
2) Open: http://en.wikipedia.org/wiki/Cat
3) Mark some text using the mouse and release the mouse buttom. (Other events like hovering the mouse over a link will sometimes also trigger a crash)
Results for different releases of Greasemonkey:https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/versions/1.0
Crash (First try: Firefox hangs with 0% CPU usage, Second try: real crash)
The script makes heavy use of EventListeners. Commenting out all occurences of addEventListener helps against crashes (but reduces functionality, of course). Updating the metadata with @grant does not make any difference.
Here's a heavily reduced testcase: https://gist.github.com/3597309
The GM_getResourceURL call is just to get the current script's UUID so the script protocol handler actually looks for a matching resource. The crash then happens because no matching resource can be found, and so newChannel implicitly returns undefined, which probably leads to a null pointer dereference.
Thanks Ventero, updated the title to reflect your findings.
Fix crashes with a nonexistent greasemonkey-script: URL.