ソースを参照

mi_datagram: free async handler when command completed

- reported by Torge Szczepanek, GH#298

(cherry picked from commit 374bfb1c467d6bf2a4cc143d22868c37143783bd)
(cherry picked from commit d495aafb98d3560c36b681dae21b671ce8b23e86)
Daniel-Constantin Mierla 10 年 前
コミット
a4ca8feae1
1 ファイル変更2 行追加0 行削除
  1. 2 0
      modules/mi_datagram/datagram_fnc.c

+ 2 - 0
modules/mi_datagram/datagram_fnc.c

@@ -359,6 +359,7 @@ static void datagram_close_async(struct mi_root *mi_rpl,struct mi_handler *hdl,
 		}
 		free_mi_tree(mi_rpl);
 		pkg_free(dtgram.start);
+		if (done) free_async_handler( hdl );
 	} else if (done) {
 		mi_send_dgram(reply_sock, MI_COMMAND_FAILED, MI_COMMAND_FAILED_LEN,
 				(struct sockaddr*)&reply_addr, reply_addr_len, mi_socket_timeout);
@@ -372,6 +373,7 @@ err:
 	if(dtgram.start)
 		pkg_free(dtgram.start);
 	close(reply_sock);
+	if (done) free_async_handler( hdl );
 	return;
 }