diff --git a/Foundation/src/File_WIN32.cpp b/Foundation/src/File_WIN32.cpp index 4d4ae343e..004cc800c 100644 --- a/Foundation/src/File_WIN32.cpp +++ b/Foundation/src/File_WIN32.cpp @@ -34,17 +34,17 @@ public: FileImpl::handleLastErrorImpl(path); } } - + ~FileHandle() { if (_h != INVALID_HANDLE_VALUE) CloseHandle(_h); } - + HANDLE get() const { return _h; } - + private: HANDLE _h; }; @@ -112,7 +112,7 @@ bool FileImpl::existsImpl() const bool FileImpl::canReadImpl() const { poco_assert (!_path.empty()); - + DWORD attr = GetFileAttributes(_path.c_str()); if (attr == INVALID_FILE_ATTRIBUTES) { @@ -131,7 +131,7 @@ bool FileImpl::canReadImpl() const bool FileImpl::canWriteImpl() const { poco_assert (!_path.empty()); - + DWORD attr = GetFileAttributes(_path.c_str()); if (attr == INVALID_FILE_ATTRIBUTES) handleLastErrorImpl(_path); @@ -201,7 +201,7 @@ Timestamp FileImpl::createdImpl() const poco_assert (!_path.empty()); WIN32_FILE_ATTRIBUTE_DATA fad; - if (GetFileAttributesEx(_path.c_str(), GetFileExInfoStandard, &fad) == 0) + if (GetFileAttributesEx(_path.c_str(), GetFileExInfoStandard, &fad) == 0) handleLastErrorImpl(_path); return Timestamp::fromFileTimeNP(fad.ftCreationTime.dwLowDateTime, fad.ftCreationTime.dwHighDateTime); } @@ -212,7 +212,7 @@ Timestamp FileImpl::getLastModifiedImpl() const poco_assert (!_path.empty()); WIN32_FILE_ATTRIBUTE_DATA fad; - if (GetFileAttributesEx(_path.c_str(), GetFileExInfoStandard, &fad) == 0) + if (GetFileAttributesEx(_path.c_str(), GetFileExInfoStandard, &fad) == 0) handleLastErrorImpl(_path); return Timestamp::fromFileTimeNP(fad.ftLastWriteTime.dwLowDateTime, fad.ftLastWriteTime.dwHighDateTime); } @@ -239,7 +239,7 @@ FileImpl::FileSizeImpl FileImpl::getSizeImpl() const poco_assert (!_path.empty()); WIN32_FILE_ATTRIBUTE_DATA fad; - if (GetFileAttributesEx(_path.c_str(), GetFileExInfoStandard, &fad) == 0) + if (GetFileAttributesEx(_path.c_str(), GetFileExInfoStandard, &fad) == 0) handleLastErrorImpl(_path); LARGE_INTEGER li; li.LowPart = fad.nFileSizeLow; @@ -257,7 +257,7 @@ void FileImpl::setSizeImpl(FileSizeImpl size) li.QuadPart = size; if (SetFilePointer(fh.get(), li.LowPart, &li.HighPart, FILE_BEGIN) == INVALID_SET_FILE_POINTER) handleLastErrorImpl(_path); - if (SetEndOfFile(fh.get()) == 0) + if (SetEndOfFile(fh.get()) == 0) handleLastErrorImpl(_path); } @@ -288,12 +288,8 @@ void FileImpl::copyToImpl(const std::string& path) const { poco_assert (!_path.empty()); - if (CopyFileA(_path.c_str(), path.c_str(), FALSE) != 0) - { - FileImpl copy(path); - copy.setWriteableImpl(true); - } - else handleLastErrorImpl(_path); + if (CopyFileA(_path.c_str(), path.c_str(), FALSE) == 0) + handleLastErrorImpl(_path); } @@ -301,7 +297,7 @@ void FileImpl::renameToImpl(const std::string& path) { poco_assert (!_path.empty()); - if (MoveFileA(_path.c_str(), path.c_str()) == 0) + if (MoveFileA(_path.c_str(), path.c_str()) == 0) handleLastErrorImpl(_path); } @@ -312,7 +308,7 @@ void FileImpl::removeImpl() if (isDirectoryImpl()) { - if (RemoveDirectoryA(_path.c_str()) == 0) + if (RemoveDirectoryA(_path.c_str()) == 0) handleLastErrorImpl(_path); } else @@ -344,7 +340,7 @@ bool FileImpl::createFileImpl() bool FileImpl::createDirectoryImpl() { poco_assert (!_path.empty()); - + if (existsImpl() && isDirectoryImpl()) return false; if (CreateDirectoryA(_path.c_str(), 0) == 0) diff --git a/Foundation/src/File_WINCE.cpp b/Foundation/src/File_WINCE.cpp index 61ab5d671..c321a76ee 100644 --- a/Foundation/src/File_WINCE.cpp +++ b/Foundation/src/File_WINCE.cpp @@ -36,17 +36,17 @@ public: FileImpl::handleLastErrorImpl(path); } } - + ~FileHandle() { if (_h != INVALID_HANDLE_VALUE) CloseHandle(_h); } - + HANDLE get() const { return _h; } - + private: HANDLE _h; }; @@ -117,7 +117,7 @@ bool FileImpl::existsImpl() const bool FileImpl::canReadImpl() const { poco_assert (!_path.empty()); - + DWORD attr = GetFileAttributesW(_upath.c_str()); if (attr == INVALID_FILE_ATTRIBUTES) { @@ -136,7 +136,7 @@ bool FileImpl::canReadImpl() const bool FileImpl::canWriteImpl() const { poco_assert (!_path.empty()); - + DWORD attr = GetFileAttributesW(_upath.c_str()); if (attr == INVALID_FILE_ATTRIBUTES) handleLastErrorImpl(_path); @@ -196,7 +196,7 @@ Timestamp FileImpl::createdImpl() const poco_assert (!_path.empty()); WIN32_FILE_ATTRIBUTE_DATA fad; - if (GetFileAttributesExW(_upath.c_str(), GetFileExInfoStandard, &fad) == 0) + if (GetFileAttributesExW(_upath.c_str(), GetFileExInfoStandard, &fad) == 0) handleLastErrorImpl(_path); return Timestamp::fromFileTimeNP(fad.ftCreationTime.dwLowDateTime, fad.ftCreationTime.dwHighDateTime); } @@ -207,7 +207,7 @@ Timestamp FileImpl::getLastModifiedImpl() const poco_assert (!_path.empty()); WIN32_FILE_ATTRIBUTE_DATA fad; - if (GetFileAttributesExW(_upath.c_str(), GetFileExInfoStandard, &fad) == 0) + if (GetFileAttributesExW(_upath.c_str(), GetFileExInfoStandard, &fad) == 0) handleLastErrorImpl(_path); return Timestamp::fromFileTimeNP(fad.ftLastWriteTime.dwLowDateTime, fad.ftLastWriteTime.dwHighDateTime); } @@ -234,7 +234,7 @@ FileImpl::FileSizeImpl FileImpl::getSizeImpl() const poco_assert (!_path.empty()); WIN32_FILE_ATTRIBUTE_DATA fad; - if (GetFileAttributesExW(_upath.c_str(), GetFileExInfoStandard, &fad) == 0) + if (GetFileAttributesExW(_upath.c_str(), GetFileExInfoStandard, &fad) == 0) handleLastErrorImpl(_path); LARGE_INTEGER li; li.LowPart = fad.nFileSizeLow; @@ -252,12 +252,12 @@ void FileImpl::setSizeImpl(FileSizeImpl size) li.QuadPart = size; if (SetFilePointer(fh.get(), li.LowPart, &li.HighPart, FILE_BEGIN) == INVALID_SET_FILE_POINTER) handleLastErrorImpl(_path); - if (SetEndOfFile(fh.get()) == 0) + if (SetEndOfFile(fh.get()) == 0) handleLastErrorImpl(_path); } -void FileImpl::setWriteableImpl(bool flag) +void FileImpl::setWriteableImpl(bool flag) { poco_assert (!_path.empty()); @@ -285,12 +285,8 @@ void FileImpl::copyToImpl(const std::string& path) const std::wstring upath; UnicodeConverter::toUTF16(path, upath); - if (CopyFileW(_upath.c_str(), upath.c_str(), FALSE) != 0) - { - FileImpl copy(path); - copy.setWriteableImpl(true); - } - else handleLastErrorImpl(_path); + if (CopyFileW(_upath.c_str(), upath.c_str(), FALSE) == 0) + handleLastErrorImpl(_path); } @@ -300,7 +296,7 @@ void FileImpl::renameToImpl(const std::string& path) std::wstring upath; UnicodeConverter::toUTF16(path, upath); - if (MoveFileW(_upath.c_str(), upath.c_str()) == 0) + if (MoveFileW(_upath.c_str(), upath.c_str()) == 0) handleLastErrorImpl(_path); } @@ -311,7 +307,7 @@ void FileImpl::removeImpl() if (isDirectoryImpl()) { - if (RemoveDirectoryW(_upath.c_str()) == 0) + if (RemoveDirectoryW(_upath.c_str()) == 0) handleLastErrorImpl(_path); } else @@ -343,7 +339,7 @@ bool FileImpl::createFileImpl() bool FileImpl::createDirectoryImpl() { poco_assert (!_path.empty()); - + if (existsImpl() && isDirectoryImpl()) return false; if (CreateDirectoryW(_upath.c_str(), 0) == 0)