# Memory Leak

**URL:** https://forum.kirupa.com/t/memory-leak/291574
**Category:** Uncategorized
**Created:** [July 1, 2009, 5:23pm UTC](https://forum.kirupa.com/t/memory-leak/291574 "2009-07-01T17:23:58Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![andre\_leblanc88](https://avatars.discourse-cdn.com/v4/letter/a/bbe5ce/32.png) [@andre\_leblanc88](https://forum.kirupa.com/u/andre_leblanc88)
#### Post date: [July 1, 2009, 5:23pm UTC](https://forum.kirupa.com/t/memory-leak/291574/1 "2009-07-01T17:23:58Z")

</div>

Hey, I know there are other posts on here about this problem, but I can’t seem to figure out why this isn’t working. This is a test code I wrote that is suppose to imitate a slideshow. The problem is each cycle of the code uses more memory and I don’t understand how to remove my object from memory.

```auto

import fl.transitions.*;
import fl.transitions.easing.*;
var swfLoader:Loader = new Loader;

var curPic:MovieClip = null;
var picTimer:Timer = new Timer(3000);

slideshow();

function slideshow ():void
{
    var mem:String = 'Before ' + Number( System.totalMemory / 1024 / 1024 ).toFixed( 2 ) + 'Mb';
    trace( mem );
    
    //trace("Slideshow");
    swfLoader = new Loader;
    swfLoader.load(new URLRequest("christianPic1.swf"));
    swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, picLoaded, false, 0, true)
}

function picLoaded (E:Event):void
{
    //trace("PicLoaded");
    swfLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE, picLoaded);
    curPic = E.target.content;
    container.addChild(curPic);
    
    picTimer.start();
    picTimer.addEventListener(TimerEvent.TIMER, nextPic, false, 0, true);    
}

function nextPic (TE:TimerEvent):void
{
    //trace("nextPic");
    picTimer.stop();
    picTimer.removeEventListener(TimerEvent.TIMER, nextPic);
    
    container.removeChild(curPic);
    curPic = null;    
    
    var mem:String = 'After ' + Number( System.totalMemory / 1024 / 1024 ).toFixed( 2 ) + 'Mb';
    trace( mem );
    
    slideshow();
}

```
