From 4ef082b06608ece2dd7d6978ab0f49bb2d9f9d0f Mon Sep 17 00:00:00 2001
From: llea <llea>
Date: Wed, 13 Jul 2005 13:55:49 +0000
Subject: [PATCH] Fix bug if no network. Change "pixmaps" to "icons" in
 global.h

---
 ChangeLog                      |  3 +++
 configure.ac                   |  2 +-
 src/global.h                   |  2 +-
 src/gui/qt/qtGUImainwindow.cpp |  4 +---
 src/manager.cpp                | 18 +++++++++++-------
 src/sipvoiplink.cpp            | 16 ++++++++++++----
 src/sipvoiplink.h              |  1 +
 src/voIPLink.h                 |  1 +
 8 files changed, 31 insertions(+), 16 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index c6ae864867..c6601ba944 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+Laurielle LEA (13 July 2005) version 0.4
+- Fix bug if network is not available.
+
 Laurielle LEA (11 July 2005) version 0.4
 - Check functions return.
 - Remove unused mute functions
diff --git a/configure.ac b/configure.ac
index cb2d7670cf..690a996d0f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -33,7 +33,7 @@ AC_ARG_PROGRAM
 AM_INIT_AUTOMAKE(sflphone, $VERSION)
 AM_DISABLE_LIBRARIES
 AC_PROG_LIBTOOL
-dnl AC_CHECK_COMPILERS
+AC_CHECK_COMPILERS
 
 CXXFLAGS="$CXXFLAGS $USE_EXCEPTIONS "
 
diff --git a/src/global.h b/src/global.h
index 69f11f60da..2a4f3344d7 100644
--- a/src/global.h
+++ b/src/global.h
@@ -41,7 +41,7 @@ typedef short int16;
 
 #define PROGNAME				"sflphone"
 #define SKINDIR					"skins"
-#define PIXDIR					"pixmaps"
+#define PIXDIR					"icons"
 #define RINGDIR					"rings"
 #define CODECDIR				"codecs"
 
diff --git a/src/gui/qt/qtGUImainwindow.cpp b/src/gui/qt/qtGUImainwindow.cpp
index 64bb99449d..6ad650a579 100644
--- a/src/gui/qt/qtGUImainwindow.cpp
+++ b/src/gui/qt/qtGUImainwindow.cpp
@@ -973,9 +973,7 @@ QtGUIMainWindow::qt_outgoingCall (void)
 		displayStatus(TRYING_STATUS);
 		_callmanager->getCall(id)->setCallerIdNumber(to);
 		changeLineStatePixmap(line, BUSY);
-	} else {
-		_callmanager->displayErrorText("Outgoing call failed !\n");
-	}
+	} 
 	
 	return line;
 }	
diff --git a/src/manager.cpp b/src/manager.cpp
index ec86065f15..b233778872 100644
--- a/src/manager.cpp
+++ b/src/manager.cpp
@@ -130,13 +130,17 @@ Manager::init (void)
 	}
 	
 	_voIPLinkVector->at(DFT_VOIP_LINK)->init();
-	if (get_config_fields_int(SIGNALISATION, AUTO_REGISTER) == YES and 
-			_exist == 1) {
-		if (registerVoIPLink() != 1) {
-			_debug("Registration failed\n");
-            displayErrorText("Check your configuration fields");
-		}
-	} 
+
+	if (_voIPLinkVector->at(DFT_VOIP_LINK)->checkNetwork()) {
+	// If network is available
+		if (get_config_fields_int(SIGNALISATION, AUTO_REGISTER) == YES and 
+				_exist == 1) {
+			if (registerVoIPLink() != 1) {
+				_debug("Registration failed\n");
+				displayErrorText("Check your configuration fields");
+			}
+		} 
+	}
 }
 
 void
diff --git a/src/sipvoiplink.cpp b/src/sipvoiplink.cpp
index 977c7a7d26..630fe166f7 100644
--- a/src/sipvoiplink.cpp
+++ b/src/sipvoiplink.cpp
@@ -72,16 +72,24 @@ SipVoIPLink::~SipVoIPLink (void)
 	delete _audiortp;
 }
 
+bool 
+SipVoIPLink::checkNetwork (void) 
+{
+	// Set IP address
+	if (getLocalIp() == -1) {
+		// If no network
+		return false;
+	} else {
+		return true;
+	}
+}
+
 int
 SipVoIPLink::init (void)
 {
 	string tmp;
 
 	tmp = string(PROGNAME) + "/" + string(VERSION);
-
-	// Set IP address
-	if (getLocalIp() == -1)
-		return -1;
 	
 	srand (time(NULL));
 	if (eXosip_init (NULL, NULL, DEFAULT_SIP_PORT) != 0) {
diff --git a/src/sipvoiplink.h b/src/sipvoiplink.h
index 7f27bde05b..66e9f9e7ea 100644
--- a/src/sipvoiplink.h
+++ b/src/sipvoiplink.h
@@ -67,6 +67,7 @@ public:
 	virtual ~SipVoIPLink (void);
 	
 	virtual int init (void);
+	virtual bool checkNetwork (void);
 	virtual void initRtpmapCodec (void);
 	virtual void quit (void);
 	virtual int setRegister (void);
diff --git a/src/voIPLink.h b/src/voIPLink.h
index d3d026a8fb..d5a976c674 100644
--- a/src/voIPLink.h
+++ b/src/voIPLink.h
@@ -39,6 +39,7 @@ public:
 
 	virtual int getEvent (void) = 0;
 	virtual int init (void) = 0;
+	virtual bool checkNetwork (void) = 0;
 	virtual void initRtpmapCodec (void) = 0;
 	virtual void quit (void) = 0;
 	virtual void newOutgoingCall (short callid) = 0;
-- 
GitLab