summaryrefslogtreecommitdiffstats
path: root/include/binder/MemoryDealer.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/binder/MemoryDealer.h')
-rw-r--r--include/binder/MemoryDealer.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/include/binder/MemoryDealer.h b/include/binder/MemoryDealer.h
index d057556..6628f75 100644
--- a/include/binder/MemoryDealer.h
+++ b/include/binder/MemoryDealer.h
@@ -126,13 +126,22 @@ public:
mFirst = mLast = newNode;
newNode->prev = newNode->next = 0;
} else {
- insertBefore(mFirst, newNode);
+ newNode->prev = 0;
+ newNode->next = mFirst;
+ mFirst->prev = newNode;
+ mFirst = newNode;
}
}
void insertTail(NODE* newNode) {
- if (mLast == 0) insertBeginning(newNode);
- else insertAfter(mLast, newNode);
+ if (mLast == 0) {
+ insertHead(newNode);
+ } else {
+ newNode->prev = mLast;
+ newNode->next = 0;
+ mLast->next = newNode;
+ mLast = newNode;
+ }
}
NODE* remove(NODE* node) {