Du musst neben dem Verzeichnisnamen "." auch ".." abfangen !!
Ansonsten geht deine Prozedure über ".." ein Verzeichnis nach oben, grasst alle Dateien ab, findet ein echtes Verzeichnis, durchläuft dieses, findet "..", geht rekursiv nach oben....
Ein
Teufelskreis
.