Ejemplo n.º 1
0
// Free all xpcom related resources before calling the xre shutdown call.
// Must be called on the metro main thread. Currently called from appshell.
void
MetroApp::ShutdownXPCOM()
{
  LogThread();

  mozilla::widget::StopAudioSession();

  sCoreApp->remove_Suspending(mSuspendEvent);
  sCoreApp->remove_Resuming(mResumeEvent);

  MetroApp::GetView()->ShutdownXPCOM();

  // Shut down xpcom
  XRE_metroShutdown();
}
Ejemplo n.º 2
0
// Free all xpcom related resources before calling the xre shutdown call.
// Must be called on the metro main thread. Currently called from appshell.
void
MetroApp::ShutdownXPCOM()
{
  LogThread();

  if (sCoreApp) {
    sCoreApp->remove_Suspending(mSuspendEvent);
    sCoreApp->remove_Resuming(mResumeEvent);
  }

  if (sFrameworkView) {
    sFrameworkView->ShutdownXPCOM();
  }

  // Shut down xpcom
  XRE_metroShutdown();

  // Unhook this thread from the profiler
  profiler_unregister_thread();
}