[haiku-commits] r38242 - haiku/trunk/src/system/kernel/cache

  • From: axeld@xxxxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 18 Aug 2010 18:44:52 +0200 (CEST)

Author: axeld
Date: 2010-08-18 18:44:51 +0200 (Wed, 18 Aug 2010)
New Revision: 38242
Changeset: http://dev.haiku-os.org/changeset/38242

Modified:
   haiku/trunk/src/system/kernel/cache/block_cache.cpp
Log:
* We need to reset the blockNumber, or else we'll discard the wrong blocks
  which has rather desastrous consequences - thanks to Stippi for the heads
  up :-)


Modified: haiku/trunk/src/system/kernel/cache/block_cache.cpp
===================================================================
--- haiku/trunk/src/system/kernel/cache/block_cache.cpp 2010-08-18 16:25:31 UTC 
(rev 38241)
+++ haiku/trunk/src/system/kernel/cache/block_cache.cpp 2010-08-18 16:44:51 UTC 
(rev 38242)
@@ -3406,6 +3406,9 @@
        writer.Write();
                // TODO: this can fail, too!
 
+       blockNumber -= numBlocks;
+               // reset blockNumber to its original value
+
        for (size_t i = 0; i < numBlocks; i++, blockNumber++) {
                cached_block* block = (cached_block*)hash_lookup(cache->hash,
                        &blockNumber);


Other related posts: