From 9abc5763b6ade0f3e7e6b3542f45bb867a634bba Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 18 Jul 2018 23:25:07 -0400 Subject: partition_filesystem: Ensure all class members of PartitionFilesystem are initialized Previously is_hfs and pfs_header members wouldn't be initialized in the constructor, as they were stored in locals instead. This would result in things like GetName() and PrintDebugInfo() behaving incorrectly. While we're at it, initialize the members to deterministic values as well, in case loading ever fails. --- src/core/file_sys/partition_filesystem.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/core/file_sys/partition_filesystem.h') diff --git a/src/core/file_sys/partition_filesystem.h b/src/core/file_sys/partition_filesystem.h index 9656b40bf..7c7a75816 100644 --- a/src/core/file_sys/partition_filesystem.h +++ b/src/core/file_sys/partition_filesystem.h @@ -42,6 +42,8 @@ private: u32_le num_entries; u32_le strtab_size; INSERT_PADDING_BYTES(0x4); + + bool HasValidMagicValue() const; }; static_assert(sizeof(Header) == 0x10, "PFS/HFS header structure size is wrong"); @@ -73,11 +75,11 @@ private: #pragma pack(pop) - Loader::ResultStatus status; + Loader::ResultStatus status{}; - Header pfs_header; - bool is_hfs; - size_t content_offset; + Header pfs_header{}; + bool is_hfs = false; + size_t content_offset = 0; std::vector pfs_files; std::vector pfs_dirs; -- cgit v1.2.3