diff options
Diffstat (limited to 'os')
| -rw-r--r-- | os/port/devsrv.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/os/port/devsrv.c b/os/port/devsrv.c index a80a3984..724e007e 100644 --- a/os/port/devsrv.c +++ b/os/port/devsrv.c @@ -606,10 +606,6 @@ srvwrite(Chan *c, void *va, long count, vlong offset) ptrdel(D2H(req.t1)); destroy(req.t1); - poperror(); - ptrdel(D2H(wc)); - destroy(wc); - h = heap(dev.Rwrite); w = H2D(Sys_Rwrite *, h); ptradd(h); @@ -627,6 +623,10 @@ srvwrite(Chan *c, void *va, long count, vlong offset) destroy(w); poperror(); + ptrdel(D2H(wc)); + destroy(wc); + + poperror(); release(); if(l < 0) l = 0; |
