From 1fa27b93f9a78ee78a35a5449bb8c4d0c3ef0f1b Mon Sep 17 00:00:00 2001
From: Mark Edgar <medgar123@gmail.com>
Date: Sat, 19 Oct 2013 14:56:40 +0200
Subject: [PATCH] Simplify logic in match().

---
 st.c | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/st.c b/st.c
index 8cfa2f7..da2ce3f 100644
--- a/st.c
+++ b/st.c
@@ -3501,15 +3501,7 @@ focus(XEvent *ev) {
 
 static inline bool
 match(uint mask, uint state) {
-	state &= ~ignoremod;
-
-	if(mask == XK_NO_MOD && state)
-		return false;
-	if(mask != XK_ANY_MOD && mask != XK_NO_MOD && !state)
-		return false;
-	if(mask == XK_ANY_MOD)
-		return true;
-	return state == mask;
+	return mask == XK_ANY_MOD || mask == (state & ~ignoremod);
 }
 
 void