Move check after current_out_packet is updated.

pull/2064/head
Roger A. Light 5 years ago
parent 18bad1ff32
commit e98cc28cd3

@ -215,12 +215,6 @@ int packet__write(struct mosquitto *mosq)
if(!mosq) return MOSQ_ERR_INVAL; if(!mosq) return MOSQ_ERR_INVAL;
if(mosq->sock == INVALID_SOCKET) return MOSQ_ERR_NO_CONN; if(mosq->sock == INVALID_SOCKET) return MOSQ_ERR_NO_CONN;
#ifdef WITH_BROKER
if (mosq->current_out_packet) {
mux__add_out(mosq);
}
#endif
pthread_mutex_lock(&mosq->current_out_packet_mutex); pthread_mutex_lock(&mosq->current_out_packet_mutex);
pthread_mutex_lock(&mosq->out_packet_mutex); pthread_mutex_lock(&mosq->out_packet_mutex);
if(mosq->out_packet && !mosq->current_out_packet){ if(mosq->out_packet && !mosq->current_out_packet){
@ -232,6 +226,12 @@ int packet__write(struct mosquitto *mosq)
} }
pthread_mutex_unlock(&mosq->out_packet_mutex); pthread_mutex_unlock(&mosq->out_packet_mutex);
#ifdef WITH_BROKER
if(mosq->current_out_packet){
mux__add_out(mosq);
}
#endif
state = mosquitto__get_state(mosq); state = mosquitto__get_state(mosq);
#if defined(WITH_TLS) && !defined(WITH_BROKER) #if defined(WITH_TLS) && !defined(WITH_BROKER)
if(state == mosq_cs_connect_pending || mosq->want_connect){ if(state == mosq_cs_connect_pending || mosq->want_connect){

Loading…
Cancel
Save