save_track() gets called in 2 places, also when dir_name is a track. Do you think that we should get rid of the `else` in line 171? Now that I think about it makes no sense to call walk and pass a file to it.