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]

Reply via email to