[ekiga] Fixed SIP registration problem (bug #578883)



commit c7f3abd149ccca669bb13e2a02b0d46076301f7d
Author: Julien Puydt <jpuydt gnome org>
Date:   Mon Apr 27 10:50:09 2009 +0200

    Fixed SIP registration problem (bug #578883)
    
    That was due to a bad timing : both reading the configuration
    option for STUN and starting the call manager where done mostly
    simultaneously ; I just made one trigger the other.
---
 lib/engine/components/opal/opal-call-manager.cpp |   21 ++++++++-------------
 lib/engine/components/opal/opal-call-manager.h   |    3 ---
 lib/engine/components/opal/opal-main.cpp         |    1 -
 3 files changed, 8 insertions(+), 17 deletions(-)

diff --git a/lib/engine/components/opal/opal-call-manager.cpp b/lib/engine/components/opal/opal-call-manager.cpp
index af8d878..d7eb9d6 100644
--- a/lib/engine/components/opal/opal-call-manager.cpp
+++ b/lib/engine/components/opal/opal-call-manager.cpp
@@ -152,19 +152,6 @@ CallManager::~CallManager ()
 }
 
 
-void CallManager::start ()
-{
-  if (stun_enabled) {
-
-    // Ready
-    new StunDetector (stun_server, *this, queue);
-    patience = 20;
-    Ekiga::Runtime::run_in_main (sigc::mem_fun (this, &CallManager::HandleSTUNResult), 1);
-  } else
-    ready.emit ();
-}
-
-
 void CallManager::set_display_name (const std::string & name)
 {
   display_name = name;
@@ -487,6 +474,14 @@ void CallManager::set_stun_server (const std::string & server)
 void CallManager::set_stun_enabled (bool enabled)
 {
   stun_enabled = enabled;
+  if (stun_enabled) {
+
+    // Ready
+    new StunDetector (stun_server, *this, queue);
+    patience = 20;
+    Ekiga::Runtime::run_in_main (sigc::mem_fun (this, &CallManager::HandleSTUNResult), 1);
+  } else
+    ready.emit ();
 }
 
 
diff --git a/lib/engine/components/opal/opal-call-manager.h b/lib/engine/components/opal/opal-call-manager.h
index 272db5c..0101cad 100644
--- a/lib/engine/components/opal/opal-call-manager.h
+++ b/lib/engine/components/opal/opal-call-manager.h
@@ -79,9 +79,6 @@ public:
     virtual ~CallManager ();
 
     /**/
-    void start ();
-
-    /**/
     const std::string get_name () const
       { return "opal-component"; }
 
diff --git a/lib/engine/components/opal/opal-main.cpp b/lib/engine/components/opal/opal-main.cpp
index 67e4988..3076e36 100644
--- a/lib/engine/components/opal/opal-main.cpp
+++ b/lib/engine/components/opal/opal-main.cpp
@@ -138,7 +138,6 @@ struct OPALSpark: public Ekiga::Spark
 
       new ConfBridge (*call_manager); // FIXME: isn't that leaked!?
 
-      call_manager->start ();
       presence_core->add_supported_uri (sigc::ptr_fun (is_supported_address)); //FIXME
 
       OpalLinkerHacks::loadOpalVideoInput = 1;



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