Closed
Bug 1072462
Opened 10 years ago
Closed 7 years ago
script missing from debugger after connecting tools to existing app process
Categories
(DevTools Graveyard :: WebIDE, defect)
Tracking
(Not tracked)
RESOLVED
INVALID
People
(Reporter: myk, Unassigned)
Details
When I push j2me.js <https://github.com/andreasgal/j2me.js> to a device and then connect to the app process using WebIDE, at least one script, mobileinfo.js, doesn't appear in the list of scripts in the Debugger tab. The script does appear in the list of scripts in WebIDE, and it does get installed on the device. It also appears in the Debugger's list if I press the Play button to reinstall the app while tools are still open. It's only when I open tools after the app has already started that the script is missing. I don't have a reduced test case, but here's how to reproduce on the app I'm using with WebIDE: 1. Get and build the app: git clone https://github.com/andreasgal/j2me.js.git cd j2me.js make # requires Java SDK 2. Open Packaged App… in WebIDE; 3. Install and Run, then Debug App.
I can confirm this behavior when used together with the latest Simulator build (2.2.20140916). Nick, any guess why the source would be missing entirely from the debugger source list until you reinstall the app again?
Flags: needinfo?(nfitzgerald)
Comment 2•10 years ago
|
||
(In reply to J. Ryan Stinnett [:jryans] from comment #1) > I can confirm this behavior when used together with the latest Simulator > build (2.2.20140916). > > Nick, any guess why the source would be missing entirely from the debugger > source list until you reinstall the app again? It likely doesn't define any functions that stay alive until the debugger requests the source list because getting the list of sources is GC sensitive and if a source is collected before the debugger requests sources, then the debugger won't get it. If this is indeed the issue, it is a dup of bug 944260.
Flags: needinfo?(nfitzgerald)
Reporter | ||
Comment 3•10 years ago
|
||
mobileinfo.js doesn't define any functions that stay alive. The only function it defines is an anonymous one that it invokes and then discards. But it does define a global variable, mobileInfo, that stays alive for the duration of the app: var mobileInfo = (function() { … })(); Is that not sufficient to prevent the source from being collected?
Nick, any thoughts on comment 3?
Flags: needinfo?(nfitzgerald)
Comment 5•10 years ago
|
||
(In reply to Myk Melez [:myk] [@mykmelez] from comment #3) > mobileinfo.js doesn't define any functions that stay alive. The only > function it defines is an anonymous one that it invokes and then discards. > But it does define a global variable, mobileInfo, that stays alive for the > duration of the app: > > var mobileInfo = (function() { > … > })(); > > Is that not sufficient to prevent the source from being collected? If the value is not a function, than no, it isn't enough to keep the source from getting collected. If the value isn't a function, than this is a dupe of bug 944260, and please mark it as such.
Flags: needinfo?(nfitzgerald)
Apps are being removed with B2G cleanup.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → INVALID
Updated•6 years ago
|
Product: Firefox → DevTools
Updated•4 years ago
|
Product: DevTools → DevTools Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•