Fix callback deadlocks after calling mosquitto_disconnect(), when using the threaded interfaces. Closes bug #1313725.
Thanks to Michael Frommberger.
This commit is contained in:
parent
06625420e2
commit
b6f2d3e087
@ -18,6 +18,8 @@ Broker:
|
|||||||
|
|
||||||
Client library:
|
Client library:
|
||||||
- Fix topic matching edge case.
|
- Fix topic matching edge case.
|
||||||
|
- Fix callback deadlocks after calling mosquitto_disconnect(), when using the
|
||||||
|
threaded interfaces. Closes bug #1313725.
|
||||||
|
|
||||||
General:
|
General:
|
||||||
- Use $(STRIP) for stripping binaries when installing, to allow easier cross
|
- Use $(STRIP) for stripping binaries when installing, to allow easier cross
|
||||||
|
@ -776,6 +776,7 @@ int _mosquitto_packet_write(struct mosquitto *mosq)
|
|||||||
mosq->on_disconnect(mosq, mosq->userdata, 0);
|
mosq->on_disconnect(mosq, mosq->userdata, 0);
|
||||||
mosq->in_callback = false;
|
mosq->in_callback = false;
|
||||||
}
|
}
|
||||||
|
pthread_mutex_unlock(&mosq->callback_mutex);
|
||||||
pthread_mutex_unlock(&mosq->current_out_packet_mutex);
|
pthread_mutex_unlock(&mosq->current_out_packet_mutex);
|
||||||
return MOSQ_ERR_SUCCESS;
|
return MOSQ_ERR_SUCCESS;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user