fd_file: don't report failure when trying to flush a pipe.
At least one user of FdFile (SignalCatcher) will attempt to create an
FdFile with either a real file or a pipe. When it does so with a pipe,
fdatasync fails in Flush(), causing a bunch of spurious logging to be
emitted. Check to see if the file we're flushing is actually a file
before calling fdatasync.
Bug: 67327501
Test: fd_file_test on host
Change-Id: I70103fb20f4fceb36a806c4fd530a0a77c328a96
(cherry picked from commit 494ec696f978ebd699efd32a6f25bcb83770d1fd)
3 files changed