Merge cvs-1.9.xx -> 1.10 changes onto mainline.

The merge turned up a long-standing bug in local additions.  I'm not
quite sure it's right yet.  (the code in question is dealing with
diffs relative to "HEAD" and dead revisions).
This commit is contained in:
Peter Wemm 1999-03-18 09:31:26 +00:00
parent 6a2d2db53b
commit b791882da9
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=44855

View file

@ -434,16 +434,23 @@ diff_fileproc (callerdat, finfo)
exists = 0;
/* special handling for TAG_HEAD */
if (diff_rev1 && strcmp (diff_rev1, TAG_HEAD) == 0)
exists = (vers->vn_rcs != NULL && /* XXX ? */
!RCS_isdead (vers->srcfile, vers->vn_rcs)); /*XXX*/
{
char *head =
(vers->vn_rcs == NULL
? NULL
: RCS_branch_head (vers->srcfile, vers->vn_rcs));
exists = head != NULL;
if (head != NULL)
free (head);
}
else
{
Vers_TS *xvers;
xvers = Version_TS (finfo, NULL, diff_rev1, diff_date1,
1, 0);
exists = (vers->vn_rcs != NULL &&
!RCS_isdead (vers->srcfile, vers->vn_rcs)); /*XXX*/
exists = (xvers->vn_rcs != NULL &&
!RCS_isdead (xvers->srcfile, xvers->vn_rcs)); /*XXX*/
freevers_ts (&xvers);
}
if (exists)
@ -816,7 +823,9 @@ diff_file_nodiff (finfo, vers, empty_file)
{
/* special handling for TAG_HEAD */
if (diff_rev1 && strcmp (diff_rev1, TAG_HEAD) == 0)
use_rev1 = xstrdup (vers->vn_rcs);
use_rev1 = ((vers->vn_rcs == NULL || vers->srcfile == NULL)
? NULL
: RCS_branch_head (vers->srcfile, vers->vn_rcs));
else
{
xvers = Version_TS (finfo, NULL, diff_rev1, diff_date1, 1, 0);
@ -829,7 +838,9 @@ diff_file_nodiff (finfo, vers, empty_file)
{
/* special handling for TAG_HEAD */
if (diff_rev2 && strcmp (diff_rev2, TAG_HEAD) == 0)
use_rev2 = xstrdup (vers->vn_rcs);
use_rev2 = ((vers->vn_rcs == NULL || vers->srcfile == NULL)
? NULL
: RCS_branch_head (vers->srcfile, vers->vn_rcs));
else
{
xvers = Version_TS (finfo, NULL, diff_rev2, diff_date2, 1, 0);