diff options
author | Christopher Ferris <cferris@google.com> | 2016-04-07 17:14:53 -0700 |
---|---|---|
committer | Christopher Ferris <cferris@google.com> | 2016-04-12 15:36:53 -0700 |
commit | 55a89a48f41da349735627c2ae8985895955b1ca (patch) | |
tree | c946bd9b7e1353787f278e5face49cae5d8f238d /libc/malloc_debug/DebugData.cpp | |
parent | 03a16d3db7c5fff733d28250212821ec2ff5eccd (diff) |
Small refactor.
- Move all ScopedDisableDebugCalls into the debug_XXX calls. This avoids
any issues that might arise where every part of the code needs to properly
guard anything that might allocate. Instead everything is already guarded.
- Add a pointer to debug_data in all of the XXData classes. This avoids
calling individual functions passing in the debug_data pointer.
- Flip the NO_HEADER_OPTIONS to an explicit HEADER_OPTIONS list since fewer
options actually require a header.
- Move the extern of g_debug to the DebugData.h header.
Change-Id: Ia213a391b4a44d9ce122a709d09fe4f1b5426f36
Diffstat (limited to 'libc/malloc_debug/DebugData.cpp')
-rw-r--r-- | libc/malloc_debug/DebugData.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libc/malloc_debug/DebugData.cpp b/libc/malloc_debug/DebugData.cpp index 0447566b0..58cbbcb47 100644 --- a/libc/malloc_debug/DebugData.cpp +++ b/libc/malloc_debug/DebugData.cpp @@ -43,37 +43,37 @@ bool DebugData::Initialize() { } // Check to see if the options that require a header are enabled. - if ((config_.options & ~(NO_HEADER_OPTIONS)) != 0) { + if (config_.options & HEADER_OPTIONS) { need_header_ = true; // Initialize all of the static header offsets. pointer_offset_ = BIONIC_ALIGN(sizeof(Header), MINIMUM_ALIGNMENT_BYTES); if (config_.options & BACKTRACE) { - backtrace.reset(new BacktraceData(config_, &pointer_offset_)); + backtrace.reset(new BacktraceData(this, config_, &pointer_offset_)); if (!backtrace->Initialize(config_)) { return false; } } if (config_.options & FRONT_GUARD) { - front_guard.reset(new FrontGuardData(config_, &pointer_offset_)); + front_guard.reset(new FrontGuardData(this, config_, &pointer_offset_)); } extra_bytes_ = pointer_offset_; // Initialize all of the non-header data. if (config_.options & REAR_GUARD) { - rear_guard.reset(new RearGuardData(config_)); + rear_guard.reset(new RearGuardData(this, config_)); extra_bytes_ += config_.rear_guard_bytes; } if (config_.options & FREE_TRACK) { - free_track.reset(new FreeTrackData(config_)); + free_track.reset(new FreeTrackData(this, config_)); } if (config_.options & TRACK_ALLOCS) { - track.reset(new TrackData()); + track.reset(new TrackData(this)); } } |