VolumeGC: Set m_banner_loaded when banner loading fails
If banner loading fails once, it will very likely fail again. Setting m_banner_loaded to true when banner loading fails prevents LoadBannerFile from wasting time if it's called again. Banner loading requires loading the file system, which takes a noticeable amount of time, so this matters.
This commit is contained in:
parent
10682dbf58
commit
202c9d58cd
|
@ -205,6 +205,8 @@ void CVolumeGC::LoadBannerFile() const
|
||||||
if (m_banner_loaded)
|
if (m_banner_loaded)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
m_banner_loaded = true;
|
||||||
|
|
||||||
GCBanner banner_file;
|
GCBanner banner_file;
|
||||||
std::unique_ptr<IFileSystem> file_system(CreateFileSystem(this));
|
std::unique_ptr<IFileSystem> file_system(CreateFileSystem(this));
|
||||||
size_t file_size = (size_t)file_system->GetFileSize("opening.bnr");
|
size_t file_size = (size_t)file_system->GetFileSize("opening.bnr");
|
||||||
|
@ -235,7 +237,6 @@ void CVolumeGC::LoadBannerFile() const
|
||||||
}
|
}
|
||||||
|
|
||||||
ExtractBannerInformation(banner_file, is_bnr1);
|
ExtractBannerInformation(banner_file, is_bnr1);
|
||||||
m_banner_loaded = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CVolumeGC::ExtractBannerInformation(const GCBanner& banner_file, bool is_bnr1) const
|
void CVolumeGC::ExtractBannerInformation(const GCBanner& banner_file, bool is_bnr1) const
|
||||||
|
|
Loading…
Reference in New Issue