Preloader in external swf not working

I have a preloader in an swf which runs properly when previewed directly from flash…however when I load the swf through my main movie it just stalls at frame 1. Take away the preloader and the swf loads just fine.
I would like to keep the preloader in the external swf because my main movie is too complicated already.

This is the preloader script I’m using
bytes_loaded = Math.round(_root.getBytesLoaded());
bytes_total = Math.round(_root.getBytesTotal());
getPercent = bytes_loaded/bytes_total;
_root.loadBar._width = getPercent200;
_root.loadText = "loading "+Math.round(getPercent
100)+"%";
if (bytes_loaded == bytes_total) {
_root.gotoAndStop(3);
}

frame 2 returns to frame 1 - frame 3 is where my movie begins

Any suggestions?