From 846e2b747370f11676a83ebedbc8f02cba4c618a Mon Sep 17 00:00:00 2001 From: joris Date: Sun, 2 Jul 2006 21:01:48 +0000 Subject: - abort the commit when files are not correctly up to date. - do not try to attempt to check for conflict markers when the file is not on disk. found by and okay reyk@ --- usr.bin/cvs/commit.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'usr.bin/cvs/commit.c') diff --git a/usr.bin/cvs/commit.c b/usr.bin/cvs/commit.c index 795d79a78bb..cf4c9fb8c90 100644 --- a/usr.bin/cvs/commit.c +++ b/usr.bin/cvs/commit.c @@ -1,4 +1,4 @@ -/* $OpenBSD: commit.c,v 1.78 2006/06/29 00:41:52 joris Exp $ */ +/* $OpenBSD: commit.c,v 1.79 2006/07/02 21:01:48 joris Exp $ */ /* * Copyright (c) 2006 Joris Vink * Copyright (c) 2006 Xavier Santolaria @@ -129,23 +129,27 @@ cvs_commit_check_conflicts(struct cvs_file *cf) } if (cf->file_status == FILE_CONFLICT || - cf->file_status == FILE_LOST || - cf->file_status == FILE_UNLINK) + cf->file_status == FILE_UNLINK) { conflicts_found++; + return; + } if (cf->file_status != FILE_REMOVED && update_has_conflict_markers(cf)) { cvs_log(LP_ERR, "conflict: unresolved conflicts in %s from " "merging, please fix these first", cf->file_path); conflicts_found++; + return; } if (cf->file_status == FILE_MERGE || cf->file_status == FILE_PATCH || - cf->file_status == FILE_CHECKOUT) { + cf->file_status == FILE_CHECKOUT || + cf->file_status == FILE_LOST) { cvs_log(LP_ERR, "conflict: %s is not up-to-date", cf->file_path); conflicts_found++; + return; } if (cf->file_status == FILE_ADDED || -- cgit v1.2.3-59-g8ed1b