[master] 4e5c59c Handle the failure case correctly

Federico G. Schwindt fgsch at lodoss.net
Sat Jun 9 18:12:11 UTC 2018


commit 4e5c59c158f8b4e83c3ac1e72b18445d5beec15b
Author: Federico G. Schwindt <fgsch at lodoss.net>
Date:   Fri Jun 8 15:58:20 2018 +0100

    Handle the failure case correctly

diff --git a/bin/varnishd/cache/cache_backend.c b/bin/varnishd/cache/cache_backend.c
index 5b553d2..0f089f0 100644
--- a/bin/varnishd/cache/cache_backend.c
+++ b/bin/varnishd/cache/cache_backend.c
@@ -493,8 +493,14 @@ VRT_new_backend_clustered(VRT_CTX, struct vsmw_cluster *vc,
 	be->director = VRT_AddDirector(ctx, vbe_methods, be,
 	    "%s", vrt->vcl_name);
 	if (be->director == NULL) {
-		// XXX
-		VRT_delete_backend(ctx, &be->director);
+		VSC_vbe_Destroy(&be->vsc_seg);
+#define DA(x)	do { if (be->x != NULL) free(be->x); } while (0)
+#define DN(x)	/**/
+	VRT_BACKEND_HANDLE();
+#undef DA
+#undef DN
+		Lck_Delete(&be->mtx);
+		FREE_OBJ(be);
 		return (NULL);
 	}
 


More information about the varnish-commit mailing list