[haiku-commits] haiku: hrev48673 - src/add-ons/kernel/file_systems/ext2

  • From: pulkomandy@xxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Tue, 13 Jan 2015 22:53:24 +0100 (CET)

hrev48673 adds 1 changeset to branch 'master'
old head: 89678b6b5a4728fc46f28a4e95659e82d9120c62
new head: e95068dfa81542f83a748c6839f8f833e8c71a50
overview: 
http://cgit.haiku-os.org/haiku/log/?qt=range&q=e95068dfa815+%5E89678b6b5a47

----------------------------------------------------------------------------

e95068dfa815: ext2: fix logic error.
  
  * Thanks to Ingo and Jérôme for review.
  * The Remove can't fail after a succesful Lookup so don't check for that
  * Return B_OK on success

                                 [ Adrien Destugues <pulkomandy@xxxxxxxxx> ]

----------------------------------------------------------------------------

Revision:    hrev48673
Commit:      e95068dfa81542f83a748c6839f8f833e8c71a50
URL:         http://cgit.haiku-os.org/haiku/commit/?id=e95068dfa815
Author:      Adrien Destugues <pulkomandy@xxxxxxxxx>
Date:        Tue Jan 13 21:50:14 2015 UTC

----------------------------------------------------------------------------

1 file changed, 6 insertions(+), 7 deletions(-)
.../kernel/file_systems/ext2/HashRevokeManager.cpp      | 13 ++++++-------

----------------------------------------------------------------------------

diff --git a/src/add-ons/kernel/file_systems/ext2/HashRevokeManager.cpp 
b/src/add-ons/kernel/file_systems/ext2/HashRevokeManager.cpp
index 9f76ece..653d6e0 100644
--- a/src/add-ons/kernel/file_systems/ext2/HashRevokeManager.cpp
+++ b/src/add-ons/kernel/file_systems/ext2/HashRevokeManager.cpp
@@ -63,13 +63,13 @@ status_t
 HashRevokeManager::Insert(uint32 block, uint32 commitID)
 {
        RevokeElement* element = fHash->Lookup(block);
-   
+
        if (element != NULL) {
                TRACE("HashRevokeManager::Insert(): Already has an element\n");
                if (element->commitID < commitID) {
                        TRACE("HashRevokeManager::Insert(): Deleting previous 
element\n");
                        bool retValue = fHash->Remove(element);
-                       
+
                        if (!retValue)
                                return B_ERROR;
 
@@ -92,12 +92,11 @@ HashRevokeManager::Remove(uint32 block)
        if (element == NULL)
                return B_ERROR; // TODO: Perhaps we should just ignore?
 
-       bool retValue = fHash->Remove(element);
-       
-       if (retValue)
-               delete element;
+       fHash->Remove(element);
+               // Can't fail as we just did a sucessful Lookup()
 
-       return B_ERROR;
+       delete element;
+       return B_OK;
 }
 
 


Other related posts:

  • » [haiku-commits] haiku: hrev48673 - src/add-ons/kernel/file_systems/ext2 - pulkomandy