| Kernel v2.4.25 /kernel/signal.c |
|---|
 2.4.25
 kernel
 signal.c
diff -urN linux-2.4.24/kernel/signal.c linux-2.4.25/kernel/signal.c
--- linux-2.4.24/kernel/signal.c 2003-06-13 07:51:39.000000000 -0700
+++ linux-2.4.25/kernel/signal.c 2004-02-18 05:36:32.000000000 -0800
@@ -879,16 +879,16 @@
error = -EINVAL;
break;
case SIG_BLOCK:
- sigorsets(&new_set, &old_set, &new_set);
+ sigorsets(¤t->blocked, &old_set, &new_set);
break;
case SIG_UNBLOCK:
- signandsets(&new_set, &old_set, &new_set);
+ signandsets(¤t->blocked, &old_set, &new_set);
break;
case SIG_SETMASK:
+ current->blocked = new_set;
break;
}
- current->blocked = new_set;
recalc_sigpending(current);
spin_unlock_irq(¤t->sigmask_lock);
if (error)
|