version 1.168, 2006/05/04 07:06:58 |
version 1.169, 2006/05/05 01:29:59 |
|
|
*/ |
*/ |
if (!(pb->flags & FORCE) && (strlen(pb->deltatext) < 1)) { |
if (!(pb->flags & FORCE) && (strlen(pb->deltatext) < 1)) { |
checkin_revert(pb); |
checkin_revert(pb); |
goto fail; |
goto out; |
} |
} |
|
|
/* If no log message specified, get it interactively. */ |
/* If no log message specified, get it interactively. */ |
|
|
pb->file->rf_mode = st.st_mode & |
pb->file->rf_mode = st.st_mode & |
(S_IXUSR|S_IXGRP|S_IXOTH|S_IRUSR|S_IRGRP|S_IROTH); |
(S_IXUSR|S_IXGRP|S_IXOTH|S_IRUSR|S_IRGRP|S_IROTH); |
|
|
xfree(pb->deltatext); |
|
xfree(filec); |
|
(void)close(workfile_fd); |
(void)close(workfile_fd); |
(void)unlink(pb->filename); |
(void)unlink(pb->filename); |
|
|
|
|
xfree(pb->rcs_msg); |
xfree(pb->rcs_msg); |
pb->rcs_msg = NULL; |
pb->rcs_msg = NULL; |
} |
} |
|
|
|
out: |
|
xfree(pb->deltatext); |
|
xfree(filec); |
|
|
return (0); |
return (0); |
|
|
fail: |
fail: |
|
|
if ((pb->flags & CO_LOCK) || (pb->flags & CO_UNLOCK)) |
if ((pb->flags & CO_LOCK) || (pb->flags & CO_UNLOCK)) |
checkout_rev(pb->file, pb->frev, pb->filename, |
checkout_rev(pb->file, pb->frev, pb->filename, |
pb->flags, pb->username, pb->author, NULL, NULL); |
pb->flags, pb->username, pb->author, NULL, NULL); |
if (rcs_lock_remove(pb->file, pb->username, pb->frev) < 0) |
|
if (rcs_errno != RCS_ERR_NOENT) |
|
warnx("failed to remove lock"); |
|
} |
} |
|
|
/* |
/* |