Pārlūkot izejas kodu

Kernel: Flip incorrect bitwise set/clear of signal mask

Idan Horowitz 3 gadi atpakaļ
vecāks
revīzija
13d98999b7
1 mainītis faili ar 2 papildinājumiem un 2 dzēšanām
  1. 2 2
      Kernel/Thread.cpp

+ 2 - 2
Kernel/Thread.cpp

@@ -674,9 +674,9 @@ u32 Thread::signal_mask_block(sigset_t signal_set, bool block)
     SpinlockLocker lock(g_scheduler_lock);
     SpinlockLocker lock(g_scheduler_lock);
     auto previous_signal_mask = m_signal_mask;
     auto previous_signal_mask = m_signal_mask;
     if (block)
     if (block)
-        m_signal_mask &= ~signal_set;
-    else
         m_signal_mask |= signal_set;
         m_signal_mask |= signal_set;
+    else
+        m_signal_mask &= ~signal_set;
     m_have_any_unmasked_pending_signals.store((pending_signals_for_state() & ~m_signal_mask) != 0, AK::memory_order_release);
     m_have_any_unmasked_pending_signals.store((pending_signals_for_state() & ~m_signal_mask) != 0, AK::memory_order_release);
     return previous_signal_mask;
     return previous_signal_mask;
 }
 }