summaryrefslogtreecommitdiff
path: root/libpager/demuxer.c
diff options
context:
space:
mode:
Diffstat (limited to 'libpager/demuxer.c')
-rw-r--r--libpager/demuxer.c20
1 files changed, 4 insertions, 16 deletions
diff --git a/libpager/demuxer.c b/libpager/demuxer.c
index d6b99fc2..79c0ddc5 100644
--- a/libpager/demuxer.c
+++ b/libpager/demuxer.c
@@ -1,5 +1,5 @@
/* Demuxer for pager library
- Copyright (C) 1994, 1995, 2002 Free Software Foundation
+ Copyright (C) 1994, 1995, 2002, 2011 Free Software Foundation
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
@@ -33,20 +33,8 @@ pager_demuxer (mach_msg_header_t *inp,
int result = _pager_seqnos_memory_object_server (inp, outp)
|| _pager_seqnos_notify_server (inp, outp);
if (!result)
- {
- struct pager *p;
-
- p = ports_lookup_port (0, inp->msgh_local_port, _pager_class);
- if (p)
- {
- /* Synchronize our bookkeeping of the port's seqno with
- the one consumed by this bogus message. */
- mutex_lock (&p->interlock);
- _pager_wait_for_seqno (p, inp->msgh_seqno);
- _pager_release_seqno (p, inp->msgh_seqno);
- mutex_unlock (&p->interlock);
- ports_port_deref (p);
- }
- }
+ /* Synchronize our bookkeeping of the port's seqno with the one consumed by
+ this bogus message. */
+ _pager_update_seqno (inp->msgh_local_port, inp->msgh_seqno);
return result;
}