From: noname <noname@inventati.org>
Date: Thu, 30 Apr 2015 19:59:24 +0000 (+0000)
Subject: selnormalize: make special case explicit
X-Git-Url: https://git.owens.tech/projects.html/projects.html/git?a=commitdiff_plain;h=22571ea4e8729efee6940b704666566b46e42e76;p=st.git

selnormalize: make special case explicit

Special case is when regular selection spans multiple lines.
Otherwise, just sort sel.ob.x and sel.ob.y.
---

diff --git a/st.c b/st.c
index 789e795..6138817 100644
--- a/st.c
+++ b/st.c
@@ -685,12 +685,12 @@ void
 selnormalize(void) {
 	int i;
 
-	if(sel.ob.y == sel.oe.y || sel.type == SEL_RECTANGULAR) {
-		sel.nb.x = MIN(sel.ob.x, sel.oe.x);
-		sel.ne.x = MAX(sel.ob.x, sel.oe.x);
-	} else {
+	if(sel.type == SEL_REGULAR && sel.ob.y != sel.oe.y) {
 		sel.nb.x = sel.ob.y < sel.oe.y ? sel.ob.x : sel.oe.x;
 		sel.ne.x = sel.ob.y < sel.oe.y ? sel.oe.x : sel.ob.x;
+	} else {
+		sel.nb.x = MIN(sel.ob.x, sel.oe.x);
+		sel.ne.x = MAX(sel.ob.x, sel.oe.x);
 	}
 	sel.nb.y = MIN(sel.ob.y, sel.oe.y);
 	sel.ne.y = MAX(sel.ob.y, sel.oe.y);