diff --git a/src/server.c b/src/server.c index c96b096e2..326568041 100644 --- a/src/server.c +++ b/src/server.c @@ -4155,11 +4155,15 @@ static int cli_parse_set_server(char **args, struct appctx *appctx, void *privat appctx->ctx.cli.severity = LOG_ERR; appctx->ctx.cli.msg = "'set server check-port' expects an integer as argument.\n"; appctx->st0 = CLI_ST_PRINT; + SPIN_UNLOCK(SERVER_LOCK, &sv->lock); + return 1; } if ((i < 0) || (i > 65535)) { appctx->ctx.cli.severity = LOG_ERR; appctx->ctx.cli.msg = "provided port is not valid.\n"; appctx->st0 = CLI_ST_PRINT; + SPIN_UNLOCK(SERVER_LOCK, &sv->lock); + return 1; } /* prevent the update of port to 0 if MAPPORTS are in use */ if ((sv->flags & SRV_F_MAPPORTS) && (i == 0)) {