diff --git a/src/main.c b/src/main.c
index ab078de1105958c7e0706bedc60d610b236696df..cbec21194a8956a3c072aeb6a09af4223d5a7d36 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1010,8 +1010,8 @@ static int str2offset(curl_off_t *val, char *str)
 #ifdef HAVE_STRTOLL
   *val = strtoll(str, NULL, 0);
 #else
-  /* TODO:  Handle strtoll stuff...sigh... */
-#error "lack of strtoll() needs fixing"
+  /* this is a duplicate of the function that is also used in libcurl */
+  *val = Curl_strtoll(str, NULL, 0;
 #endif
 
   if ((*val == LLONG_MAX || *val == LLONG_MIN) && errno == ERANGE)
@@ -2068,7 +2068,7 @@ static int parseconfig(const char *filename,
 #endif
 
       /* pass spaces and separator(s) */
-      while(isspace((int)*line) || isseparator(*line))
+      while(*line && (isspace((int)*line) || isseparator(*line)))
         line++;
       
       /* the parameter starts here (unless quoted) */