Showing
1 changed file
with
3 additions
and
21 deletions
@@ -123,20 +123,6 @@ _memSegmentCompare(const void * a, const void * b) | @@ -123,20 +123,6 @@ _memSegmentCompare(const void * a, const void * b) | ||
123 | } | 123 | } |
124 | 124 | ||
125 | /** | 125 | /** |
126 | - * find element in tree | ||
127 | - */ | ||
128 | -static | ||
129 | -struct memSegment * | ||
130 | -findElement(struct memSegment * tree, size_t size) | ||
131 | -{ | ||
132 | - int found; | ||
133 | - | ||
134 | - TR_TREE_FIND(tree, &size, found, _memSegmentFindCompare); | ||
135 | - | ||
136 | - return found == 0 ? tree : NULL; | ||
137 | -} | ||
138 | - | ||
139 | -/** | ||
140 | * insert element in tree | 126 | * insert element in tree |
141 | */ | 127 | */ |
142 | static | 128 | static |
@@ -250,7 +236,7 @@ insertElement(struct memSegment ** tree, struct memSegment * element) | @@ -250,7 +236,7 @@ insertElement(struct memSegment ** tree, struct memSegment * element) | ||
250 | 236 | ||
251 | static | 237 | static |
252 | struct memSegment * | 238 | struct memSegment * |
253 | -deleteElement(struct memSegment ** tree, struct memSegment * element) | 239 | +deleteElement(struct memSegment ** tree, size_t size) |
254 | { | 240 | { |
255 | struct memSegment * node = *tree; | 241 | struct memSegment * node = *tree; |
256 | struct memSegment * del_node; | 242 | struct memSegment * del_node; |
@@ -259,7 +245,7 @@ deleteElement(struct memSegment ** tree, struct memSegment * element) | @@ -259,7 +245,7 @@ deleteElement(struct memSegment ** tree, struct memSegment * element) | ||
259 | int found; | 245 | int found; |
260 | 246 | ||
261 | // find the relevant node and it's parent | 247 | // find the relevant node and it's parent |
262 | - TR_TREE_FIND(node, element, found, _memSegmentCompare); | 248 | + TR_TREE_FIND(node, &size, found, _memSegmentFindCompare); |
263 | 249 | ||
264 | //while (node) { | 250 | //while (node) { |
265 | if (found != 0) { | 251 | if (found != 0) { |
@@ -530,7 +516,6 @@ post(struct memSegment * tree, void (*cb)(struct memSegment *, int)) | @@ -530,7 +516,6 @@ post(struct memSegment * tree, void (*cb)(struct memSegment *, int)) | ||
530 | } | 516 | } |
531 | } | 517 | } |
532 | 518 | ||
533 | -static | ||
534 | struct memSegment * segments = NULL; | 519 | struct memSegment * segments = NULL; |
535 | 520 | ||
536 | static | 521 | static |
@@ -612,14 +597,11 @@ TR_malloc(size_t size) | @@ -612,14 +597,11 @@ TR_malloc(size_t size) | ||
612 | } | 597 | } |
613 | 598 | ||
614 | #ifdef MEM_OPT | 599 | #ifdef MEM_OPT |
615 | - seg = findElement(segments, size); | 600 | + seg = deleteElement(&segments, size); |
616 | #endif | 601 | #endif |
617 | 602 | ||
618 | if (NULL == seg) { | 603 | if (NULL == seg) { |
619 | seg = newElement(size); | 604 | seg = newElement(size); |
620 | - } else { | ||
621 | - // remove the found one from the tree as we use it now. | ||
622 | - seg = deleteElement(&segments, seg); | ||
623 | } | 605 | } |
624 | 606 | ||
625 | return seg->ptr; | 607 | return seg->ptr; |
Please
register
or
login
to post a comment