http://bugs.winehq.org/show_bug.cgi?id=30465
--- Comment #3 from Ulrik Dickow u.dickow@gmail.com 2012-04-17 05:51:03 CDT --- Created attachment 39834 --> http://bugs.winehq.org/attachment.cgi?id=39834 Wine 1.5.1 detailed debug session with Gecko source
Here Gecko source has been installed (wine-gecko-1.5 tag in git).
We see that the JavaScript triggering the bug is the history expiration code in nsPlacesExpiration.js. It explains why the crash usually happens after 9 minutes, since this is the time before the idle timer will trigger the expiration logic.
However, there's nothing wrong with that JavaScript (related to the bug). The bug is either that JSDOUBLE_IS_INT32 is too careless about generating invalid operation exceptions, or that it isn't properly ensured that these exceptions are masked out when it runs -- and cleared before anyone unmasks the exception. Well, there are many ways to fix or avoid the problem. More on that in my next attachments.