summaryrefslogtreecommitdiff
path: root/cap.c
diff options
context:
space:
mode:
Diffstat (limited to 'cap.c')
-rw-r--r--cap.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/cap.c b/cap.c
index a6186f6..a1927df 100644
--- a/cap.c
+++ b/cap.c
@@ -121,11 +121,19 @@ int check_version_string(const char * str, int req_major, int req_minor, int req
return 0;
}
+ /* We might have encountered a FreeBSD system which
+ * has a mucked up version string of:
+ * Concurrent Versions System (CVS) '1.11.17'-FreeBSD (client/server)
+ * so re-test just in case
+ */
p += skip;
if (sscanf(p, "%d.%d.%d", &major, &minor, &extra) != 3)
{
- debug(DEBUG_APPMSG1, "WARNING: malformed CVS version: %s", str);
- return 0;
+ if (sscanf(p, "'%d.%d.%d'", &major, &minor, &extra) != 3)
+ {
+ debug(DEBUG_APPMSG1, "WARNING: malformed CVS version: %s", str);
+ return 0;
+ }
}
return (major > req_major ||