Closed Bug 1211107 Opened 9 years ago Closed 7 years ago

Browser Toolbox profiler breaks if a toolbox is closed in a non-e10s window

Categories

(DevTools :: Performance Tools (Profiler/Timeline), defect, P3)

x86_64
Linux
defect

Tracking

(e10s+)

RESOLVED INVALID
Tracking Status
e10s + ---

People

(Reporter: sjakthol, Unassigned)

References

Details

STR:
1. Open a new non-e10s window or disable e10s altogether.
2. Open the Browser Toolbox, switch to profiler.
3. Start profiling.
4. Open a toolbox in the non-e10s window and close it.
4. Stop profiling.

Expected results: The browser toolbox loads the recording and shows the results.

Actual results:
The browser toolbox profiler keeps loading forever and the following error is printed to the terminal (edited for better readability):

Message: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIProfiler.getProfileData]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/shared/shared/profiler.js :: ProfilerManager.getProfile :: line 188"  data: no]
Stack:
  ProfilerManager.getProfile@.../devtools/shared/shared/profiler.js:188:9
  exports.Profiler<.getProfile@.../devtools/shared/shared/profiler.js:427:46
  exports.PerformanceRecorder<.stopRecording<@.../devtools/shared/performance/recorder.js:412:24
  TaskImpl_run@resource://gre/modules/Task.jsm:314:40
  TaskImpl@resource://gre/modules/Task.jsm:275:3
  createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:249:14
  actorBridge/<@.../devtools/server/actors/common.js:535:12
  actorProto/</handler@.../devtools/server/protocol.js:1013:19
  DSC_onPacket@.../devtools/server/main.js:1601:15
  DebuggerTransport.prototype._onJSONObjectReady/<@.../devtools/shared/transport/transport.js:479:9
  makeInfallible/<@.../devtools/shared/DevToolsUtils.js:87:14
  makeInfallible/<@.../devtools/shared/DevToolsUtils.js:87:14
What version of Firefox?
Happens in both release (Fx41) and fx-team tip built a few hours ago (rev bce73b114fdc). Haven't tested in beta or aurora but I was seeing this about a month ago in nighly so I'd assume they are affected too.
Stepping in the debugger reveals that the browser toolbox profile loading starts to fail after nsIProfilerModule.StopProfiler() is called during the (tab/page) toolbox destruction at [1].

[1] https://hg.mozilla.org/mozilla-central/annotate/0010c0cb259e28faf764949df54687e3a21a2d0a/devtools/shared/shared/profiler.js#l144
Blocks: dte10s
tracking-e10s: --- → +
Triaging. Filter on ADRENOCORTICOTROPIC (yes).
Priority: -- → P3
E10s is everywhere.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → INVALID
Product: Firefox → DevTools
You need to log in before you can comment on or make changes to this bug.