mirror of
https://github.com/lammertb/libhttp.git
synced 2025-08-10 14:23:00 +03:00
Fixed potential dead-lock in connection_close()
This was posted by Morgan McGuire.
This commit is contained in:
@@ -5326,12 +5326,12 @@ static void close_socket_gracefully(struct mg_connection *conn)
|
|||||||
|
|
||||||
static void close_connection(struct mg_connection *conn)
|
static void close_connection(struct mg_connection *conn)
|
||||||
{
|
{
|
||||||
mg_lock(conn);
|
|
||||||
|
|
||||||
// call the connection_close callback if assigned
|
// call the connection_close callback if assigned
|
||||||
if (conn->ctx->callbacks.connection_close != NULL)
|
if (conn->ctx->callbacks.connection_close != NULL)
|
||||||
conn->ctx->callbacks.connection_close(conn);
|
conn->ctx->callbacks.connection_close(conn);
|
||||||
|
|
||||||
|
mg_lock(conn);
|
||||||
|
|
||||||
conn->must_close = 1;
|
conn->must_close = 1;
|
||||||
|
|
||||||
#ifndef NO_SSL
|
#ifndef NO_SSL
|
||||||
|
Reference in New Issue
Block a user