I imagine this is because the container movie clip only has 1 frame, and the external .swf timeline appears to be ignored.
I wouldn't imagine that. My guess is that the main timeline of the external swf does only have 1 frame and that the rest of the animation is inside a movieclip on that timeline. Did you publish this swf? Can you open the FLA and check how many frames are on on the main timeline?
The approach you have outlined is pretty much what there is. But it only knows to check one timeline. If there are many nested movieclips it may be impossible to figure out which timeline you really want to have be "THE" total timeline.
If you have the FLA you can have the clip call a function on the _root timeline that tells the main swf that a movieclip has completed or something like that.
I also have in my head somewhere that I recently saw something that somebody did similar to this, but can't remember...If it pops back into my head I'll post it.
(and THANK YOU THANK YOU THANK YOU!!!)
The only remaining question is... Why didn't I think of that?
The .swf that I was loading only was created by someone else so I was not aware that the entire contents was in a movie clip on the main stage, which then had only one frame in it. I carried all of the stuff in the movie clip up to the root timeline and the code to figure out frames now works beautifully (restoring my faith in my general ability to code, if not my general troubleshooting skills...
Thank you again for the speedy response. This solved a MAJOR roadblock in an important project for me.