[master] 046724d6c Minor refactor of sml_objfree(): Add local variable for stevedore

Nils Goroll nils.goroll at uplex.de
Sun Jul 9 11:14:11 UTC 2023


commit 046724d6cc2660299e8d98c226b82b4a800c404b
Author: Nils Goroll <nils.goroll at uplex.de>
Date:   Sun Jul 9 13:12:08 2023 +0200

    Minor refactor of sml_objfree(): Add local variable for stevedore

diff --git a/bin/varnishd/storage/storage_simple.c b/bin/varnishd/storage/storage_simple.c
index 5735eed7e..71f941e34 100644
--- a/bin/varnishd/storage/storage_simple.c
+++ b/bin/varnishd/storage/storage_simple.c
@@ -252,21 +252,25 @@ sml_slim(struct worker *wrk, struct objcore *oc)
 static void v_matchproto_(objfree_f)
 sml_objfree(struct worker *wrk, struct objcore *oc)
 {
+	const struct stevedore *stv;
 	struct storage *st;
 	struct object *o;
 
 	CHECK_OBJ_NOTNULL(wrk, WORKER_MAGIC);
 	CHECK_OBJ_NOTNULL(oc, OBJCORE_MAGIC);
-	sml_slim(wrk, oc);
+	stv = oc->stobj->stevedore;
+	CHECK_OBJ_NOTNULL(stv, STEVEDORE_MAGIC);
 	CAST_OBJ_NOTNULL(o, oc->stobj->priv, OBJECT_MAGIC);
+
+	sml_slim(wrk, oc);
 	st = o->objstore;
 	CHECK_OBJ_NOTNULL(st, STORAGE_MAGIC);
 	FINI_OBJ(o);
 
-	if (oc->boc == NULL && oc->stobj->stevedore->lru != NULL)
+	if (oc->boc == NULL && stv->lru != NULL)
 		LRU_Remove(oc);
 
-	sml_stv_free(oc->stobj->stevedore, st);
+	sml_stv_free(stv, st);
 
 	memset(oc->stobj, 0, sizeof oc->stobj);
 


More information about the varnish-commit mailing list