]> err.no Git - varnish/commitdiff
Actually, we cannot touch objects on deathrow, so just ignore
authorphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Mon, 24 Sep 2007 13:00:33 +0000 (13:00 +0000)
committerphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Mon, 24 Sep 2007 13:00:33 +0000 (13:00 +0000)
any object with heap_idx == 0.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2011 d4fa192b-c00b-0410-8231-f00ffab90ce4

varnish-cache/bin/varnishd/cache_expire.c

index 187bbcb970236c4665c6b3ec7aa8a17df79dcc2f..d615577b3375ecdeb2c5f392702d566afda1ef36 100644 (file)
@@ -82,7 +82,7 @@ EXP_Touch(struct object *o, double now)
        CHECK_OBJ_NOTNULL(o, OBJECT_MAGIC);
        if (o->lru_stamp + params->lru_timeout < now) {
                LOCK(&exp_mtx); /* XXX: should be ..._TRY */
-               if (o->heap_idx != lru_target) {
+               if (o->heap_idx != lru_target && o->heap_idx != 0) {
                        TAILQ_REMOVE(&exp_lru, o, deathrow);
                        TAILQ_INSERT_TAIL(&exp_lru, o, deathrow);
                        o->lru_stamp = now;