diff options
| author | Garrett D'Amore <garrett@damore.org> | 2023-11-26 09:53:40 -0800 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2023-11-26 09:53:40 -0800 |
| commit | 759a2e9d65bd093ac9740d2cf0aa38a0212c5c23 (patch) | |
| tree | eab1df58753bc40e89cfdcf25a9963a928ddd2ec /src/sp/transport/ws | |
| parent | 003f0556a61f3e7225f4f0d0087bdf08af5b632a (diff) | |
| download | nng-759a2e9d65bd093ac9740d2cf0aa38a0212c5c23.tar.gz nng-759a2e9d65bd093ac9740d2cf0aa38a0212c5c23.tar.bz2 nng-759a2e9d65bd093ac9740d2cf0aa38a0212c5c23.zip | |
fixes #1713 SP pipe_send leaks message if aio is canceled
Diffstat (limited to 'src/sp/transport/ws')
| -rw-r--r-- | src/sp/transport/ws/websocket.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/sp/transport/ws/websocket.c b/src/sp/transport/ws/websocket.c index 7cf9949f..a46ea58b 100644 --- a/src/sp/transport/ws/websocket.c +++ b/src/sp/transport/ws/websocket.c @@ -1,5 +1,5 @@ // -// Copyright 2020 Staysail Systems, Inc. <info@staysail.tech> +// Copyright 2023 Staysail Systems, Inc. <info@staysail.tech> // Copyright 2018 Capitar IT Group BV <info@capitar.com> // Copyright 2019 Devolutions <info@devolutions.net> // @@ -158,6 +158,10 @@ wstran_pipe_send(void *arg, nni_aio *aio) int rv; if (nni_aio_begin(aio) != 0) { + // No way to give the message back to the protocol, so + // we just discard it silently to prevent it from leaking. + nni_msg_free(nni_aio_get_msg(aio)); + nni_aio_set_msg(aio, NULL); return; } nni_mtx_lock(&p->mtx); |
