Fix existence check.

The file() method should always be used in case the FileHandle
implementation needs to append a path to accurately represent the file.
Fixes #958.