diff options
author | jdp <jdp@FreeBSD.org> | 2001-05-27 08:03:48 +0800 |
---|---|---|
committer | jdp <jdp@FreeBSD.org> | 2001-05-27 08:03:48 +0800 |
commit | 044624e74c3b04e499b4be779354df7597bcc8fe (patch) | |
tree | 642621dc8bc5785797ecd16d08b8283603dd8de5 | |
parent | 6ec3841ed7a1a8f86126bbaaecaa78350853dcfd (diff) | |
download | freebsd-ports-gnome-044624e74c3b04e499b4be779354df7597bcc8fe.tar.gz freebsd-ports-gnome-044624e74c3b04e499b4be779354df7597bcc8fe.tar.zst freebsd-ports-gnome-044624e74c3b04e499b4be779354df7597bcc8fe.zip |
Add a patch to fix the notorious "jakarta-tomcat" bug. This bug
came to the fore in checkout mode when a file "files,v" in the
repository was manually changed into a directory "files".
With this patch, CVSup will still complain that it cannot delete
"files" because the directory is not empty. However, it is now a
warning rather than a fatal error, and the update will run to
completion. The warning will happen only once. After emitting
the warning, CVSup will fix the damage in the checkouts file to
eliminate the problem. On subsequent updates everything will be
OK and no more warnings will occur.
I have bumped PORTREVISION to 1, and added "p1" to the end of the
version number printed by CVSup.
PR: misc/27495
-rw-r--r-- | net/cvsup-devel/Makefile | 1 | ||||
-rw-r--r-- | net/cvsup-devel/files/patch-ac | 51 | ||||
-rw-r--r-- | net/cvsup-devel/files/patch-ad | 15 | ||||
-rw-r--r-- | net/cvsup/Makefile | 1 | ||||
-rw-r--r-- | net/cvsup/files/patch-ac | 51 | ||||
-rw-r--r-- | net/cvsup/files/patch-ad | 15 |
6 files changed, 134 insertions, 0 deletions
diff --git a/net/cvsup-devel/Makefile b/net/cvsup-devel/Makefile index d107e3cf5056..b7520fb4187b 100644 --- a/net/cvsup-devel/Makefile +++ b/net/cvsup-devel/Makefile @@ -6,6 +6,7 @@ # PORTVERSION= 16.1a +PORTREVISION= 1 CATEGORIES= net MASTER_SITES= ftp://ftp3.freebsd.org/pub/FreeBSD/development/CVSup/snapshots/ \ ftp://ftp.freebsd.org/pub/FreeBSD/development/CVSup/snapshots/ \ diff --git a/net/cvsup-devel/files/patch-ac b/net/cvsup-devel/files/patch-ac new file mode 100644 index 000000000000..a3276cca4885 --- /dev/null +++ b/net/cvsup-devel/files/patch-ac @@ -0,0 +1,51 @@ +Index: client/src/Updater.m3 +=================================================================== +RCS file: /home/cvsupcvs/cvsup/client/src/Updater.m3,v +retrieving revision 1.97 +diff -u -r1.97 Updater.m3 +--- client/src/Updater.m3 2001/04/15 21:53:13 1.97 ++++ client/src/Updater.m3 2001/05/26 22:58:36 +@@ -733,7 +733,7 @@ + IF SupFileRec.Option.KeepBadFiles IN sfr.options THEN + Warn(self, "Bad version saved in " & tempPath); + ELSE +- DeleteFile(tempPath); ++ DeleteFile(self, tempPath); + END; + END; + END UpdateFile; +@@ -1231,7 +1231,7 @@ + IF NOT SupFileRec.Option.CheckoutMode IN sfr.options THEN + (* Try the attic. *) + WITH atticName = SupMisc.AtticName(destPath) DO +- DeleteFile(atticName); ++ DeleteFile(self, atticName); + (* We always delete the Attic directory when it becomes empty. + FIXME - Is that the right thing to do?. *) + TRY +@@ -1239,7 +1239,7 @@ + EXCEPT OSError.E => (* Ignore. *) END; + END; + END; +- DeleteFile(destPath); ++ DeleteFile(self, destPath); + IF SupFileRec.Option.CheckoutMode IN sfr.options + OR NOT self.proto.v.dirsAreExplicit THEN + (* Delete the directory automatically if it is now empty. *) +@@ -1280,14 +1280,13 @@ + END; + END MakeDirectories; + +-PROCEDURE DeleteFile(path: Pathname.T) +- RAISES {Error} = ++PROCEDURE DeleteFile(self: T; path: Pathname.T) = + BEGIN + TRY + FileAttr.Delete(path); + EXCEPT OSError.E(l) => + IF l.head # EnoentAtom THEN +- RAISE Error("Cannot delete \"" & path & "\": " & ++ Warn(self, "Cannot delete \"" & path & "\": " & + ErrMsg.StrError(l)); + END; + END; diff --git a/net/cvsup-devel/files/patch-ad b/net/cvsup-devel/files/patch-ad new file mode 100644 index 000000000000..98cd1d3ac233 --- /dev/null +++ b/net/cvsup-devel/files/patch-ad @@ -0,0 +1,15 @@ +--- quake/cvsup.quake.orig Sun Apr 15 16:22:06 2001 ++++ quake/cvsup.quake Sat May 26 16:46:05 2001 +@@ -53,10 +53,10 @@ + > tempname in + write("MODULE Version;", CR, CR, "BEGIN", CR, " Name := ") + end +- if equal("$Name: SNAP_16_1a $", "$" & "Name: $") ++ if equal("$Name: SNAP_16_1ap1 $", "$" & "Name: $") + cmd = "date -u +'\"U_%Y_%m_%d_%H_%M_%S\";'" + else +- cmd = "echo '$Name: SNAP_16_1a $' | awk '{print \"\\\"\" $2 \"\\\";\";}'" ++ cmd = "echo '$Name: SNAP_16_1ap1 $' | awk '{print \"\\\"\" $2 \"\\\";\";}'" + end + cmd = cmd & " >> " & tempname + if equal(M3_VARIANT, "PM3") diff --git a/net/cvsup/Makefile b/net/cvsup/Makefile index e54f6754af4e..b1fc28f6100c 100644 --- a/net/cvsup/Makefile +++ b/net/cvsup/Makefile @@ -7,6 +7,7 @@ PORTNAME= cvsup PORTVERSION?= 16.1 +PORTREVISION?= 1 CATEGORIES= net devel MASTER_SITES?= ftp://ftp3.freebsd.org/pub/FreeBSD/development/CVSup/sources/ \ ftp://ftp.freebsd.org/pub/FreeBSD/development/CVSup/sources/ \ diff --git a/net/cvsup/files/patch-ac b/net/cvsup/files/patch-ac new file mode 100644 index 000000000000..817a3747b159 --- /dev/null +++ b/net/cvsup/files/patch-ac @@ -0,0 +1,51 @@ +Index: client/src/Updater.m3 +=================================================================== +RCS file: /home/cvsupcvs/cvsup/client/src/Updater.m3,v +retrieving revision 1.91 +diff -u -r1.91 Updater.m3 +--- client/src/Updater.m3 1999/08/13 19:51:29 1.91 ++++ client/src/Updater.m3 2001/05/26 23:11:39 +@@ -712,7 +712,7 @@ + IF SupFileRec.Option.KeepBadFiles IN sfr.options THEN + Warn(self, "Bad version saved in " & tempPath); + ELSE +- DeleteFile(tempPath); ++ DeleteFile(self, tempPath); + END; + END; + END UpdateFile; +@@ -1188,7 +1188,7 @@ + IF NOT SupFileRec.Option.CheckoutMode IN sfr.options THEN + (* Try the attic. *) + WITH atticName = SupMisc.AtticName(destPath) DO +- DeleteFile(atticName); ++ DeleteFile(self, atticName); + (* We always delete the Attic directory when it becomes empty. + FIXME - Is that the right thing to do?. *) + TRY +@@ -1196,7 +1196,7 @@ + EXCEPT OSError.E => (* Ignore. *) END; + END; + END; +- DeleteFile(destPath); ++ DeleteFile(self, destPath); + IF SupFileRec.Option.CheckoutMode IN sfr.options + OR NOT self.proto.v.dirsAreExplicit THEN + (* Delete the directory automatically if it is now empty. *) +@@ -1231,14 +1231,13 @@ + END; + END MakeDirectories; + +-PROCEDURE DeleteFile(path: Pathname.T) +- RAISES {Error} = ++PROCEDURE DeleteFile(self: T; path: Pathname.T) = + BEGIN + TRY + FileAttr.Delete(path); + EXCEPT OSError.E(l) => + IF l.head # EnoentAtom THEN +- RAISE Error("Cannot delete \"" & path & "\": " & ++ Warn(self, "Cannot delete \"" & path & "\": " & + ErrMsg.StrError(l)); + END; + END; diff --git a/net/cvsup/files/patch-ad b/net/cvsup/files/patch-ad new file mode 100644 index 000000000000..1fb0cfd3ac54 --- /dev/null +++ b/net/cvsup/files/patch-ad @@ -0,0 +1,15 @@ +--- quake/cvsup.quake.orig Sat Jan 16 15:47:58 1999 ++++ quake/cvsup.quake Sat May 26 16:21:51 2001 +@@ -50,10 +50,10 @@ + > tempname in + write("MODULE Version;", CR, CR, "BEGIN", CR, " Name := ") + end +- if equal("$Name: REL_16_1 $", "$" & "Name: $") ++ if equal("$Name: REL_16_1p1 $", "$" & "Name: $") + cmd = "date -u +'\"U_%Y_%m_%d_%H_%M_%S\";'" + else +- cmd = "echo '$Name: REL_16_1 $' | awk '{print \"\\\"\" $2 \"\\\"\";}'" ++ cmd = "echo '$Name: REL_16_1p1 $' | awk '{print \"\\\"\" $2 \"\\\"\";}'" + end + cmd = cmd & " >> " & tempname + if defined("PM3") |