Controlla se esiste un file (non una directory) con lo stesso nome di $directory.
Ciò potrebbe essere causato se esiste già un file con lo stesso nome situato nella directory.
Nota che una directory non può contenere sia un file che una cartella con lo stesso nome su macchine Linux.