]> git.meshlink.io Git - meshlink/blobdiff - src/meshlink.c
Fix a potential segfault when closing a meshlink handle.
[meshlink] / src / meshlink.c
index 4ff26ac16f8847fd3b3ad0522b0d274ef78ec4ce..24d4c249eb8c2285604e2fd9dd5d2f4a51ed8474 100644 (file)
@@ -2396,6 +2396,11 @@ static void channel_accept(struct utcp_connection *utcp_connection, uint16_t por
 
 static ssize_t channel_send(struct utcp *utcp, const void *data, size_t len) {
        node_t *n = utcp->priv;
+
+       if(n->status.destroyed) {
+               return -1;
+       }
+
        meshlink_handle_t *mesh = n->mesh;
        return meshlink_send(mesh, (meshlink_node_t *)n, data, len) ? (ssize_t)len : -1;
 }