summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorG.raud <graud@gmx.com>2018-02-02 17:51:58 +0100
committerG.raud <graud@gmx.com>2018-02-02 23:21:08 +0100
commitf730adcd27d037999c1f134851e86f17db49ead2 (patch)
treeab6b0c224d75ed91be0765024d941a5754cc3d68 /src
parent75a59a21c6b676b5b3798fd7349c48c863651d50 (diff)
downloadunison-f730adcd27d037999c1f134851e86f17db49ead2.zip
unison-f730adcd27d037999c1f134851e86f17db49ead2.tar.gz
unison-f730adcd27d037999c1f134851e86f17db49ead2.tar.bz2
Uitext: let "revert" and "merge" operate on matching items
Diffstat (limited to 'src')
-rw-r--r--src/uitext.ml11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/uitext.ml b/src/uitext.ml
index 672aee9..1d7f0a4 100644
--- a/src/uitext.ml
+++ b/src/uitext.ml
@@ -268,6 +268,9 @@ let interact prilist rilist =
{replicas = Different ({direction = Conflict _})} -> ()
| {replicas = Different diff} -> diff.direction <- Conflict "skip requested"
| _ -> ()
+ and setmerge = function
+ {replicas = Different diff} -> begin diff.direction <- Merge; true end
+ | _ -> true
in
let ripred = ref None in
let rec loop prev =
@@ -412,14 +415,12 @@ let interact prilist rilist =
(["r"],
("revert to " ^ Uutil.myName ^ "'s default recommendation"),
(fun () ->
- Recon.revertToDefaultDirection ri; redisplayri();
- next()));
+ actOnMatching
+ (fun ri->Recon.revertToDefaultDirection ri; true)));
(["m"],
("merge the versions"),
(fun () ->
- diff.direction <- Merge;
- redisplayri();
- next()));
+ actOnMatching setmerge));
([">";"."],
("propagate from " ^ descr),
(fun () ->