STDMETHODIMP CIHX2CHXDataFile::Create(UINT16 uOpenMode) { HX_RESULT retVal = HXR_FAIL; if (m_pCHXFile) { if (m_pFileName && (m_pFileName->GetSize() != 0)) { retVal = HXR_OK; if (uOpenMode & HX_FILEFLAG_NOTRUNC) { if (m_pCHXFile->Open((char*) m_pFileName->GetBuffer(), HX_FILEFLAG_READ | HX_FILEFLAG_BINARY) == HXR_OK) { m_pCHXFile->Close(); retVal = HXR_FAIL; // file exists - cannot destroy } } if (retVal == HXR_OK) { retVal = m_pCHXFile->Create((char*) m_pFileName->GetBuffer(), TranslateMode(uOpenMode)); } m_bOpen = (retVal == HXR_OK); } } return retVal; }
bool sprawl::filesystem::MkDir(sprawl::String const& path, sprawl::filesystem::PermissionType::Type mode) { #ifdef _WIN32 if(_mkdir(path.GetOwned().c_str()) == 0) { ChMod(path.GetOwned().c_str(), mode); return true; } return false; #else return (mkdir(path.GetOwned().c_str(), TranslateMode(mode)) == 0); #endif }
STDMETHODIMP CIHX2CHXDataFile::Open(UINT16 uOpenMode) { HX_RESULT retVal = HXR_FAIL; if (m_pCHXFile) { if (m_pFileName && (m_pFileName->GetSize() != 0)) { retVal = m_pCHXFile->Open((char*) m_pFileName->GetBuffer(), TranslateMode(uOpenMode)); m_bOpen = SUCCEEDED(retVal); } } return retVal; }
void sprawl::filesystem::ChMod(sprawl::String const& path, sprawl::filesystem::PermissionType::Type type) { chmod(path.GetOwned().c_str(), TranslateMode(type)); }