Friday, November 24, 2006

Prototype.js crashes IE6 on some computers

On a very big site I'm working with some users started contacting us about crashes when they were just entering the page! The Error message said:
AppName: iexplore.exe AppVer: 6.0.2900.2180 ModName: kernel32.dll 
ModVer: 5.1.2600.2945 Offset: 00012a5b

The KERNEL32.DLL file is a 32-bit dynamic link library file that is found in Windows. The KERNEL32.DLL file handles memory management, input/output operations, and interrupts.

I was unable to recreate the error on any test machine but with som help from visitors I managed to narrow it down to the prototype.js library. We directed them to some others sites using the library and shure enough, those sites were chrashing as well!

I really need to keep prototype or else I have to refactor massive ammounts of code! But it's really hard trying to find what part of prototype causes these crashes when I cant recreate it myself! And I cant find any information about this problem when googling for it!

Note: The site have had more than 2 million unique visitors sense we implemented the Prototype JavaScript Framework and only 6 visitors have reprted problems!

If someone has heard of this before. Please leave a comment!!!

My lead right now: [Rails-spinoffs] Re: IE 6 SP1 crashes on pages with Scriptaculous - SOLVED

OK. It is a Browser Helper Object BHO found in some Dictionary software that triggers the crash! Cambridge Advanced Learner's Dictionary and the Oxford Advanced Genie have this plugin (that translates words on the page) made by the Danish company textWare (that don't seem to exist anymore). Removing the BHO or simply disabling third-party browser extenstions does the trick.

But I'm not satisfied with this, I really don't want to build sites on top of a framework that can crash the entire browser, even though that only happens with some perhaps very badly written BHOs. I still have a hard time reproducing the error myself, hopefully I can contact some visitor that experieced it again and find out exactly at what line i prototype it occurs!


Anonymous Anonymous said...

Did you find a solutions this problem?
I've the same problem on some of my clients computers. My first thought was that i should detect tis add-on before i direct to site with prototype.js. But I can't find good method to detect QuickFind BHO add-on on IE. I will appreciate any kind of help. Thank's. I will promise share my solutions if I will find first ;)


9:41 AM  
Blogger SnoboJohan said...

No progress so far for me... Haven't been able to reproduce the error myself (and have not had time to work on it for a week)! Do you know where I can download an app that includes this BHO? Thanks!

6:15 PM  
Anonymous Christian said...

I have run into the same problem with two sites :-(

If the clients have "Vinterberg & Bodelsen, dansk-engelsk" wich searces in the big red book "Gyldendals store røde Dansk-Engelsk" danish to english created by TEXTware A/S.

I will now cut out the script down to it fits my needs.

I will return, later on

2:01 PM  
Blogger SnoboJohan said...

Please let me know if you find out what part of the script causes this... Still can't find anything to download that have TEXTware plugins!

3:09 PM  
Anonymous Christian Palm said...

Snobe Johan I found the line causing the crash in prototype :-)

I will make a blog post about it, but it is this line:
var Event = new Object();

The Browser Helper Object is onmousemove creating a variable named Event, and then the crash is happening.

The solution is to rename Event to EventAnotherName and replace (with care) in prototype.js and update all your call to Event. from you code

More info at my blog, when the blog post is ready.

2:10 PM  
Blogger Ehsun Behravesh said...

I'm experiencing this error on my desktop computer - win XP - after I upgraded to IE 7 from IE 6. Only when I'm testing my website which is developed with prototype.js. I have experienced this before in the same machine with IE 6 too :(
Please let me know any solution that u may find.

ehsun7b at gmail dot com

7:02 AM  

Post a Comment |

« Home

Powered by Blogger Weblog Trackback by