FIX: parse log source "ALL" correctly
authorHenning Rogge <rogge@fgan.de>
Tue, 28 Apr 2009 07:18:22 +0000 (09:18 +0200)
committerHenning Rogge <rogge@fgan.de>
Tue, 28 Apr 2009 07:18:22 +0000 (09:18 +0200)
src/olsr_cfg.c

index a5fc6bc..7b781a6 100644 (file)
@@ -814,17 +814,20 @@ parse_cfg_log(char *argstr, struct olsr_config *rcfg, char *rmsg, enum log_sever
       sprintf(rmsg, "Error, unknown logging source: %s\n", p);
       return CFG_EXIT;
     }
-    rcfg->log_event[sev][i] = true;
-    p = next;
-  }
 
-  /* handle "all" keyword */
-  if (i == LOG_ALL) {
-    for (i = 0; i < LOG_SOURCE_COUNT; i++) {
+    /* handle "all" keyword */
+    if (i == LOG_ALL) {
+      for (i = 0; i < LOG_SOURCE_COUNT; i++) {
+        rcfg->log_event[sev][i] = true;
+      }
+    }
+    else {
       rcfg->log_event[sev][i] = true;
     }
+    p = next;
   }
 
+
   PARSER_DEBUG_PRINTF("Log_%s:", LOG_SEVERITY_NAMES[sev]);
   for (i = 0, first = true; i < LOG_SOURCE_COUNT; i++) {
     if (rcfg->log_event[sev][i]) {