| 5074 | } |
| 5075 | |
| 5076 | static void* internal_mspace_realloc(mspace msp, void* oldmem, size_t bytes, int cpymem) { |
| 5077 | if (oldmem == 0) |
| 5078 | return mspace_malloc(msp, bytes); |
| 5079 | #ifdef REALLOC_ZERO_BYTES_FREES |
| 5080 | if (bytes == 0) { |
| 5081 | mspace_free(msp, oldmem); |
| 5082 | return 0; |
| 5083 | } |
| 5084 | #endif /* REALLOC_ZERO_BYTES_FREES */ |
| 5085 | else { |
| 5086 | #if FOOTERS |
| 5087 | mchunkptr p = mem2chunk(oldmem); |
| 5088 | mstate ms = get_mstate_for(p); |
| 5089 | #else /* FOOTERS */ |
| 5090 | mstate ms = (mstate)msp; |
| 5091 | #endif /* FOOTERS */ |
| 5092 | if (!ok_magic(ms)) { |
| 5093 | USAGE_ERROR_ACTION(ms,ms); |
| 5094 | return 0; |
| 5095 | } |
| 5096 | return internal_realloc(ms, oldmem, bytes, cpymem); |
| 5097 | } |
| 5098 | } |
| 5099 | |
| 5100 | void* mspace_realloc(mspace msp, void* oldmem, size_t bytes) |
| 5101 | { |
no test coverage detected