The command line handler component (CommandLineHandler.js) initializes the webapp registry and sets permissions on firstrun in addition to handling the command line. It does this unrelated work because the work has to be done on startup, before the app is loaded, and the component seemed as good a place as any for it.
But failure in that script is catastrophic (the app can't load), whereas failure in the unrelated work isn't, so putting it into that component makes it unnecessarily failure-prone. Thus we should move the unrelated work into its own script, f.e. a component that registers for a startup notification but implements no interface (like mobile/android/components/SafeBrowsing.js).
Myk - What's the priority here? Can you determine it and explain why?
This is a code hygiene issue and thus merely nice to have.
The patch in bug 770770 happens to do this.
Fixed by the fix for bug 770770.