--- /dev/null
+diff -up rcs-5.8/src/ident.c.newsvnsyntax rcs-5.8/src/ident.c
+--- rcs-5.8/src/ident.c.newsvnsyntax 2011-01-07 13:27:18.000000000 +0100
++++ rcs-5.8/src/ident.c 2011-09-08 10:53:34.064837699 +0200
+@@ -41,14 +41,20 @@ match (register FILE *fp)
+ char line[BUFSIZ];
+ register int c;
+ register char *tp;
++ int COLON_C = 0;
++ int MAX_COLON = 1;
+
+ tp = line;
+- while ((c = getc (fp)) != VDELIM)
++ while ((c = getc (fp)) && (COLON_C < MAX_COLON))
+ {
+ if (c == EOF && feof (fp) | ferror (fp))
+ return c;
+ switch (ctab[c])
+ {
++ case COLON:
++ *tp++ = c;
++ COLON_C++;
++ break;
+ case LETTER:
+ case Letter:
+ *tp++ = c;
+@@ -62,7 +68,15 @@ match (register FILE *fp)
+ }
+ if (tp == line)
+ return c;
+- *tp++ = c;
++ if (c == ' ')
++ {
++ ungetc(c,fp);
++ }
++ else
++ {
++ *tp++ = c;
++ }
++
+ if ((c = getc (fp)) != ' ')
+ return c ? c : '\n';
+ *tp++ = c;