diff options
Diffstat (limited to 'indra/llcommon/llallocator_heap_profile.cpp')
-rw-r--r-- | indra/llcommon/llallocator_heap_profile.cpp | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/indra/llcommon/llallocator_heap_profile.cpp b/indra/llcommon/llallocator_heap_profile.cpp index c6d9542b42..85e56b4db4 100644 --- a/indra/llcommon/llallocator_heap_profile.cpp +++ b/indra/llcommon/llallocator_heap_profile.cpp @@ -1,4 +1,4 @@ -/** +/** * @file llallocator_heap_profile.cpp * @brief Implementation of the parser for tcmalloc heap profile data. * @author Brad Kittenbrink @@ -6,21 +6,21 @@ * $LicenseInfo:firstyear=2009&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, Linden Research, Inc. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License only. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * + * * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ @@ -67,7 +67,7 @@ void LLAllocatorHeapProfile::parse(std::string const & prof_text) std::string::const_iterator prof_begin = prof_text.begin() + HEAP_PROFILE_MAGIC_STR.length(); - range_t prof_range(prof_begin, prof_text.end()); + range_t prof_range(prof_begin, prof_text.end()); boost::algorithm::split(prof_lines, prof_range, boost::bind(std::equal_to<llwchar>(), '\n', _1)); @@ -107,34 +107,34 @@ void LLAllocatorHeapProfile::parse(std::string const & prof_text) ++j; while(j != line_elems.end() && j->empty()) { ++j; } // skip any separator tokens - llassert(j != line_elems.end()); + llassert(j != line_elems.end()); if (j != line_elems.end()) - { - ++j; // skip the '@' - - mLines.push_back(line(live_count, live_size, tot_count, tot_size)); - line & current_line = mLines.back(); - - for(; j != line_elems.end(); ++j) - { - if(!j->empty()) - { - U32 marker = boost::lexical_cast<U32>(*j); - current_line.mTrace.push_back(marker); - } - } - } + { + ++j; // skip the '@' + + mLines.push_back(line(live_count, live_size, tot_count, tot_size)); + line & current_line = mLines.back(); + + for(; j != line_elems.end(); ++j) + { + if(!j->empty()) + { + U32 marker = boost::lexical_cast<U32>(*j); + current_line.mTrace.push_back(marker); + } + } + } } // *TODO - parse MAPPED_LIBRARIES section here if we're ever interested in it } void LLAllocatorHeapProfile::dump(std::ostream & out) const { - for (const LLAllocatorHeapProfile::line& line : mLines) + for (const LLAllocatorHeapProfile::line& line : mLines) { out << line.mLiveCount << ": " << line.mLiveSize << '[' << line.mTotalCount << ": " << line.mTotalSize << "] @"; - for (const stack_marker marker : line.mTrace) + for (const stack_marker marker : line.mTrace) { out << ' ' << marker; } |