From 701ae345ecfe2179a70ca9056f1d9f2152ceead2 Mon Sep 17 00:00:00 2001 From: scjones <scjones@users.savannah.nongnu.org> Date: Wed, 19 Nov 2008 23:10:35 +0000 Subject: [PATCH] Merge changes from cvs1-11-x-branch --- src/ChangeLog | 8 ++++++++ src/entries.c | 20 ++++++-------------- src/sanity.sh | 4 ++-- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 5ebb8df8c..72ce7c1be 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,11 @@ +2008-11-19 Larry Jones <lawrence.jones@siemens.com> + + * entries.c (WriteTag): Remove any exiting file and recreate + rather than trying to overwrite (to avoid permission problems). + + * sanity.sh (keyword-25): Protect keywords against accidental + expansion in sanity.sh itself. + 2008-11-18 Larry Jones <lawrence.jones@siemens.com> * client.c (add_prune_candidate): Strip all trailing slashes. diff --git a/src/entries.c b/src/entries.c index 0791498a8..8994d4187 100644 --- a/src/entries.c +++ b/src/entries.c @@ -855,21 +855,16 @@ WriteTag (const char *dir, const char *tag, const char *date, int nonbranch, tmp = xstrdup (CVSADM_TAG); + if (unlink_file (tmp) < 0 && ! existence_error (errno)) + error (1, errno, "cannot remove %s", tmp); + if (tag || date) { - fout = xfopen (tmp, "w+"); + fout = xfopen (tmp, "w"); if (tag) { - if (nonbranch) - { - if (fprintf (fout, "N%s\n", tag) < 0) - error (1, errno, "write to %s failed", tmp); - } - else - { - if (fprintf (fout, "T%s\n", tag) < 0) - error (1, errno, "write to %s failed", tmp); - } + if (fprintf (fout, "%c%s\n", nonbranch ? 'N' : 'T', tag) < 0) + error (1, errno, "write to %s failed", tmp); } else { @@ -879,9 +874,6 @@ WriteTag (const char *dir, const char *tag, const char *date, int nonbranch, if (fclose (fout) == EOF) error (1, errno, "cannot close %s", tmp); } - else - if (unlink_file (tmp) < 0 && ! existence_error (errno)) - error (1, errno, "cannot remove %s", tmp); free (tmp); #ifdef SERVER_SUPPORT if (server_active) diff --git a/src/sanity.sh b/src/sanity.sh index 0dee0dcba..196b75e63 100755 --- a/src/sanity.sh +++ b/src/sanity.sh @@ -26547,9 +26547,9 @@ change" dotest_fail keyword-25 "${testcvs} diff -kk file1" \ "diff -r1\.3 file1 1c1 -< \$Name\$ +< "'\$'"Name"'\$'" --- -> \$Name: $" +> "'\$'"Name: "'\$' dotest keyword-26 "${testcvs} diff -kkv file1" "" dokeep -- GitLab