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

Merge pull request #721 from lioncash/svc

svc: Correct always true assertion case in SetThreadCoreMask
bunnei 8 лет назад
Родитель
Сommit
2194308245
1 измененных файлов с 4 добавлено и 3 удалено
  1. 4 3
      src/core/hle/kernel/svc.cpp

+ 4 - 3
src/core/hle/kernel/svc.cpp

@@ -795,8 +795,9 @@ static ResultCode SetThreadCoreMask(Handle thread_handle, u32 core, u64 mask) {
         return ERR_INVALID_HANDLE;
     }
 
-    if (core == THREADPROCESSORID_DEFAULT) {
-        ASSERT(thread->owner_process->ideal_processor != THREADPROCESSORID_DEFAULT);
+    if (core == static_cast<u32>(THREADPROCESSORID_DEFAULT)) {
+        ASSERT(thread->owner_process->ideal_processor !=
+               static_cast<u8>(THREADPROCESSORID_DEFAULT));
         // Set the target CPU to the one specified in the process' exheader.
         core = thread->owner_process->ideal_processor;
         mask = 1ull << core;
@@ -811,7 +812,7 @@ static ResultCode SetThreadCoreMask(Handle thread_handle, u32 core, u64 mask) {
 
     if (core == OnlyChangeMask) {
         core = thread->ideal_core;
-    } else if (core >= Core::NUM_CPU_CORES && core != -1) {
+    } else if (core >= Core::NUM_CPU_CORES && core != static_cast<u32>(-1)) {
         return ResultCode(ErrorModule::Kernel, ErrCodes::InvalidProcessorId);
     }