Browse Source
Merge pull request #13095 from liamwhite/ns-oops
ns: fix alignment of uid type
pull/15/merge
liamwhite
2 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with
13 additions and
9 deletions
-
src/core/hle/service/ns/application_manager_interface.cpp
-
src/core/hle/service/ns/application_manager_interface.h
-
src/core/hle/service/ns/ns_types.h
-
src/core/hle/service/ns/query_service.cpp
-
src/core/hle/service/ns/query_service.h
|
|
|
@ -436,14 +436,14 @@ Result IApplicationManagerInterface::GetApplicationViewWithPromotionInfo( |
|
|
|
|
|
|
|
Result IApplicationManagerInterface::GetApplicationRightsOnClient( |
|
|
|
OutArray<ApplicationRightsOnClient, BufferAttr_HipcMapAlias> out_rights, Out<u32> out_count, |
|
|
|
Common::UUID account_id, u32 flags, u64 application_id) { |
|
|
|
u32 flags, u64 application_id, Uid account_id) { |
|
|
|
LOG_WARNING(Service_NS, "(STUBBED) called, flags={}, application_id={:016X}, account_id={}", |
|
|
|
flags, application_id, account_id.FormattedString()); |
|
|
|
flags, application_id, account_id.uuid.FormattedString()); |
|
|
|
|
|
|
|
if (!out_rights.empty()) { |
|
|
|
ApplicationRightsOnClient rights{}; |
|
|
|
rights.application_id = application_id; |
|
|
|
rights.uid = account_id; |
|
|
|
rights.uid = account_id.uuid; |
|
|
|
rights.flags = 0; |
|
|
|
rights.flags2 = 0; |
|
|
|
|
|
|
|
|
|
|
|
@ -37,7 +37,7 @@ public: |
|
|
|
InArray<u64, BufferAttr_HipcMapAlias> application_ids); |
|
|
|
Result GetApplicationRightsOnClient( |
|
|
|
OutArray<ApplicationRightsOnClient, BufferAttr_HipcMapAlias> out_rights, Out<u32> out_count, |
|
|
|
Common::UUID account_id, u32 flags, u64 application_id); |
|
|
|
u32 flags, u64 application_id, Uid account_id); |
|
|
|
Result CheckSdCardMountStatus(); |
|
|
|
Result GetSdCardMountStatusChangedEvent(OutCopyHandle<Kernel::KReadableEvent> out_event); |
|
|
|
Result GetFreeSpaceSize(Out<s64> out_free_space_size, FileSys::StorageId storage_id); |
|
|
|
|
|
|
|
@ -108,4 +108,9 @@ struct ContentPath { |
|
|
|
}; |
|
|
|
static_assert(sizeof(ContentPath) == 0x10, "ContentPath has incorrect size."); |
|
|
|
|
|
|
|
struct Uid { |
|
|
|
alignas(8) Common::UUID uuid; |
|
|
|
}; |
|
|
|
static_assert(sizeof(Uid) == 0x10, "Uid has incorrect size."); |
|
|
|
|
|
|
|
} // namespace Service::NS |
|
|
|
@ -41,8 +41,7 @@ IQueryService::IQueryService(Core::System& system_) : ServiceFramework{system_, |
|
|
|
IQueryService::~IQueryService() = default; |
|
|
|
|
|
|
|
Result IQueryService::QueryPlayStatisticsByApplicationIdAndUserAccountId( |
|
|
|
Out<PlayStatistics> out_play_statistics, bool unknown, Common::UUID account_id, |
|
|
|
u64 application_id) { |
|
|
|
Out<PlayStatistics> out_play_statistics, bool unknown, u64 application_id, Uid account_id) { |
|
|
|
// TODO(German77): Read statistics of the game
|
|
|
|
*out_play_statistics = { |
|
|
|
.application_id = application_id, |
|
|
|
@ -50,7 +49,7 @@ Result IQueryService::QueryPlayStatisticsByApplicationIdAndUserAccountId( |
|
|
|
}; |
|
|
|
|
|
|
|
LOG_WARNING(Service_NS, "(STUBBED) called. unknown={}. application_id={:016X}, account_id={}", |
|
|
|
unknown, application_id, account_id.FormattedString()); |
|
|
|
unknown, application_id, account_id.uuid.FormattedString()); |
|
|
|
R_SUCCEED(); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -5,6 +5,7 @@ |
|
|
|
|
|
|
|
#include "common/uuid.h" |
|
|
|
#include "core/hle/service/cmif_types.h" |
|
|
|
#include "core/hle/service/ns/ns_types.h" |
|
|
|
#include "core/hle/service/service.h" |
|
|
|
|
|
|
|
namespace Service::NS { |
|
|
|
@ -29,8 +30,7 @@ public: |
|
|
|
|
|
|
|
private: |
|
|
|
Result QueryPlayStatisticsByApplicationIdAndUserAccountId( |
|
|
|
Out<PlayStatistics> out_play_statistics, bool unknown, Common::UUID account_id, |
|
|
|
u64 application_id); |
|
|
|
Out<PlayStatistics> out_play_statistics, bool unknown, u64 application_id, Uid account_id); |
|
|
|
}; |
|
|
|
|
|
|
|
} // namespace Service::NS |