Ganz verstehe ich Ihre Funktion zwar nicht, aber im Prizip sieht sie korrekt aus. Sie müssen nur auf eine saubere Abbruchsbedingung achten.