B2G/gecko/browser/components/sessionstore/src/SessionStore.jsm
/**
   * Called on application shutdown, after notifications:
   * quit-application-granted, quit-application
   */
Called on application shutdown, after notifications:
quit-application-granted, quit-application
Called on application shutdown after notifications : quit - application - granted quit - application
function ssi_uninit() {
    this.saveState(true);
    this._tabsToRestore.priority = null;
    this._tabsToRestore.visible = null;
    this._tabsToRestore.hidden = null;
    if (this._saveTimer) {
      this._saveTimer.cancel();
      this._saveTimer = null;
    }
  }
function ssi_uninit ( ) { this . saveState ( true ) ; this . _tabsToRestore . priority = null ; this . _tabsToRestore . visible = null ; this . _tabsToRestore . hidden = null ; if ( this . _saveTimer ) { this . _saveTimer . cancel ( ) ; this . _saveTimer = null ; } }
Called on application shutdown, after notifications:
 quit-application-granted, quit-application
Called on application shutdown after notifications : quit - application - granted quit - application
// save all data for session resuming // clear out _tabsToRestore in case it's still holding refs // Make sure to break our cycle with the save timer