| 217 | } |
| 218 | |
| 219 | void |
| 220 | debugFree(void *ptr) |
| 221 | { |
| 222 | MtraceNode *mtnode; |
| 223 | |
| 224 | if (ptr == NULL) { |
| 225 | return; |
| 226 | } |
| 227 | |
| 228 | mtnode = searchMtraceNode(ptr); |
| 229 | assert((mtnode != NULL) && (mtnode->magic == MTRACE_NODE_MAGIC)); |
| 230 | |
| 231 | MTRACE_LOCK(); |
| 232 | tracedSize -= mtnode->size; |
| 233 | rawSize -= rawTracedSize(mtnode); |
| 234 | listDel(&mtnode->node); |
| 235 | MTRACE_UNLOCK(); |
| 236 | |
| 237 | freeNode(&mtnode->node); |
| 238 | } |
| 239 | |
| 240 | void |
| 241 | printMallocStatistics(void) |
no test coverage detected