version 1.198, 2007/04/26 21:48:37 |
version 1.199, 2007/06/12 06:09:38 |
|
|
pb->flags); |
pb->flags); |
} |
} |
|
|
if (rcs_lock_remove(pb->file, pb->username, pb->frev) < 0) { |
if ((rcs_lock_remove(pb->file, pb->username, pb->frev) < 0) && |
|
(rcs_lock_getmode(pb->file) != RCS_LOCK_LOOSE)) { |
if (rcs_errno != RCS_ERR_NOENT) |
if (rcs_errno != RCS_ERR_NOENT) |
warnx("failed to remove lock"); |
warnx("failed to remove lock"); |
else if (!(pb->flags & CO_LOCK)) |
else if (!(pb->flags & CO_LOCK)) |
|
|
checkin_checklock(struct checkin_params *pb) |
checkin_checklock(struct checkin_params *pb) |
{ |
{ |
struct rcs_lock *lkp; |
struct rcs_lock *lkp; |
|
|
|
if (rcs_lock_getmode(pb->file) == RCS_LOCK_LOOSE) |
|
return (0); |
|
|
TAILQ_FOREACH(lkp, &(pb->file->rf_locks), rl_list) { |
TAILQ_FOREACH(lkp, &(pb->file->rf_locks), rl_list) { |
if (!strcmp(lkp->rl_name, pb->username) && |
if (!strcmp(lkp->rl_name, pb->username) && |