Don't log to stdout if --syslog and/or --logfile are specified
[quassel.git] / src / common / quassel.cpp
index 30572fa..c1e2c17 100644 (file)
@@ -118,27 +118,30 @@ bool Quassel::init() {
   DEBUG = isOptionSet("debug");
 
   // set up logging
-  if(isOptionSet("loglevel")) {
-    QString level = optionValue("loglevel");
-
-    if(level == "Debug") _logLevel = DebugLevel;
-    else if(level == "Info") _logLevel = InfoLevel;
-    else if(level == "Warning") _logLevel= WarningLevel;
-    else if(level == "Error") _logLevel = ErrorLevel;
-  }
+  if(Quassel::runMode() != Quassel::ClientOnly) {
+    if(isOptionSet("loglevel")) {
+      QString level = optionValue("loglevel");
+
+      if(level == "Debug") _logLevel = DebugLevel;
+      else if(level == "Info") _logLevel = InfoLevel;
+      else if(level == "Warning") _logLevel= WarningLevel;
+      else if(level == "Error") _logLevel = ErrorLevel;
+    }
 
-  QString logfilename = optionValue("logfile");
-  if(!logfilename.isEmpty()) {
-    _logFile = new QFile(logfilename);
-    if(!_logFile->open(QIODevice::Append | QIODevice::Text)) {
-      qWarning() << "Could not open log file" << logfilename << ":" << _logFile->errorString();
-      _logFile->deleteLater();
-      _logFile = 0;
+    QString logfilename = optionValue("logfile");
+    if(!logfilename.isEmpty()) {
+      _logFile = new QFile(logfilename);
+      if(!_logFile->open(QIODevice::Append | QIODevice::Text)) {
+        qWarning() << "Could not open log file" << logfilename << ":" << _logFile->errorString();
+        _logFile->deleteLater();
+        _logFile = 0;
+      }
     }
+#ifdef HAVE_SYSLOG
+    _logToSyslog = isOptionSet("syslog");
+#endif
   }
 
-  _logToSyslog = isOptionSet("syslog");
-
   return true;
 }