Previously, we were returning an empty buffer for all filenames where fstat() gives a size of 0. But this is only appropriate for regular files. Also improve the documentation around this issue. Based on a patch by Ryan Lortie.