fixed repeated call of on_play_done