file_sys: Fix nacp field cache_storage_max_index datatype
This commit is contained in:
		| @@ -64,8 +64,8 @@ struct RawNACP { | ||||
|     u64_le cache_storage_size; | ||||
|     u64_le cache_storage_journal_size; | ||||
|     u64_le cache_storage_data_and_journal_max_size; | ||||
|     u64_le cache_storage_max_index; | ||||
|     INSERT_PADDING_BYTES(0xE70); | ||||
|     u16_le cache_storage_max_index; | ||||
|     INSERT_PADDING_BYTES(0xE76); | ||||
| }; | ||||
| static_assert(sizeof(RawNACP) == 0x4000, "RawNACP has incorrect size."); | ||||
|  | ||||
|   | ||||
| @@ -272,17 +272,14 @@ Result IApplicationFunctions::GetCacheStorageMax(Out<u32> out_cache_storage_inde | ||||
|                                                  Out<u64> out_max_journal_size) { | ||||
|     LOG_DEBUG(Service_AM, "called"); | ||||
|  | ||||
|     const auto title_id = m_applet->program_id; | ||||
|  | ||||
|     std::vector<u8> nacp; | ||||
|     const auto result = system.GetARPManager().GetControlProperty(&nacp, title_id); | ||||
|     R_TRY(system.GetARPManager().GetControlProperty(&nacp, m_applet->program_id)); | ||||
|  | ||||
|     if (R_SUCCEEDED(result)) { | ||||
|         const auto rawnacp = reinterpret_cast<FileSys::RawNACP*>(nacp.data()); | ||||
|     FileSys::RawNACP raw_nacp{}; | ||||
|     std::memcpy(&raw_nacp, nacp.data(), std::min(sizeof(raw_nacp), nacp.size())); | ||||
|  | ||||
|         *out_cache_storage_index_max = static_cast<u32>(rawnacp->cache_storage_max_index); | ||||
|         *out_max_journal_size = static_cast<u64>(rawnacp->cache_storage_data_and_journal_max_size); | ||||
|     } | ||||
|     *out_cache_storage_index_max = static_cast<u32>(raw_nacp.cache_storage_max_index); | ||||
|     *out_max_journal_size = static_cast<u64>(raw_nacp.cache_storage_data_and_journal_max_size); | ||||
|  | ||||
|      R_SUCCEED(); | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user