]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
login-common: Make login_proxy_free(&NULL) no-op
authorAki Tuomi <aki.tuomi@open-xchange.com>
Thu, 25 Aug 2022 07:17:32 +0000 (10:17 +0300)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Wed, 31 Aug 2022 10:53:29 +0000 (10:53 +0000)
Fixes segfault when proxying loops.

Broken in a1acd71cf65e6a6b92a6bdd1c1a5479f24d4aa35

src/login-common/login-proxy.c

index da58b169963cfb7d7cfeb1265e7ca89412ea1ebd..20b2fd3147f9a64fff035018aa4853361260fea1 100644 (file)
@@ -703,6 +703,8 @@ login_proxy_free_full(struct login_proxy **_proxy, const char *log_msg,
 void login_proxy_free(struct login_proxy **_proxy)
 {
        struct login_proxy *proxy = *_proxy;
+       if (proxy == NULL)
+               return;
 
        i_assert(!proxy->detached || proxy->client->destroyed);
        /* Note: The NULL error is never even attempted to be used here. */