Opened 14 years ago
Closed 14 years ago
#4080 closed bug (invalid)
Infinite recursion in speed method
Reported by: | wichert | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 1.3.2 |
Component: | core | Version: | 1.3.1 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
I have a reasonably simple overlay routine which inserts a few divs with a basic animation, and can remove then again after a fade. After upgrading to 1.3.1 this only works once: after trying to insert the divs in the DOM and reveal them a second time I get an infinite recursion in this code in jquery-1.3.1.js (lines 3847 to 3852):
opt.complete = function(){ if ( opt.queue !== false ) jQuery(this).dequeue(); if ( jQuery.isFunction( opt.old ) ) opt.old.call( this ); };
opt.old.call is the same complete function, so this becomes an infinite recursion.
Change History (5)
comment:1 Changed 14 years ago by
comment:2 Changed 14 years ago by
I retested this with jquery 1.2.6: this shows the exact same problem.
comment:3 Changed 14 years ago by
Can you provide a simple test case? Often when I see this it is due to event bubbling causing the recursion; the test case would tell us a lot.
comment:4 Changed 14 years ago by
I'll try to create one. In the meantime here is a page which shows this problem: http://demo.simplon.biz/Plone-UI-2009/Prototype/trunk/screens/index-editBar.html
You can trigger the problem by clicking on the hand-and-pencil icon in the top right and then clicking on the cancel button that appears at the top right. The second time you do that you'll get the infinite recursion.
comment:5 Changed 14 years ago by
Resolution: | → invalid |
---|---|
Status: | new → closed |
Please reopen with a test case if the problem still exists.
Further debugging shows that this statement is the culprit:
With the options defined as follows:
overlay
is a collection containing a div element with about 20 child nodes.