Skip to main content

Search and Top Navigation

#7670 closed bug (wontfix)

Opened August 26, 2011 09:31AM UTC

Closed August 31, 2011 12:11AM UTC

Last modified August 31, 2011 07:20PM UTC

IE6 crashing when using window.location.reload for callback

Reported by: glipman Owned by:
Priority: minor Milestone: 1.9.0
Component: ui.dialog Version: 1.8.14
Keywords: Cc:
Blocked by: Blocking:
Description

Within our complex application we use modal dialogs. Sometimes we provide windows.location.reload as callback to refresh the page after closing.

With IE6 and jQuery UI 1.7.2 this has worked fine for two years

Recently we upgraded to UI 1.8.14 and now IE6 crashes

Crash IE6 with 1.8.14: http://jsfiddle.net/2Gn4w/10/

No problem with 1.7.2: http://jsfiddle.net/2Gn4w/7/

Note: it seems the crash occurs even before windows.location.reload is being called, just passing it in is causing the problem.

I do have a workaround: http://jsfiddle.net/2Gn4w/10/

function myreload() { windows.location.reload() }

and passing myreload does not crash.

But why is it crashing with 1.8.14 and not with 1.7.2?

Attachments (0)
Change History (4)

Changed August 26, 2011 10:26AM UTC by glipman comment:1

Oops: the workaround url should be http://jsfiddle.net/2Gn4w/11/

Changed August 31, 2011 12:11AM UTC by scottgonzalez comment:2

resolution: → wontfix
status: newclosed

This happens because IE 6 won't let us iterate through window.location.reload, which is done in $.isPlainObject, which is done inside $.widget.extend. I'm not inclined to wrap the $.isPlainObject() call in a try/catch just for this one case.

Changed August 31, 2011 07:01PM UTC by glipman comment:3

Just for the record: I doubt a try/catch would help against an application (iexplore.exe) crash.

Changed August 31, 2011 07:20PM UTC by scottgonzalez comment:4

Good point, we'd have to avoid using $.isPlainObject() and do our own checks.