From ff3411f56212e50fe7dbd69a355a9b92097176aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Canna=C3=B2?= Date: Fri, 12 Aug 2016 22:04:05 +0000 Subject: [PATCH] Continuing work on PS * fixed multiplexing * fixed memory leak --- lib/MySQL_Session.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/MySQL_Session.cpp b/lib/MySQL_Session.cpp index 567ca7e4f..596b179b2 100644 --- a/lib/MySQL_Session.cpp +++ b/lib/MySQL_Session.cpp @@ -1896,6 +1896,8 @@ handler_again: enum session_status st=status; size_t sts=previous_status.size(); if (sts) { + myconn->async_state_machine=ASYNC_IDLE; + myds->DSS=STATE_MARIADB_GENERIC; st=previous_status.top(); previous_status.pop(); NEXT_IMMEDIATE(st); @@ -1907,6 +1909,11 @@ handler_again: case PROCESSING_STMT_EXECUTE: { MySQL_Stmt_Result_to_MySQL_wire(CurrentQuery.mysql_stmt, myds->myconn); + if (CurrentQuery.stmt_meta) + if (CurrentQuery.stmt_meta->pkt) { + free(CurrentQuery.stmt_meta->pkt); + CurrentQuery.stmt_meta->pkt=NULL; + } } CurrentQuery.mysql_stmt=NULL; break;