release the sorted FDE array when deregistering a frame [PR109685]
The atomic fastpath bypasses the code that releases the sort array which was lazily allocated during unwinding. We now check after deregistering if there is an array to free. libgcc/ChangeLog: PR libgcc/109685 * unwind-dw2-fde.c: Free sort array in atomic fast path.
This commit is contained in:
parent
f5c82bff5e
commit
5cf60b6ba1
1 changed files with 6 additions and 0 deletions
|
@ -241,6 +241,12 @@ __deregister_frame_info_bases (const void *begin)
|
|||
// And remove
|
||||
ob = btree_remove (®istered_frames, range[0]);
|
||||
bool empty_table = (range[1] - range[0]) == 0;
|
||||
|
||||
// Deallocate the sort array if any.
|
||||
if (ob && ob->s.b.sorted)
|
||||
{
|
||||
free (ob->u.sort);
|
||||
}
|
||||
#else
|
||||
init_object_mutex_once ();
|
||||
__gthread_mutex_lock (&object_mutex);
|
||||
|
|
Loading…
Add table
Reference in a new issue