diff --git a/content/llcache.c b/content/llcache.c index 21dcd9f38..f90cf9f2b 100644 --- a/content/llcache.c +++ b/content/llcache.c @@ -564,10 +564,13 @@ nserror llcache_object_user_destroy(llcache_object_user *user) #ifdef LLCACHE_TRACE LOG(("Destroyed user %p", user)); #endif - - assert(user->next == NULL); - assert(user->prev == NULL); - + + /* We can't assert that user->next/prev are NULL here + * as llcache_object_remove_user can not invalidate + * them. However, we are only ever called as the result + * of the client releasing a handle, so the precondition + * holds. */ + free(user); return NSERROR_OK;