* I accidently broke get_next_locked_block_cache() in r27074; it would always

ignore every other cache (starting from the first).
* The consequence of this was that no blocks were written back automatically
  for those caches, and their transactions were never idle, causing bug #2781.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27831 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2008-10-01 17:05:26 +00:00
parent 1b910a79a2
commit 56ab6f077f
1 changed files with 2 additions and 9 deletions

View File

@ -1596,17 +1596,10 @@ get_next_locked_block_cache(block_cache *last)
} else } else
cache = sCaches.Head(); cache = sCaches.Head();
while (cache != NULL) { if (cache != NULL) {
cache = sCaches.GetNext(cache);
if (cache == NULL)
break;
mutex_lock(&cache->lock); mutex_lock(&cache->lock);
break;
}
if (cache != NULL)
sCaches.Insert(sCaches.GetNext(cache), (block_cache *)&sMarkCache); sCaches.Insert(sCaches.GetNext(cache), (block_cache *)&sMarkCache);
}
return cache; return cache;
} }