Pull in a fix (still under GPLv2) for a double free in gdb, leading to
an assert, which can occur if you repeatedly dlopen() and dlclose() a .so file in a tight loop. This was reported on freebsd-current@ by Alexandre Martins, with a sample to reproduce the behaviour. Obtained from: http://sourceware.org/git/?p=gdb.git;a=commit;h=a6f2cbb341520f8e100f4b8305979dd6207a79e8
This commit is contained in:
parent
4391754075
commit
9c5cee130f
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=232934
@ -1425,6 +1425,13 @@ target_resize_to_sections (struct target_ops *target, int num_added)
|
||||
(*t)->to_sections_end = target->to_sections_end;
|
||||
}
|
||||
}
|
||||
/* There is a flattened view of the target stack in current_target,
|
||||
so its to_sections pointer might also need updating. */
|
||||
if (current_target.to_sections == old_value)
|
||||
{
|
||||
current_target.to_sections = target->to_sections;
|
||||
current_target.to_sections_end = target->to_sections_end;
|
||||
}
|
||||
}
|
||||
|
||||
return old_count;
|
||||
|
Loading…
Reference in New Issue
Block a user