diff options
| author | Garrett D'Amore <garrett@damore.org> | 2018-07-18 13:23:58 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2018-07-18 15:54:32 -0700 |
| commit | d4d49cef92356778215c757e8f6d1d0d35662a64 (patch) | |
| tree | f28de7321f0b301faea84cd38ce137db2b126dbc /src/core/pipe.c | |
| parent | b310f712828962bf3187caf3bfe064c3531c5628 (diff) | |
| download | nng-d4d49cef92356778215c757e8f6d1d0d35662a64.tar.gz nng-d4d49cef92356778215c757e8f6d1d0d35662a64.tar.bz2 nng-d4d49cef92356778215c757e8f6d1d0d35662a64.zip | |
fixes #601 pipe destroy can fail to close pipe
Diffstat (limited to 'src/core/pipe.c')
| -rw-r--r-- | src/core/pipe.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/core/pipe.c b/src/core/pipe.c index e95fe1d4..bac9203b 100644 --- a/src/core/pipe.c +++ b/src/core/pipe.c @@ -54,8 +54,8 @@ nni_pipe_sys_fini(void) } } -void -nni_pipe_destroy(nni_pipe *p) +static void +pipe_destroy(nni_pipe *p) { if (p == NULL) { return; @@ -174,7 +174,7 @@ nni_pipe_close(nni_pipe *p) p->p_tran_ops.p_close(p->p_tran_data); } - nni_reap(&p->p_reap, (nni_cb) nni_pipe_destroy, p); + nni_reap(&p->p_reap, (nni_cb) pipe_destroy, p); } bool @@ -263,7 +263,7 @@ nni_pipe_create(nni_pipe **pp, nni_sock *sock, nni_tran *tran, void *tdata) if ((rv != 0) || ((rv = pops->pipe_init(&p->p_proto_data, p, sdata)) != 0)) { - nni_pipe_destroy(p); + nni_pipe_close(p); return (rv); } |
