fix assert in non-atomic path
The non-atomic path does not have range information, we have to adjust the assert handle that case, too. libgcc/ChangeLog: * unwind-dw2-fde.c: Fix assert in non-atomic path.
This commit is contained in:
parent
de6400841b
commit
bb90593314
@ -240,6 +240,7 @@ __deregister_frame_info_bases (const void *begin)
|
||||
|
||||
// And remove
|
||||
ob = btree_remove (®istered_frames, range[0]);
|
||||
bool empty_table = (range[1] - range[0]) == 0;
|
||||
#else
|
||||
init_object_mutex_once ();
|
||||
__gthread_mutex_lock (&object_mutex);
|
||||
@ -276,11 +277,12 @@ __deregister_frame_info_bases (const void *begin)
|
||||
|
||||
out:
|
||||
__gthread_mutex_unlock (&object_mutex);
|
||||
const int empty_table = 0; // The non-atomic path stores all tables.
|
||||
#endif
|
||||
|
||||
// If we didn't find anything in the lookup data structures then they
|
||||
// were either already destroyed or we tried to remove an empty range.
|
||||
gcc_assert (in_shutdown || ((range[1] - range[0]) == 0 || ob));
|
||||
gcc_assert (in_shutdown || (empty_table || ob));
|
||||
return (void *) ob;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user