[Memory] TranslateVirtual in shim and strings

This commit is contained in:
Triang3l
2019-08-14 10:31:11 +03:00
parent 0067f5561d
commit 2507f1a819
7 changed files with 67 additions and 73 deletions

View File

@@ -74,8 +74,10 @@ object_ref<T> LookupNamedObject(KernelState* kernel_state,
if (!obj_attributes_ptr) {
return nullptr;
}
auto name = X_ANSI_STRING::to_string_indirect(
kernel_state->memory()->virtual_membase(), obj_attributes_ptr + 4);
auto name = util::TranslateAnsiStringAddress(
kernel_state->memory(),
xe::load_and_swap<uint32_t>(
kernel_state->memory()->TranslateVirtual(obj_attributes_ptr + 4)));
if (!name.empty()) {
X_HANDLE handle = X_INVALID_HANDLE_VALUE;
X_RESULT result =