Просмотр исходного кода

hle: properly cast 64-bit function wrapper parameters to (u64)

bunnei 12 лет назад
Родитель
Сommit
c4b5168b45
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      src/core/hle/function_wrappers.h

+ 2 - 2
src/core/hle/function_wrappers.h

@@ -750,11 +750,11 @@ template<int func(void*, u32, u32, u32, u32, u32)> void WrapI_VUUUUU(){
 }
 
 template<int func(u32, s64)> void WrapI_US64() {
-    int retval = func(PARAM(0), ((PARAM(3) << 32) | PARAM(2)));
+    int retval = func(PARAM(0), (((u64)PARAM(3) << 32) | PARAM(2)));
     RETURN(retval);
 }
 
 template<int func(void*, void*, u32, u32, s64)> void WrapI_VVUUS64() {
-    int retval = func(Memory::GetPointer(PARAM(5)), Memory::GetPointer(PARAM(1)), PARAM(2), PARAM(3), ((PARAM(4) << 32) | PARAM(0)));
+    int retval = func(Memory::GetPointer(PARAM(5)), Memory::GetPointer(PARAM(1)), PARAM(2), PARAM(3), (((u64)PARAM(4) << 32) | PARAM(0)));
     RETURN(retval);
 }