Merge pull request #13095 from liamwhite/ns-oops
ns: fix alignment of uid type
This commit is contained in:
commit
7b5bdd076d
5 changed files with 13 additions and 9 deletions
|
@ -436,14 +436,14 @@ Result IApplicationManagerInterface::GetApplicationViewWithPromotionInfo(
|
||||||
|
|
||||||
Result IApplicationManagerInterface::GetApplicationRightsOnClient(
|
Result IApplicationManagerInterface::GetApplicationRightsOnClient(
|
||||||
OutArray<ApplicationRightsOnClient, BufferAttr_HipcMapAlias> out_rights, Out<u32> out_count,
|
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={}",
|
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()) {
|
if (!out_rights.empty()) {
|
||||||
ApplicationRightsOnClient rights{};
|
ApplicationRightsOnClient rights{};
|
||||||
rights.application_id = application_id;
|
rights.application_id = application_id;
|
||||||
rights.uid = account_id;
|
rights.uid = account_id.uuid;
|
||||||
rights.flags = 0;
|
rights.flags = 0;
|
||||||
rights.flags2 = 0;
|
rights.flags2 = 0;
|
||||||
|
|
||||||
|
|
|
@ -37,7 +37,7 @@ public:
|
||||||
InArray<u64, BufferAttr_HipcMapAlias> application_ids);
|
InArray<u64, BufferAttr_HipcMapAlias> application_ids);
|
||||||
Result GetApplicationRightsOnClient(
|
Result GetApplicationRightsOnClient(
|
||||||
OutArray<ApplicationRightsOnClient, BufferAttr_HipcMapAlias> out_rights, Out<u32> out_count,
|
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 CheckSdCardMountStatus();
|
||||||
Result GetSdCardMountStatusChangedEvent(OutCopyHandle<Kernel::KReadableEvent> out_event);
|
Result GetSdCardMountStatusChangedEvent(OutCopyHandle<Kernel::KReadableEvent> out_event);
|
||||||
Result GetFreeSpaceSize(Out<s64> out_free_space_size, FileSys::StorageId storage_id);
|
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.");
|
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
|
} // namespace Service::NS
|
||||||
|
|
|
@ -41,8 +41,7 @@ IQueryService::IQueryService(Core::System& system_) : ServiceFramework{system_,
|
||||||
IQueryService::~IQueryService() = default;
|
IQueryService::~IQueryService() = default;
|
||||||
|
|
||||||
Result IQueryService::QueryPlayStatisticsByApplicationIdAndUserAccountId(
|
Result IQueryService::QueryPlayStatisticsByApplicationIdAndUserAccountId(
|
||||||
Out<PlayStatistics> out_play_statistics, bool unknown, Common::UUID account_id,
|
Out<PlayStatistics> out_play_statistics, bool unknown, u64 application_id, Uid account_id) {
|
||||||
u64 application_id) {
|
|
||||||
// TODO(German77): Read statistics of the game
|
// TODO(German77): Read statistics of the game
|
||||||
*out_play_statistics = {
|
*out_play_statistics = {
|
||||||
.application_id = application_id,
|
.application_id = application_id,
|
||||||
|
@ -50,7 +49,7 @@ Result IQueryService::QueryPlayStatisticsByApplicationIdAndUserAccountId(
|
||||||
};
|
};
|
||||||
|
|
||||||
LOG_WARNING(Service_NS, "(STUBBED) called. unknown={}. application_id={:016X}, account_id={}",
|
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();
|
R_SUCCEED();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
|
|
||||||
#include "common/uuid.h"
|
#include "common/uuid.h"
|
||||||
#include "core/hle/service/cmif_types.h"
|
#include "core/hle/service/cmif_types.h"
|
||||||
|
#include "core/hle/service/ns/ns_types.h"
|
||||||
#include "core/hle/service/service.h"
|
#include "core/hle/service/service.h"
|
||||||
|
|
||||||
namespace Service::NS {
|
namespace Service::NS {
|
||||||
|
@ -29,8 +30,7 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Result QueryPlayStatisticsByApplicationIdAndUserAccountId(
|
Result QueryPlayStatisticsByApplicationIdAndUserAccountId(
|
||||||
Out<PlayStatistics> out_play_statistics, bool unknown, Common::UUID account_id,
|
Out<PlayStatistics> out_play_statistics, bool unknown, u64 application_id, Uid account_id);
|
||||||
u64 application_id);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Service::NS
|
} // namespace Service::NS
|
||||||
|
|
Loading…
Reference in a new issue