yes I know this error.Have you created some explosions in the same time?
You have to wait for the active variable,because when you create a new explosion in the same time as the other isn't ready (not all emitters are created) you overwrite the old emitters,so the old emitter wouldn't stop.
When you create only 1 class ,you have to wait for the "active" variable,than it would work
Something like :
Explode ex;
loop:
ex.Update();
if(KeyHit(KEY_A) && ex.active == false)
ex.CreateExplosions(Vec3(2,3,4),1);