diff --git a/dim b/dim index 9154a16b76ac976f47ea8b299fc489631337e7c3..3b62ed6de78c56ffdf02f1ac153a353d63101dab 100755 --- a/dim +++ b/dim @@ -505,9 +505,7 @@ function check_conflicts # tree # we need an empty line to make it look pretty echoerr "" echoerr "FAILURE: Could not merge $1" - echoerr "See the section \"Resolving Conflicts when Rebuilding drm-tip\"" - echoerr "in the drm-intel.rst documentation for how to handle this situation." - exit 1 + return 1 fi true } @@ -703,7 +701,11 @@ function dim_rebuild_tip echo -n "Applying manual fixup patch for $integration_branch merge... " patch -p1 -i $fixup_file fi - check_conflicts "$repo/$branch" + if ! check_conflicts "$repo/$branch" ; then + echoerr "See the section \"Resolving Conflicts when Rebuilding drm-tip\"" + echoerr "in the drm-tip.rst documentation for how to handle this situation." + return 1 + fi git add -u # because we filter out fast-forward merges there will @@ -925,7 +927,15 @@ function dim_apply_pull git fetch $pull_branch checkpatch_commit_push_range "HEAD..FETCH_HEAD" - $DRY git pull $pull_branch + if ! $DRY git pull $pull_branch ; then + if ! check_conflicts "$pull_branch" ; then + echoerr "Please resolve and then commit normally using git" + return 1 + else + git add -u + git commit --no-edit --quiet + fi + fi message_id=$(message_get_id $file)