[ekiga] Various Exit fixes.



commit ca09fac596bd7f4d948c318cb0ffc62e25857cdd
Author: Damien Sandras <dsandras beip be>
Date:   Sat Jun 9 11:48:08 2012 +0200

    Various Exit fixes.
    
    * The endpoints should be shutdown in the CallManager itself.
    * The AccountCore should be destroyed before the CallCore.

 lib/engine/components/opal/opal-call-manager.cpp |    1 +
 lib/engine/components/opal/sip-endpoint.cpp      |    1 -
 lib/engine/engine.cpp                            |    2 +-
 3 files changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/lib/engine/components/opal/opal-call-manager.cpp b/lib/engine/components/opal/opal-call-manager.cpp
index 9ece1ac..29a4fbb 100644
--- a/lib/engine/components/opal/opal-call-manager.cpp
+++ b/lib/engine/components/opal/opal-call-manager.cpp
@@ -158,6 +158,7 @@ CallManager::CallManager (Ekiga::ServiceCore & _core)
 CallManager::~CallManager ()
 {
   ClearAllCalls (OpalConnection::EndedByLocalUser, true);
+  ShutDownEndpoints ();
 
   g_async_queue_unref (queue);
 }
diff --git a/lib/engine/components/opal/sip-endpoint.cpp b/lib/engine/components/opal/sip-endpoint.cpp
index 71d61e5..fabf78a 100644
--- a/lib/engine/components/opal/sip-endpoint.cpp
+++ b/lib/engine/components/opal/sip-endpoint.cpp
@@ -166,7 +166,6 @@ Opal::Sip::EndPoint::EndPoint (Opal::CallManager & _manager,
 
 Opal::Sip::EndPoint::~EndPoint ()
 {
-  manager.ShutDownEndpoints ();
 }
 
 
diff --git a/lib/engine/engine.cpp b/lib/engine/engine.cpp
index 35aadb9..84a3808 100644
--- a/lib/engine/engine.cpp
+++ b/lib/engine/engine.cpp
@@ -124,7 +124,6 @@ engine_init (Ekiga::ServiceCorePtr service_core,
    * - VideoInputCore must be destroyed before VideoOutputCore since its  *
    *   PreviewManager may call functions of VideoOutputCore.            */
 
-  service_core->add (account_core);
   service_core->add (contact_core);
   service_core->add (chat_core);
   service_core->add (friend_or_foe);
@@ -134,6 +133,7 @@ engine_init (Ekiga::ServiceCorePtr service_core,
   service_core->add (audiooutput_core);
   service_core->add (hal_core);
   service_core->add (call_core);
+  service_core->add (account_core);
 
   if (!gmconf_personal_details_init (*service_core, &argc, &argv)) {
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]