Index: Evidence/DColl.cc
===================================================================
--- Evidence/DColl.cc	(revision 172)
+++ Evidence/DColl.cc	(revision 173)
@@ -151,12 +151,12 @@
 	  char ErrMsg[200];
 	  regerror(Ret, &RegEx[i], ErrMsg, sizeof(ErrMsg));
-	  State(WARN, "Error compiling regular expression '%s' (%s)", Token, ErrMsg);
+	  State(FATAL, "Error compiling regular expression '%s' (%s)", Token, ErrMsg);
 	}
 	else {
 	  if ((Token=strtok(NULL, ": \t")) != NULL) MinChange[i] = atof(Token);
 	  else MinChange[i] = 0;
+
   	  if ((Token=strtok(NULL, "")) != NULL) HistSize[i] = atoi(Token)*1024;
-	  else HistSize[i] = MIN_HIST_SIZE;
-	  if (HistSize[i] < MIN_HIST_SIZE) HistSize[i] = MIN_HIST_SIZE;
+	  else HistSize[i] = 0;
 	}
 	Pos += Len;
@@ -473,11 +473,14 @@
   // Set minimum required change by comparing to regular expressions
   New.MinAbsChange = 0;
-  New.HistSize = MIN_HIST_SIZE;
+  New.HistSize = 0;
   for (int i=0; i<RegExCount; i++) {
     if (regexec(&RegEx[i], Name.c_str(), (size_t) 0, NULL, 0) == 0) {
 	  New.MinAbsChange = MinChange[i];
-	  New.HistSize = HistSize[i];
-	}
-  }
+	  if (HistSize[i] != 0) New.HistSize = HistSize[i];
+	}
+  }
+
+  // At least 3*sizeof(int)
+  if (New.HistSize < MIN_HIST_SIZE) New.HistSize = MIN_HIST_SIZE;
 
   // Create history service
