Index: tools/grokdump.py |
diff --git a/tools/grokdump.py b/tools/grokdump.py |
index 9d7fe16537ff7d4edbc839138ce1c5a256d37289..8986a91b5c318302c0f8ee8601d8919df675d9d6 100755 |
--- a/tools/grokdump.py |
+++ b/tools/grokdump.py |
@@ -970,8 +970,11 @@ class HeapObject(object): |
p.Print(str(self)) |
def __str__(self): |
+ instance_type = "???" |
+ if self.map is not None: |
+ instance_type = INSTANCE_TYPES[self.map.instance_type] |
return "HeapObject(%s, %s)" % (self.heap.reader.FormatIntPtr(self.address), |
- INSTANCE_TYPES[self.map.instance_type]) |
+ instance_type) |
def ObjectField(self, offset): |
field_value = self.heap.reader.ReadUIntPtr(self.address + offset) |
@@ -1386,9 +1389,9 @@ class JSFunction(HeapObject): |
def __str__(self): |
inferred_name = "" |
- if self.shared.Is(SharedFunctionInfo): |
+ if self.shared is not None and self.shared.Is(SharedFunctionInfo): |
inferred_name = self.shared.inferred_name |
- return "JSFunction(%s, %s)" % \ |
+ return "JSFunction(%s, %s) " % \ |
(self.heap.reader.FormatIntPtr(self.address), inferred_name) |
def _GetSource(self): |
@@ -2094,7 +2097,7 @@ class InspectionWebHandler(BaseHTTPServer.BaseHTTPRequestHandler): |
self.send_error(404, 'Web parameter error: %s' % e.message) |
-HTML_REG_FORMAT = "<span class=\"register\"><b>%s</b>: %s</span>\n" |
+HTML_REG_FORMAT = "<span class=\"register\"><b>%s</b>: %s</span><br/>\n" |
class InspectionWebFormatter(object): |
@@ -2263,7 +2266,7 @@ class InspectionWebFormatter(object): |
f.write("<h3>Exception context</h3>") |
f.write('<div class="code">\n') |
f.write("Thread id: %d" % exception_thread.id) |
- f.write(" Exception code: %08X\n" % |
+ f.write(" Exception code: %08X<br/>\n" % |
self.reader.exception.exception.code) |
if details == InspectionWebFormatter.CONTEXT_FULL: |
if self.reader.exception.exception.parameter_count > 0: |