diff --git a/src/common/platform/user.hpp b/src/common/platform/user.hpp index 2bebdf4a..f625cb5f 100644 --- a/src/common/platform/user.hpp +++ b/src/common/platform/user.hpp @@ -23,7 +23,7 @@ struct USER_HANDLEENTRY uint64_t pHead; uint64_t pOwner; uint64_t unknown; - uint8_t bType; + EMULATOR_CAST(uint8_t, USER_HANDLETYPE) bType; uint8_t bFlags; uint16_t wUniq; }; @@ -31,10 +31,10 @@ static_assert(sizeof(USER_HANDLEENTRY) == 0x20); struct USER_SHAREDINFO { - uint64_t psi; - uint64_t aheList; + EMULATOR_CAST(uint64_t, USER_SERVERINFO*) psi; + EMULATOR_CAST(uint64_t, USER_HANDLEENTRY*) aheList; uint32_t HeEntrySize; - uint64_t pDispInfo; + EMULATOR_CAST(uint64_t, USER_DISPINFO*) pDispInfo; uint8_t unknown[0xFF]; }; diff --git a/src/windows-emulator/user_handle_table.hpp b/src/windows-emulator/user_handle_table.hpp index e3ad11f7..0be8744d 100644 --- a/src/windows-emulator/user_handle_table.hpp +++ b/src/windows-emulator/user_handle_table.hpp @@ -33,7 +33,7 @@ class user_handle_table handle_table_addr_ = this->allocate_memory(handle_table_size, memory_permission::read); } - emulator_object get_server_info() const + emulator_object get_server_info() const { return {*memory_, server_info_addr_}; }