diff --git a/src/main.c b/src/main.c
index dc7d0f65567102cf8b751f9605e10f614ea999e8..6bd153147e8cad73e68a3a33d4696926749f602b 100644
--- a/src/main.c
+++ b/src/main.c
@@ -2039,7 +2039,7 @@ static int parseconfig(const char *filename,
       alloced_param=FALSE;
 
       /* lines with # in the fist column is a comment! */
-      while(isspace((int)*line))
+      while(*line && isspace((int)*line))
         line++;
 
       switch(*line) {
@@ -2059,7 +2059,8 @@ static int parseconfig(const char *filename,
         line++;
       /* ... and has ended here */
 
-      *line++=0; /* zero terminate, we have a local copy of the data */
+      if(*line)
+        *line++=0; /* zero terminate, we have a local copy of the data */
 
 #ifdef DEBUG_CONFIG
       fprintf(stderr, "GOT: %s\n", option);