From 832f80cb88335ddf2a215a564497523361d8d868 Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期三, 29 十二月 2021 11:28:58 +0800
Subject: [PATCH] bug fxied

---
 src/nng_wrap.cpp |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/nng_wrap.cpp b/src/nng_wrap.cpp
index 3ae3f62..31fad46 100644
--- a/src/nng_wrap.cpp
+++ b/src/nng_wrap.cpp
@@ -407,6 +407,7 @@
     case SEND:
         if ((rv = nng_aio_result(work->aio)) != 0) {
             nng_msg_free(work->msg);
+            work->msg = NULL;
         }
         work->state = RECV;
         nng_ctx_recv(work->ctx, work->aio);
@@ -445,9 +446,11 @@
     w->user_data = rep;
 
     if ((rv = nng_aio_alloc(&w->aio, server_cb, w)) != 0) {
+        nng_free(w, sizeof(*w));
         return NULL;
     }
     if ((rv = nng_ctx_open(&w->ctx, sock)) != 0) {
+        nng_free(w, sizeof(*w));
         return NULL;
     }
     w->state = INIT;
@@ -473,6 +476,7 @@
     remove_exist(url);
     rv = nng_listen(*sock, url.c_str(), NULL, 0);
     if (rv < 0){
+        for(int i = 0; i < count; i++) if(works[i]) nng_free(works[i], sizeof(work));
         free(works);
         PRNTVITAG("create_server nng_listen failed");
         PRNTVITAG(url);

--
Gitblit v1.8.0