aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nxcomp/src/ChannelEndPoint.cpp5
-rw-r--r--nxcomp/src/ChannelEndPoint.h1
-rw-r--r--nxcomp/src/Loop.cpp24
3 files changed, 19 insertions, 11 deletions
diff --git a/nxcomp/src/ChannelEndPoint.cpp b/nxcomp/src/ChannelEndPoint.cpp
index 78902399c..4fdf0fad4 100644
--- a/nxcomp/src/ChannelEndPoint.cpp
+++ b/nxcomp/src/ChannelEndPoint.cpp
@@ -312,6 +312,11 @@ ChannelEndPoint::enabled() const {
}
bool
+ChannelEndPoint::configured() const {
+ return ( spec_ && ( strcmp(spec_, "0") != 0) );
+}
+
+bool
ChannelEndPoint::validateSpec() {
isTCP_ = getTCPHostAndPort();
isUnix_ = getUnixPath();
diff --git a/nxcomp/src/ChannelEndPoint.h b/nxcomp/src/ChannelEndPoint.h
index 4c0c728f3..652492485 100644
--- a/nxcomp/src/ChannelEndPoint.h
+++ b/nxcomp/src/ChannelEndPoint.h
@@ -46,6 +46,7 @@ class ChannelEndPoint
~ChannelEndPoint();
ChannelEndPoint &operator=(const ChannelEndPoint &other);
+ bool configured() const;
bool enabled() const;
bool disabled() { return !enabled(); }
void disable();
diff --git a/nxcomp/src/Loop.cpp b/nxcomp/src/Loop.cpp
index f76c22dea..4292e7b9a 100644
--- a/nxcomp/src/Loop.cpp
+++ b/nxcomp/src/Loop.cpp
@@ -11746,20 +11746,22 @@ int SetPorts()
<< logofs_flush;
#endif
- if (control -> ProxyMode == proxy_client) {
- mediaPort.setDefaultTCPPort(DEFAULT_NX_MEDIA_PORT_OFFSET + proxyPort);
- useMediaSocket = mediaPort.enabled();
- } else {
+ if ( mediaPort.configured() ) {
+ if (control -> ProxyMode == proxy_client) {
+ mediaPort.setDefaultTCPPort(DEFAULT_NX_MEDIA_PORT_OFFSET + proxyPort);
+ useMediaSocket = mediaPort.enabled();
+ } else {
- if ( !mediaPort.enabled() ) {
- #ifdef PANIC
- *logofs << "Loop: PANIC! No port specified for multimedia connections.\n"
- << logofs_flush;
- #endif
+ if ( mediaPort.getTCPPort() < 0 ) {
+ #ifdef PANIC
+ *logofs << "Loop: PANIC! No port specified for multimedia connections.\n"
+ << logofs_flush;
+ #endif
- cerr << "Error" << ": No port specified for multimedia connections.\n";
+ cerr << "Error" << ": No port specified for multimedia connections.\n";
- HandleCleanup();
+ HandleCleanup();
+ }
}
}