File xenia_PR2232.patch of Package xenia-canary

diff --git a/src/xenia/cpu/mmio_handler.cc b/src/xenia/cpu/mmio_handler.cc
index d676c4ada..c8912f011 100644
--- a/src/xenia/cpu/mmio_handler.cc
+++ b/src/xenia/cpu/mmio_handler.cc
@@ -444,8 +444,9 @@ bool MMIOHandler::ExceptionCallback(Exception* ex) {
     auto lock = global_critical_region_.Acquire();
     memory::PageAccess cur_access;
     size_t page_length = memory::page_size();
-    memory::QueryProtect(fault_host_address, page_length, cur_access);
-    if (cur_access != memory::PageAccess::kNoAccess &&
+    bool protect_result =
+        memory::QueryProtect(fault_host_address, page_length, cur_access);
+    if (protect_result == true && cur_access != memory::PageAccess::kNoAccess &&
         (!is_write || cur_access != memory::PageAccess::kReadOnly)) {
       // Another thread has cleared this watch. Abort.
       XELOGD("Race condition on watch, was already cleared by another thread!");
openSUSE Build Service is sponsored by