cvs-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Cvs-cvs] Changes to ccvs/src/server.c [signed-commits2]


From: Derek Robert Price
Subject: [Cvs-cvs] Changes to ccvs/src/server.c [signed-commits2]
Date: Wed, 30 Nov 2005 14:58:49 -0500

Index: ccvs/src/server.c
diff -u ccvs/src/server.c:1.452.2.6 ccvs/src/server.c:1.452.2.7
--- ccvs/src/server.c:1.452.2.6 Tue Nov 29 23:44:20 2005
+++ ccvs/src/server.c   Wed Nov 30 19:58:46 2005
@@ -8148,7 +8148,8 @@
  */
 void
 server_base_checkout (RCSNode *rcs, struct file_info *finfo, const char *prev,
-                     const char *rev, const char *tag, const char *options)
+                     const char *rev, const char *tag, const char *poptions,
+                     const char *options)
 {
     char *basefile;
     char *fullbase;
@@ -8162,7 +8163,14 @@
 
     if (!supported_response ("Base-checkout")) return;
 
-    if (prev && !strcmp (prev, rev))
+    if (/* Entry rev and new rev are the same...  */
+       prev && !strcmp (prev, rev)
+       /* ...and... */
+       && (   /* ...both option specs are empty...  */
+           (  (!poptions || !poptions[0]) && (!options || !options[0]))
+              /* ...or the option specs match.  */
+           || (poptions && options && !strcmp (poptions, options)))
+       )
        /* PREV & REV are the same, so the client should already have this
         * file.
         */
@@ -8173,7 +8181,7 @@
                          *(finfo->update_dir) ? finfo->update_dir : ".",
                          basefile);
 
-    if (prev && strcmp (prev, "0"))
+    if (prev && strcmp (prev, "0") && strcmp (prev, rev))
     {
        /* Compute and send diff.  */
        int dargc = 0;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]