mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-26 18:42:41 +01:00
enh(File): Throw FileNotReadyException in File::exists() (Win32) (#2403)
This commit is contained in:
@@ -246,6 +246,7 @@ POCO_DECLARE_EXCEPTION(Foundation_API, CreateFileException, FileException)
|
|||||||
POCO_DECLARE_EXCEPTION(Foundation_API, OpenFileException, FileException)
|
POCO_DECLARE_EXCEPTION(Foundation_API, OpenFileException, FileException)
|
||||||
POCO_DECLARE_EXCEPTION(Foundation_API, WriteFileException, FileException)
|
POCO_DECLARE_EXCEPTION(Foundation_API, WriteFileException, FileException)
|
||||||
POCO_DECLARE_EXCEPTION(Foundation_API, ReadFileException, FileException)
|
POCO_DECLARE_EXCEPTION(Foundation_API, ReadFileException, FileException)
|
||||||
|
POCO_DECLARE_EXCEPTION(Foundation_API, FileNotReadyException, FileException)
|
||||||
POCO_DECLARE_EXCEPTION(Foundation_API, DirectoryNotEmptyException, FileException)
|
POCO_DECLARE_EXCEPTION(Foundation_API, DirectoryNotEmptyException, FileException)
|
||||||
POCO_DECLARE_EXCEPTION(Foundation_API, UnknownURISchemeException, RuntimeException)
|
POCO_DECLARE_EXCEPTION(Foundation_API, UnknownURISchemeException, RuntimeException)
|
||||||
POCO_DECLARE_EXCEPTION(Foundation_API, TooManyURIRedirectsException, RuntimeException)
|
POCO_DECLARE_EXCEPTION(Foundation_API, TooManyURIRedirectsException, RuntimeException)
|
||||||
|
|||||||
@@ -169,6 +169,7 @@ POCO_IMPLEMENT_EXCEPTION(CreateFileException, FileException, "Cannot create file
|
|||||||
POCO_IMPLEMENT_EXCEPTION(OpenFileException, FileException, "Cannot open file")
|
POCO_IMPLEMENT_EXCEPTION(OpenFileException, FileException, "Cannot open file")
|
||||||
POCO_IMPLEMENT_EXCEPTION(WriteFileException, FileException, "Cannot write file")
|
POCO_IMPLEMENT_EXCEPTION(WriteFileException, FileException, "Cannot write file")
|
||||||
POCO_IMPLEMENT_EXCEPTION(ReadFileException, FileException, "Cannot read file")
|
POCO_IMPLEMENT_EXCEPTION(ReadFileException, FileException, "Cannot read file")
|
||||||
|
POCO_IMPLEMENT_EXCEPTION(FileNotReadyException, FileException, "File not ready")
|
||||||
POCO_IMPLEMENT_EXCEPTION(DirectoryNotEmptyException, FileException, "Directory not empty")
|
POCO_IMPLEMENT_EXCEPTION(DirectoryNotEmptyException, FileException, "Directory not empty")
|
||||||
POCO_IMPLEMENT_EXCEPTION(UnknownURISchemeException, RuntimeException, "Unknown URI scheme")
|
POCO_IMPLEMENT_EXCEPTION(UnknownURISchemeException, RuntimeException, "Unknown URI scheme")
|
||||||
POCO_IMPLEMENT_EXCEPTION(TooManyURIRedirectsException, RuntimeException, "Too many URI redirects")
|
POCO_IMPLEMENT_EXCEPTION(TooManyURIRedirectsException, RuntimeException, "Too many URI redirects")
|
||||||
|
|||||||
@@ -100,7 +100,6 @@ bool FileImpl::existsImpl() const
|
|||||||
{
|
{
|
||||||
case ERROR_FILE_NOT_FOUND:
|
case ERROR_FILE_NOT_FOUND:
|
||||||
case ERROR_PATH_NOT_FOUND:
|
case ERROR_PATH_NOT_FOUND:
|
||||||
case ERROR_NOT_READY:
|
|
||||||
case ERROR_INVALID_DRIVE:
|
case ERROR_INVALID_DRIVE:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
@@ -439,6 +438,8 @@ void FileImpl::handleLastErrorImpl(const std::string& path)
|
|||||||
case ERROR_CANT_RESOLVE_FILENAME:
|
case ERROR_CANT_RESOLVE_FILENAME:
|
||||||
case ERROR_INVALID_DRIVE:
|
case ERROR_INVALID_DRIVE:
|
||||||
throw PathNotFoundException(path, err);
|
throw PathNotFoundException(path, err);
|
||||||
|
case ERROR_NOT_READY:
|
||||||
|
throw FileNotReadyException(path, err);
|
||||||
case ERROR_ACCESS_DENIED:
|
case ERROR_ACCESS_DENIED:
|
||||||
throw FileAccessDeniedException(path, err);
|
throw FileAccessDeniedException(path, err);
|
||||||
case ERROR_ALREADY_EXISTS:
|
case ERROR_ALREADY_EXISTS:
|
||||||
|
|||||||
Reference in New Issue
Block a user