aboutsummaryrefslogtreecommitdiff
path: root/src/libmux
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2003-12-09 06:37:26 +0000
committerrsc <devnull@localhost>2003-12-09 06:37:26 +0000
commite95a70884b2eb361e0e879a91e5b46aea4e1d633 (patch)
treee55b66f6f86f9f49735b35dbc6578f6768dd0f8b /src/libmux
parentceb04770830a7610a5a9a21aa96a4ba4cece2a5d (diff)
downloadplan9port-e95a70884b2eb361e0e879a91e5b46aea4e1d633.tar.gz
plan9port-e95a70884b2eb361e0e879a91e5b46aea4e1d633.tar.bz2
plan9port-e95a70884b2eb361e0e879a91e5b46aea4e1d633.zip
Bug fixes from the Valgrind oracle.
Diffstat (limited to 'src/libmux')
-rw-r--r--src/libmux/mux.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/libmux/mux.c b/src/libmux/mux.c
index 7a21b444..b1fdeb03 100644
--- a/src/libmux/mux.c
+++ b/src/libmux/mux.c
@@ -81,6 +81,7 @@ muxrpc(Mux *mux, void *tx)
}
r2 = mux->wait[tag];
r2->p = p;
+ dequeue(mux, r2);
rwakeup(&r2->r);
}
mux->muxer = 0;
@@ -131,6 +132,7 @@ gettag(Mux *mux, Muxrpc *r)
w = realloc(mux->wait, mw*sizeof(w[0]));
if(w == nil)
return -1;
+ memset(w+mux->mwait, 0, (mw-mux->mwait)*sizeof(w[0]));
mux->wait = w;
mux->freetag = mux->mwait;
mux->mwait = mw;