diff options
| author | Trace Bullet <tracebullet@gmail.com> | 2015-07-02 02:43:18 -0400 |
|---|---|---|
| committer | Jules Blok <jules.blok@gmail.com> | 2015-07-20 16:21:34 +0200 |
| commit | caa2f15105bdf45b3117ae3f144927d70c61482d (patch) | |
| tree | 8b44f9f78c76b7afb2c88701b0c00881c1446005 /Source/Core/DiscIO/DiscScrubber.cpp | |
| parent | b5fe028e185402835b86003183e61c0a2b26b6bf (diff) | |
DiscIO: Check if m_Disc is null in ParsePartitionData()
Diffstat (limited to 'Source/Core/DiscIO/DiscScrubber.cpp')
| -rw-r--r-- | Source/Core/DiscIO/DiscScrubber.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/Core/DiscIO/DiscScrubber.cpp b/Source/Core/DiscIO/DiscScrubber.cpp index 581efc6190..8f2eb8ee5b 100644 --- a/Source/Core/DiscIO/DiscScrubber.cpp +++ b/Source/Core/DiscIO/DiscScrubber.cpp @@ -265,8 +265,14 @@ bool ParsePartitionData(SPartition& _rPartition) // Ready some stuff m_Disc = CreateVolumeFromFilename(m_Filename, _rPartition.GroupNumber, _rPartition.Number); - std::unique_ptr<IFileSystem> filesystem(CreateFileSystem(m_Disc)); + if (m_Disc == nullptr) + { + ERROR_LOG(DISCIO, "Failed to create volume from file %s", m_Filename.c_str()); + m_Disc = OldVolume; + return false; + } + std::unique_ptr<IFileSystem> filesystem(CreateFileSystem(m_Disc)); if (!filesystem) { ERROR_LOG(DISCIO, "Failed to create filesystem for group %d partition %u", _rPartition.GroupNumber, _rPartition.Number); |
