without a filename we can't stat pipes
authorDavid Kalnischkies <david@kalnischkies.de>
Fri, 30 May 2014 15:14:13 +0000 (17:14 +0200)
committerDavid Kalnischkies <david@kalnischkies.de>
Fri, 30 May 2014 15:14:13 +0000 (17:14 +0200)
EDSP code uses pipes opened via an FD as sources and later for those
files modification times and filesize are read - but never really used
again. The result we get from FileFd is probably wrong, but as we don't
use it anyway, we just don't fallback if we have nothing to fallback to

Git-Dch: Ignore

apt-pkg/contrib/fileutl.cc

index bfd9581..1ba4674 100644 (file)
@@ -1798,7 +1798,8 @@ static bool StatFileFd(char const * const msg, int const iFd, std::string const
         // higher-level code will generate more meaningful messages,
         // even translated this would be meaningless for users
         return _error->Errno("fstat", "Unable to determine %s for fd %i", msg, iFd);
-      ispipe = S_ISFIFO(Buf.st_mode);
+      if (FileName.empty() == false)
+        ispipe = S_ISFIFO(Buf.st_mode);
    }
 
    // for compressor pipes st_size is undefined and at 'best' zero