| 2269 | } |
| 2270 | |
| 2271 | static void |
| 2272 | prof_tdata_destroy_locked(tsd_t *tsd, prof_tdata_t *tdata, |
| 2273 | bool even_if_attached) { |
| 2274 | malloc_mutex_assert_owner(tsd_tsdn(tsd), &tdatas_mtx); |
| 2275 | |
| 2276 | tdata_tree_remove(&tdatas, tdata); |
| 2277 | |
| 2278 | assert(prof_tdata_should_destroy_unlocked(tdata, even_if_attached)); |
| 2279 | |
| 2280 | if (tdata->thread_name != NULL) { |
| 2281 | idalloctm(tsd_tsdn(tsd), tdata->thread_name, NULL, NULL, true, |
| 2282 | true); |
| 2283 | } |
| 2284 | ckh_delete(tsd, &tdata->bt2tctx); |
| 2285 | idalloctm(tsd_tsdn(tsd), tdata, NULL, NULL, true, true); |
| 2286 | } |
| 2287 | |
| 2288 | static void |
| 2289 | prof_tdata_destroy(tsd_t *tsd, prof_tdata_t *tdata, bool even_if_attached) { |
no test coverage detected