summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'libutils/BasicHashtable.cpp')
-rw-r--r--libutils/BasicHashtable.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/libutils/BasicHashtable.cpp b/libutils/BasicHashtable.cpp
index 491d9e98b..1e9f05333 100644
--- a/libutils/BasicHashtable.cpp
+++ b/libutils/BasicHashtable.cpp
@@ -22,6 +22,8 @@
22#include <utils/BasicHashtable.h> 22#include <utils/BasicHashtable.h>
23#include <utils/misc.h> 23#include <utils/misc.h>
24 24
25#include "SharedBuffer.h"
26
25namespace android { 27namespace android {
26 28
27BasicHashtableImpl::BasicHashtableImpl(size_t entrySize, bool hasTrivialDestructor, 29BasicHashtableImpl::BasicHashtableImpl(size_t entrySize, bool hasTrivialDestructor,
@@ -46,6 +48,12 @@ BasicHashtableImpl::~BasicHashtableImpl()
46{ 48{
47} 49}
48 50
51void BasicHashtableImpl::edit() {
52 if (mBuckets && !SharedBuffer::bufferFromData(mBuckets)->onlyOwner()) {
53 clone();
54 }
55}
56
49void BasicHashtableImpl::dispose() { 57void BasicHashtableImpl::dispose() {
50 if (mBuckets) { 58 if (mBuckets) {
51 releaseBuckets(mBuckets, mBucketCount); 59 releaseBuckets(mBuckets, mBucketCount);