Boost logo

Boost-Commit :

From: bdawes_at_[hidden]
Date: 2007-10-31 18:01:58


Author: bemandawes
Date: 2007-10-31 18:01:58 EDT (Wed, 31 Oct 2007)
New Revision: 40630
URL: http://svn.boost.org/trac/boost/changeset/40630

Log:
Treat Windows ERROR_SHARING_VIOLATION as an existing file of unknown type. Fixes ticket #897
Text files modified:
   trunk/libs/filesystem/src/operations.cpp | 9 ++++++++-
   1 files changed, 8 insertions(+), 1 deletions(-)

Modified: trunk/libs/filesystem/src/operations.cpp
==============================================================================
--- trunk/libs/filesystem/src/operations.cpp (original)
+++ trunk/libs/filesystem/src/operations.cpp 2007-10-31 18:01:58 EDT (Wed, 31 Oct 2007)
@@ -195,9 +195,16 @@
         || (ec.value() == ERROR_BAD_PATHNAME) // "//nosuch" on Win64
         || (ec.value() == ERROR_BAD_NETPATH)) // "//nosuch" on Win32
       {
- ec = error_code(); // these are not considered errors
+ ec = error_code(); // these are not considered errors;
+ // the status is considered not found
         return fs::file_status( fs::file_not_found );
       }
+ else if ((ec.value() == ERROR_SHARING_VIOLATION))
+ {
+ ec = error_code(); // these are not considered errors;
+ // the file exists but the type is not known
+ return fs::file_status( fs::type_unknown );
+ }
       return fs::file_status( fs::status_unknown );
     }
     ec = error_code();;


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk