dir function fix