diff --git a/lib/MySQL_Session.cpp b/lib/MySQL_Session.cpp index 1c1a9d5c8..861279fa9 100644 --- a/lib/MySQL_Session.cpp +++ b/lib/MySQL_Session.cpp @@ -8126,8 +8126,8 @@ char* MySQL_Session::get_current_query(int max_length) { } if (CurrentQuery.stmt_info == NULL) { // text protocol - query_ptr = mybe->server_myds->myconn->query.ptr; - query_len = mybe->server_myds->myconn->query.length; + query_ptr = reinterpret_cast(CurrentQuery.QueryPointer); + query_len = CurrentQuery.QueryLength; } else { // prepared statement query_ptr = CurrentQuery.stmt_info->query; query_len = CurrentQuery.stmt_info->query_length; @@ -8145,8 +8145,8 @@ char* MySQL_Session::get_current_query(int max_length) { res = (char *) malloc(query_len + 1); if (trunc_query) { // for truncated queries, add three dots at the end - strncpy(res, query_ptr, query_len - 3); - strncpy(res + (query_len - 3), "...", 3); + memcpy(res, query_ptr, query_len - 3); + memcpy(res + (query_len - 3), "...", 3); } else { strncpy(res, query_ptr, query_len); } @@ -8154,4 +8154,4 @@ char* MySQL_Session::get_current_query(int max_length) { } return res; -} \ No newline at end of file +}