17

I've been trying to track this one for literally a month now without any success. I have this piece of code on an car advertising website which basically allows thumbnails to rotate in search results given that a car has multiple pictures. You can see it in action at the following:

http://www.abcavendre.com/4506691919/

It is built on the mootools 1.2 framework. The problem is that this script, under Firefox 3, consumes a rather large amount of memory overtime when a page is full of those rotating pictures, such as this inventory page:

http://www.abcavendre.com/Vitrine/Israel_Huttman/

You can see the source of the script in question here:

http://www.abcavendre.com/scripts/showcase_small.js

Any ideas as to what is causing the memory leak? The weird thing is this code behaves properly under IE7.

3
  • Did you solved it? If yes, what was the problem? Commented Oct 15, 2008 at 2:26
  • I did not manage to solve it. I am getting valuable information from the Leak Monitor Addon. I'm still working on it. Commented Oct 15, 2008 at 4:08
  • 7
    Disable Firebug if its enabled in any way. Commented Oct 17, 2008 at 10:50

3 Answers 3

8

A way to track memory leaks in Firefox is with the Leak Monitor Addon. It shows memory leaks of javascript (including extension-scripts).

Please remind that the plugin will sometimes show leaked objects that will get cleaned up later by the garbage collection. If that is the case the plugin will launch a new window showing you the new status.

Sign up to request clarification or add additional context in comments.

4 Comments

You missed : after https, so SO makes a curious URL sending to TheEdge... :-)
Seeing as SO is an English-language site, you might want to provide an English-language link: addons.mozilla.org/en-US/firefox/addon/2490
Leak monitor no longer works with any of the modern versions of Firefox :-(
it's so sad that last addon's update have been made 5 years ago
0

Update to MooTools 1.2.1, we've improved garbage collection and leak handling.

Comments

0

Try nulling elements variable array in the end of the initialize function

    ...

    if (ads.length > 0)
        {
        this.imagesFx = new Fx.Elements(elements,
            {
            wait: false,
            duration: 1000
            });
        this.moveNext.periodical(2500, this);
        }

    elements = null; //Add THIS!
}

1 Comment

That wouldn't explain the memory leak happening overtime (with no page refresh) as the initialize function is called only once per page.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.