Merge pull request #735 from karrots/mqtt_close_disconnect

mqtt:close() send the DISCONNECT message (fix #673)
This commit is contained in:
Johny Mattsson 2015-11-10 12:08:16 +11:00
commit cfae4cdc4e

View File

@ -1034,7 +1034,14 @@ static int mqtt_socket_close( lua_State* L )
if(mud->pesp_conn == NULL)
return 0;
// call mqtt_disconnect()
// Send disconnect message
mqtt_message_t* temp_msg = mqtt_msg_disconnect(&mud->mqtt_state.mqtt_connection);
NODE_DBG("Send MQTT disconnect infomation, data len: %d, d[0]=%d \r\n", temp_msg->length, temp_msg->data[0]);
if(mud->secure)
espconn_secure_sent(mud->pesp_conn, temp_msg->data, temp_msg->length);
else
espconn_sent(mud->pesp_conn, temp_msg->data, temp_msg->length);
mud->mqtt_state.auto_reconnect = 0; // stop auto reconnect.
#ifdef CLIENT_SSL_ENABLE