summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cvsps.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/cvsps.c b/cvsps.c
index 1fa41d2..60e8504 100644
--- a/cvsps.c
+++ b/cvsps.c
@@ -1145,6 +1145,14 @@ static CvsFile * parse_rcs_file(const char * buff)
}
}
+ /* Windows CVS server may use two path separators: / for files
+ * and \ for subdirectories. */
+ if (strncmp(fn, strip_path, strip_path_len-1) == 0 &&
+ (fn[strip_path_len-1] == '\\' ||
+ fn[strip_path_len-1] == '/')) {
+ goto ok;
+ }
+
/* FIXME: a subdirectory may have a different Repository path
* than it's parent. we'll fail the above test since strip_path
* is global for the entire checked out tree (recursively).