This is an update for the ipc.cc patch in the README file to apply against 
current pistachio CVS version.
Other pieces seem to work correctly.

Regards,
Giuseppe Scrivano

--- pistachio/kernel/src/api/v4/ipc.cc.old      2005-08-06 13:56:45.000000000 
+0200
+++ pistachio/kernel/src/api/v4/ipc.cc  2005-08-06 14:06:12.000000000 +0200
@@ -318,6 +318,9 @@
                 && (current->get_space() == virt_sender->get_space() ||
                     current->get_space() == to_tcb->get_space()))
            {
+    if (virt_sender->get_state().is_waiting() &&
+                   virt_sender->get_partner() == sender_id)
+                 virt_sender->set_partner(to_tid);
                sender_id = current->get_virtual_sender();
            }
            else
@@ -339,7 +342,7 @@
        if (EXPECT_FALSE(
            (!to_tcb->get_state().is_waiting())  ||
            (   // Not waiting for sender (may be virtual sender)?
-               to_tcb->get_partner() != sender_id &&
+    ( to_tcb->get_partner() != current->get_global_id() &&
                // Not open wait?
                !to_tcb->get_partner().is_anythread() &&
                // Not open local wait?


_______________________________________________
L4-hurd mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/l4-hurd

Reply via email to