diff --git a/Source/Core/DiscIO/VolumeFileBlobReader.cpp b/Source/Core/DiscIO/VolumeFileBlobReader.cpp index 7cbc06e589..92eb9b4ae2 100644 --- a/Source/Core/DiscIO/VolumeFileBlobReader.cpp +++ b/Source/Core/DiscIO/VolumeFileBlobReader.cpp @@ -33,6 +33,11 @@ VolumeFileBlobReader::VolumeFileBlobReader(const Volume& volume, const Partition { } +// This is defined here instead of the header so that the definition of FileInfo is visible when +// m_file_info is destroyed, preventing a compile error caused by calling unique_ptr's destructor +// with an incomplete type. +VolumeFileBlobReader::~VolumeFileBlobReader() = default; + std::unique_ptr VolumeFileBlobReader::CopyReader() const { ASSERT_MSG(DISCIO, false, "Unimplemented"); diff --git a/Source/Core/DiscIO/VolumeFileBlobReader.h b/Source/Core/DiscIO/VolumeFileBlobReader.h index 58d349a0d4..49fe4cd200 100644 --- a/Source/Core/DiscIO/VolumeFileBlobReader.h +++ b/Source/Core/DiscIO/VolumeFileBlobReader.h @@ -20,6 +20,7 @@ class VolumeFileBlobReader final : public BlobReader public: static std::unique_ptr Create(const Volume& volume, const Partition& partition, std::string_view file_path); + ~VolumeFileBlobReader(); BlobType GetBlobType() const override { return BlobType::PLAIN; } std::unique_ptr CopyReader() const override;