mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 03:28:20 +02:00
Properly handling lib failures
This commit is contained in:
parent
293387e41f
commit
d67e03f137
3 changed files with 22 additions and 3 deletions
|
@ -185,6 +185,7 @@ bool BeLibFile::Init(const StringImpl& filePath, bool moveFile)
|
|||
::DeleteFileA(altName.c_str());
|
||||
if (!::MoveFileA(filePath.c_str(), altName.c_str()))
|
||||
{
|
||||
mFilePath = filePath;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -240,7 +241,7 @@ bool BeLibFile::Finish()
|
|||
}
|
||||
|
||||
if (!mFileStream.Open(mFilePath, "wb"))
|
||||
{
|
||||
{
|
||||
mFailed = true;
|
||||
return false;
|
||||
}
|
||||
|
@ -499,10 +500,18 @@ void BeLibManager::Finish()
|
|||
{
|
||||
BP_ZONE("BeLibManager::Finish");
|
||||
|
||||
AutoCrit autoCrit(mCritSect);
|
||||
|
||||
for (auto& libPair : mLibFiles)
|
||||
{
|
||||
auto libFile = libPair.mValue;
|
||||
libFile->Finish();
|
||||
if (!libFile->mFilePath.IsEmpty())
|
||||
{
|
||||
if (!libFile->Finish())
|
||||
{
|
||||
mErrors.Add(StrFormat("Failed to write lib file '%s'", libFile->mFilePath.c_str()));
|
||||
}
|
||||
}
|
||||
delete libFile;
|
||||
}
|
||||
mLibFiles.Clear();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue