diff options
-rw-r--r-- | common/tools.cpp | 6 | ||||
-rw-r--r-- | server/server.cpp | 6 |
2 files changed, 8 insertions, 4 deletions
diff --git a/common/tools.cpp b/common/tools.cpp index c18d21e..d46e8c1 100644 --- a/common/tools.cpp +++ b/common/tools.cpp @@ -63,7 +63,11 @@ string GetAddressByInterface(string Interface){ return address; } string GetNetworkInterfaceByIndex(int Index, bool skipLoop){ - return GetNetworkInterfaces(skipLoop)[Index]; + StringVector interfaces = GetNetworkInterfaces(skipLoop); + if(interfaces.size() < 0) + return interfaces[Index]; + else + return string(); } StringVector GetNetworkInterfaces(bool skipLoop){ diff --git a/server/server.cpp b/server/server.cpp index 2bac18a..f8c5515 100644 --- a/server/server.cpp +++ b/server/server.cpp @@ -180,7 +180,7 @@ bool cMediaServer::Initialize(){ ? mCurrentConfiguration.address : tools::GetAddressByInterface(mCurrentConfiguration.interface); - if(address.empty() || !address.compare("0.0.0.0")){ + if(address.empty() || address.compare("0.0.0.0") == 0){ address = tools::GetAddressByInterface(tools::GetNetworkInterfaceByIndex(0, true)); } @@ -192,9 +192,9 @@ bool cMediaServer::Initialize(){ int ret = 0; - LOG(1, "Initializing UPnP media server on %s:%d", address.c_str(), port); + LOG(1, "Initializing UPnP media server on %s:%d", address.empty()?"0":address.c_str(), port); - ret = UpnpInit(address.c_str(), mCurrentConfiguration.port); + ret = UpnpInit(address.empty()?"127.0.0.1":address.c_str(), mCurrentConfiguration.port); if(ret != UPNP_E_SUCCESS && ret != UPNP_E_INIT){ esyslog("UPnP\tFailed to initialise UPnP media server. Error code: %d", ret); |