Bug 1427484 - Fix about:telemetry "Show raw stack data" button in Browser Hangs section. r=chutten draft
authorJeremy Lempereur <jeremy.lempereur@gmail.com>
Sun, 31 Dec 2017 17:22:51 +0100
changeset 714900 97ca47cd9d09
parent 714849 e02699fd3129
child 744695 5c62d8328013
push id94053
push userbmo:jeremy.lempereur@gmail.com
push dateSun, 31 Dec 2017 16:26:40 +0000
reviewerschutten
bugs1427484
milestone59.0a1
Bug 1427484 - Fix about:telemetry "Show raw stack data" button in Browser Hangs section. r=chutten The "Show raw stack data" button in the Browser Hangs section produced nothing but removing the "Browser Hangs" section from the about:telemetry navigation menu. I looked at the way the Late Writes section works and patched the Chrome Hangs render calls accordingly. MozReview-Commit-ID: Gq681oVrg90
toolkit/content/aboutTelemetry.js
--- a/toolkit/content/aboutTelemetry.js
+++ b/toolkit/content/aboutTelemetry.js
@@ -1055,26 +1055,25 @@ function SymbolicationRequest_fetchSymbo
 
 var ChromeHangs = {
 
   symbolRequest: null,
 
   /**
    * Renders raw chrome hang data
    */
-  render: function ChromeHangs_render(payload) {
-    let hangs = payload.chromeHangs;
-    setHasData("chrome-hangs-section", !!hangs);
-    if (!hangs) {
+  render: function ChromeHangs_render(chromeHangs) {
+    setHasData("chrome-hangs-section", !!chromeHangs);
+    if (!chromeHangs) {
       return;
     }
 
-    let stacks = hangs.stacks;
-    let memoryMap = hangs.memoryMap;
-    let durations = hangs.durations;
+    let stacks = chromeHangs.stacks;
+    let memoryMap = chromeHangs.memoryMap;
+    let durations = chromeHangs.durations;
 
     StackRenderer.renderStacks("chrome-hangs", stacks, memoryMap,
                                (index) => this.renderHangHeader(index, durations));
   },
 
   renderHangHeader: function ChromeHangs_renderHangHeader(aIndex, aDurations) {
     StackRenderer.renderHeader("chrome-hangs", [aIndex + 1, aDurations[aIndex]]);
   }
@@ -2048,17 +2047,17 @@ function setupListeners() {
   });
 
   document.getElementById("chrome-hangs-hide-symbols").addEventListener("click",
     function() {
       if (!gPingData) {
         return;
       }
 
-      ChromeHangs.render(gPingData);
+      ChromeHangs.render(gPingData.payload.chromeHangs);
   });
 
   document.getElementById("captured-stacks-fetch-symbols").addEventListener("click",
     function() {
       if (!gPingData) {
         return;
       }
       let capturedStacks = gPingData.payload.processes.parent.capturedStacks;