OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Thomas Lotterer
Root: /e/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 21-Jan-2003 16:20:32
Branch: OPENPKG_1_1_SOLID Handle: 2003012115203100
Modified files: (Branch: OPENPKG_1_1_SOLID)
openpkg-src/cvs cvs.patch cvs.spec
Log:
SA-2003.004-cvs; CAN-2003-0015
Summary:
Revision Changes Path
1.1.2.1 +90 -1 openpkg-src/cvs/cvs.patch
1.35.2.2 +1 -1 openpkg-src/cvs/cvs.spec
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/cvs/cvs.patch
============================================================================
$ cvs diff -u -r1.1 -r1.1.2.1 cvs.patch
--- openpkg-src/cvs/cvs.patch 22 Aug 2002 13:47:00 -0000 1.1
+++ openpkg-src/cvs/cvs.patch 21 Jan 2003 15:20:31 -0000 1.1.2.1
@@ -2,7 +2,7 @@
least older CVS clients (version < 1.11.2) and a semantically incorrect
usage of getc() by the server.
---- cvs-1.11.2.orig/src/buffer.c 2001-08-09 21:26:35.000000000 +0200
+--- cvs-1.11.2/src/buffer.c.orig 2001-08-09 21:26:35.000000000 +0200
+++ cvs-1.11.2/src/buffer.c 2002-08-22 15:40:11.000000000 +0200
@@ -1378,8 +1378,7 @@
@@ -14,3 +14,92 @@
{
# ifdef SERVER_SUPPORT
if (server_active)
+--- cvs-1.11.2/src/client.c.orig Thu Aug 9 22:27:26 2001
++++ cvs-1.11.2/src/client.c Tue Jan 21 13:25:18 2003
+@@ -2171,7 +2171,7 @@
+ * date. Create a dummy timestamp which will never compare
+ * equal to the timestamp of the file.
+ */
+- if (vn[0] == '\0' || vn[0] == '0' || vn[0] == '-')
++ if (vn[0] == '\0' || strcmp (vn, "0") == 0 || vn[0] == '-')
+ local_timestamp = "dummy timestamp";
+ else if (local_timestamp == NULL)
+ {
+--- cvs-1.11.2/src/commit.c.orig Fri Aug 24 19:47:02 2001
++++ cvs-1.11.2/src/commit.c Tue Jan 21 13:38:30 2003
+@@ -248,15 +248,7 @@
+ xfinfo.rcs = NULL;
+
+ vers = Version_TS (&xfinfo, NULL, saved_tag, NULL, 0, 0);
+- if (vers->ts_user == NULL
+- && vers->vn_user != NULL
+- && vers->vn_user[0] == '-')
+- /* FIXME: If vn_user is starts with "-" but ts_user is
+- non-NULL, what classify_file does is print "%s should be
+- removed and is still there". I'm not sure what it does
+- then. We probably should do the same. */
+- status = T_REMOVED;
+- else if (vers->vn_user == NULL)
++ if (vers->vn_user == NULL)
+ {
+ if (vers->ts_user == NULL)
+ error (0, 0, "nothing known about `%s'", finfo->fullname);
+@@ -266,15 +258,28 @@
+ freevers_ts (&vers);
+ return 1;
+ }
+- else if (vers->ts_user != NULL
+- && vers->vn_user != NULL
+- && vers->vn_user[0] == '0')
+- /* FIXME: If vn_user is "0" but ts_user is NULL, what classify_file
+- does is print "new-born %s has disappeared" and removes the entry.
+- We probably should do the same. */
++ if (vers->ts_user == NULL)
++ {
++ if (strcmp (vers->vn_user, "0") == 0)
++ /* This happens when one has `cvs add'ed a file, but it no
++ longer exists in the working directory at commit time.
++ FIXME: What classify_file does in this case is print
++ "new-born %s has disappeared" and removes the entry.
++ We probably should do the same. */
++ status = T_ADDED;
++ else if (vers->vn_user[0] == '-')
++ status = T_REMOVED;
++ else
++ {
++ /* FIXME: What classify_file does in this case is print
++ "%s was lost". We probably should do the same. */
++ freevers_ts (&vers);
++ return 0;
++ }
++ }
++ else if (strcmp (vers->vn_user, "0") == 0)
+ status = T_ADDED;
+- else if (vers->ts_user != NULL
+- && vers->ts_rcs != NULL
++ else if (vers->ts_rcs != NULL
+ && (args->force || strcmp (vers->ts_user, vers->ts_rcs) != 0))
+ /* If we are forcing commits, pretend that the file is
+ modified. */
+--- cvs-1.11.2/src/server.c.orig Tue Mar 19 20:15:45 2002
++++ cvs-1.11.2/src/server.c Tue Jan 21 13:28:34 2003
+@@ -978,9 +978,6 @@
+ return;
+ }
+
+- if (dir_name != NULL)
+- free (dir_name);
+-
+ dir_len = strlen (dir);
+
+ /* Check for a trailing '/'. This is not ISDIRSEP because \ in the
+@@ -995,6 +992,9 @@
+ "E protocol error: invalid directory syntax in %s", dir);
+ return;
+ }
++
++ if (dir_name != NULL)
++ free (dir_name);
+
+ dir_name = malloc (strlen (server_temp_dir) + dir_len + 40);
+ if (dir_name == NULL)
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/cvs/cvs.spec
============================================================================
$ cvs diff -u -r1.35.2.1 -r1.35.2.2 cvs.spec
--- openpkg-src/cvs/cvs.spec 26 Aug 2002 19:53:24 -0000 1.35.2.1
+++ openpkg-src/cvs/cvs.spec 21 Jan 2003 15:20:31 -0000 1.35.2.2
@@ -45,7 +45,7 @@
Group: SCM
License: GPL
Version: %{V_cvs}
-Release: 1.1.0
+Release: 1.1.1
# list of sources
Source0: http://www.cvshome.org/files/19/10/cvs-%{V_cvs}.tar.gz
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [EMAIL PROTECTED]