diff options
author | Mike Buland <eichlan@xagasoft.com> | 2014-07-22 16:39:01 +0000 |
---|---|---|
committer | Mike Buland <eichlan@xagasoft.com> | 2014-07-22 16:39:01 +0000 |
commit | 21a4337dc2f969dc3ec81e6ba3170119bcb67016 (patch) | |
tree | af8077ea0e89ec29b499e46583f3de35d1b3103c /src/unstable/cacheobject.h | |
parent | 6482ec1f7550f0fca153bd8f556327902c7afec8 (diff) | |
download | libbu++-21a4337dc2f969dc3ec81e6ba3170119bcb67016.tar.gz libbu++-21a4337dc2f969dc3ec81e6ba3170119bcb67016.tar.bz2 libbu++-21a4337dc2f969dc3ec81e6ba3170119bcb67016.tar.xz libbu++-21a4337dc2f969dc3ec81e6ba3170119bcb67016.zip |
Deferred erase now works on cache entries. You can erase a cache entry while
it still has active references, and it will be safely cleaned up when the last
reference is released.
Diffstat (limited to 'src/unstable/cacheobject.h')
-rw-r--r-- | src/unstable/cacheobject.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/unstable/cacheobject.h b/src/unstable/cacheobject.h index 6eb507b..47e09de 100644 --- a/src/unstable/cacheobject.h +++ b/src/unstable/cacheobject.h | |||
@@ -86,7 +86,8 @@ namespace Bu | |||
86 | protected: | 86 | protected: |
87 | void changed( bool bChanged=true ) | 87 | void changed( bool bChanged=true ) |
88 | { | 88 | { |
89 | if( this->bChanged == false && bChanged == true && pCache ) | 89 | if( this->bChanged == false && bChanged == true && pCache && |
90 | pEntry && !pEntry->isDeleted() ) | ||
90 | pCache->objectChanged( getKey() ); | 91 | pCache->objectChanged( getKey() ); |
91 | 92 | ||
92 | this->bChanged = bChanged; | 93 | this->bChanged = bChanged; |