Opened 11 years ago

Closed 10 years ago

Last modified 10 years ago

#7156 closed defect (fixed) IE6 stack overflow

Reported by: ziy Owned by: Shane O'Sullivan
Priority: high Milestone: 1.4
Component: Dojox Version: 1.1.1
Keywords: stack overflow ie6 image gallery slideshow Cc: dante
Blocked By: Blocking:


This has been occuring on my site and it also happens on:

On first load everything displays correctly, but when you nagivate back to the page you get stack overlow line 0. IE6 somtimes also reports a script is running slowly.

I don't get the error on refesh, only when going to the address bar and hitting enter. So when someone is navigating around a site it does show up if they revisit a page.

Change History (14)

comment:1 Changed 11 years ago by Adam Peller

Owner: changed from Adam Peller to phiggins

comment:2 Changed 11 years ago by dante

Owner: changed from phiggins to dante

comment:3 Changed 11 years ago by dante

Milestone: tbd1.3

actually getting a lot of reports of this. targeting 1.3, but hopefully find a quick solution before 1.2.

comment:4 Changed 11 years ago by ziy

A quick note about this problem.

With a clear cache it takes a few loads to appear, depending on the number of images.

I have noticed that each image is generated with a "img_dojox_image_ThumbnailPicker_0_1"

But after reloading a few times this increases.

img_dojox_image_ThumbnailPicker_0_1 img_dojox_image_ThumbnailPicker_1_1 img_dojox_image_ThumbnailPicker_2_1 img_dojox_image_ThumbnailPicker_3_1

And it just keeps going. I would suggest it just stays on img_dojox_image_ThumbnailPicker_0_1 as this doesn't have the error on first loads.

comment:5 Changed 11 years ago by Mina R Waheeb

This bug exist in dojox.image.ThumbnailPicker? too, Any idea when it will be fixed or any available work around?

comment:6 Changed 11 years ago by dante

This bug is caused by ThumbnailPicker, as Gallery is just a template combining it and SlideShow -- Ideally, the picker would be replaced with a dojox.widget.Pager and try to maintain the API. The milestone is set for 1.3, I'd hoped to get in earlier but was not feasible.

comment:7 Changed 10 years ago by dante

Cc: dante added
Milestone: 1.3future
Owner: changed from dante to sos

can we verify if this still exists? Another patch addressed part of it, but not finding that atm.

comment:8 Changed 10 years ago by andruhon

If I decrease pageSize from 20 to 14 - this problem disappears.

comment:9 Changed 10 years ago by Shane O'Sullivan

Milestone: future1.4
Owner: changed from sos to Shane O'Sullivan
Status: newassigned

comment:10 Changed 10 years ago by Shane O'Sullivan

(In [20598]) Refs #7156, #9717 Fixes the issue with the Gallery where the ThumbnailPicker? would not display pictures correctly if contained in a TabContainer?. Also fixes the stack overflow issue in IE. This was caused by onload events on images triggering the loading of the next image, which led to a very deep call stack. It was solved by adding a timeout of 0ms when invoking the method to load the next image.

comment:11 Changed 10 years ago by Shane O'Sullivan

Resolution: fixed
Status: assignedclosed

comment:12 Changed 10 years ago by bhupindersingh

I am using dojo on my website to show images using the gallery component and every time the gallery loads using images from the cache it gives me a "Stack Overflow at line:0". This happens in IE6 and IE7. The defect also occurs only when the number of images on the gallery are more than 12. If I clear my cache it does not give me this error popup. I am using dojo build 1.2.0. As mentioned in this post the defect has been fixed and the fix is to add a 0ms delay to the call to the callback method. I tried to add this fix to the thumbnail picker js file but it does not work for me on IE7. I am not sure if the above fix for IE6 does resolve this issue on IE7 aswell. Any help will be highly appreciated.

comment:13 Changed 10 years ago by bhupindersingh

The code currently uses a recursive technique in the thumbnail picker to load the images. I replaced that code with a non-recursive for loop which solves the problem for me. I tested the code for 60 images and it worked just about fine for me. In case any one is interested I can share the snippet of code that I changed to fix the issue.

comment:14 Changed 10 years ago by Shane O'Sullivan

bhupindersingh, have you tested the latest code on your site? A number of changes have gone in since 1.2, not just on this ticket. I can no longer replicate the stack overflow issue on IE6, whereas I could replicate if very easily before this change.

Note: See TracTickets for help on using tickets.