diff --git a/ChangeLog b/ChangeLog
index 10709eb3789efd953b07386b255cfc361f15e092..c2d4d79b219722a32ee376552861c9109b7891b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -119,6 +119,9 @@ CVS code -
 	- Add a better string matching sequence that includes escaped
 	  quotes (thanks to Carl E. Lindberg, who doesn't even know he
 	  helped ;-)
+- rcfile.c:
+  parse_colors()
+	- Stop infinite loop when syntax doesn't begin with " char.
 - utils.c:
   charalloc()
 	- Switch from using calloc() to using malloc(). (David
diff --git a/rcfile.c b/rcfile.c
index 8545526ba5dd87a868e777001c776f84528c706b..32c06fb4836e2ba21aeef7b85820f391a83596ee 100644
--- a/rcfile.c
+++ b/rcfile.c
@@ -371,6 +371,7 @@ void parse_colors(char *ptr)
 
 	if (*ptr != '"') {
 	    rcfile_error(_("regex strings must begin and end with a \" character\n"));
+	    ptr = parse_next_regex(ptr);
 	    continue;
 	}
 	ptr++;