mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 00:17:46 +00:00
LibDebug: Store LibDebug objects on the heap & make them non-copyable
This fixes an issue were some LibDebug objects (for example, Dwarf::CompilationUnit) held a reference to their parent Dwarf::DwarfInfo object, which was constructed on the stack and later moved to the heap.
This commit is contained in:
parent
edd79ddd00
commit
e9e4358a93
7 changed files with 19 additions and 10 deletions
|
@ -14,14 +14,14 @@
|
|||
namespace CoreDump {
|
||||
|
||||
struct ELFObjectInfo {
|
||||
ELFObjectInfo(NonnullRefPtr<MappedFile> file, Debug::DebugInfo&& debug_info)
|
||||
ELFObjectInfo(NonnullRefPtr<MappedFile> file, NonnullOwnPtr<Debug::DebugInfo>&& debug_info)
|
||||
: file(move(file))
|
||||
, debug_info(move(debug_info))
|
||||
{
|
||||
}
|
||||
|
||||
NonnullRefPtr<MappedFile> file;
|
||||
Debug::DebugInfo debug_info;
|
||||
NonnullOwnPtr<Debug::DebugInfo> debug_info;
|
||||
};
|
||||
|
||||
class Backtrace {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue