| Index: tools/memory_inspector/memory_inspector/frontends/www_server.py
|
| diff --git a/tools/memory_inspector/memory_inspector/frontends/www_server.py b/tools/memory_inspector/memory_inspector/frontends/www_server.py
|
| index c4ad3b239b81ebe2d799d8a92e72976c33f79c13..84fdc81a0dd162e0016096f2fceeffcee9c4e3e8 100644
|
| --- a/tools/memory_inspector/memory_inspector/frontends/www_server.py
|
| +++ b/tools/memory_inspector/memory_inspector/frontends/www_server.py
|
| @@ -23,10 +23,11 @@ import collections
|
| import datetime
|
| import dateutil.parser
|
| import glob
|
| -import os
|
| +import json
|
| import memory_inspector
|
| import mimetypes
|
| -import json
|
| +import os
|
| +import posixpath
|
| import re
|
| import urlparse
|
| import uuid
|
| @@ -596,7 +597,7 @@ def _LoadNheapFromStorage(args, req_vars):
|
| frame.symbol and frame.symbol.source_info else frame.raw_address)
|
| strace += '<dd title="%s">%s</dd><dt>%s</dt>' % (
|
| cgi.escape(source_info),
|
| - cgi.escape(os.path.basename(source_info)),
|
| + cgi.escape(posixpath.basename(source_info)),
|
| cgi.escape(symbol_name))
|
| strace += '</dl>'
|
|
|
| @@ -676,6 +677,7 @@ def _ConvertMmapToGTable(mmap):
|
| {'label': 'End', 'type':'string'},
|
| {'label': 'Length Kb', 'type':'number'},
|
| {'label': 'Prot', 'type':'string'},
|
| + {'label': 'RSS Kb', 'type':'number'},
|
| {'label': 'Priv. Dirty Kb', 'type':'number'},
|
| {'label': 'Priv. Clean Kb', 'type':'number'},
|
| {'label': 'Shared Dirty Kb', 'type':'number'},
|
| @@ -691,6 +693,7 @@ def _ConvertMmapToGTable(mmap):
|
| {'v': '%08x' % entry.end, 'f': None},
|
| {'v': entry.len / 1024, 'f': None},
|
| {'v': entry.prot_flags, 'f': None},
|
| + {'v': entry.rss_bytes / 1024, 'f': None},
|
| {'v': entry.priv_dirty_bytes / 1024, 'f': None},
|
| {'v': entry.priv_clean_bytes / 1024, 'f': None},
|
| {'v': entry.shared_dirty_bytes / 1024, 'f': None},
|
| @@ -717,11 +720,11 @@ def _GetCacheObject(obj_id):
|
|
|
| def _StrMem(nbytes):
|
| """Converts a number (of bytes) into a human readable string (kb, mb)."""
|
| - if nbytes < 2**10:
|
| - return '%d B' % nbytes
|
| - if nbytes < 2**20:
|
| - return '%.1f KB' % round(nbytes / 1024.0)
|
| - return '%.1f MB' % (nbytes / 1048576.0)
|
| + UNITS = ['B', 'K', 'M', 'G']
|
| + for unit in UNITS:
|
| + if abs(nbytes) < 1024.0 or unit == UNITS[-1]:
|
| + return ('%3.1f' % nbytes).replace('.0','') + ' ' + unit
|
| + nbytes /= 1024.0
|
|
|
|
|
| def _HttpRequestHandler(environ, start_response):
|
|
|