From 01038ab54ca6c2858ea9e856c717a1129ffe4156 Mon Sep 17 00:00:00 2001
From: Ofer Plesser <plesserofer@gmail.com>
Date: Fri, 23 Dec 2016 21:51:11 +0200
Subject: [PATCH] Added check that makes sure a code is a right modifier before
 considering it as one

---
 quantum/keymap.h  | 1 +
 quantum/quantum.c | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/quantum/keymap.h b/quantum/keymap.h
index ae56d16c7..745c55279 100644
--- a/quantum/keymap.h
+++ b/quantum/keymap.h
@@ -53,6 +53,7 @@ enum quantum_keycodes {
     QK_LSFT               = 0x0200,
     QK_LALT               = 0x0400,
     QK_LGUI               = 0x0800,
+    QK_RMODS_MIN          = 0x1000,
     QK_RCTL               = 0x1100,
     QK_RSFT               = 0x1200,
     QK_RALT               = 0x1400,
diff --git a/quantum/quantum.c b/quantum/quantum.c
index f653564a6..63ffe2074 100644
--- a/quantum/quantum.c
+++ b/quantum/quantum.c
@@ -21,6 +21,8 @@ static void do_code16 (uint16_t code, void (*f) (uint8_t)) {
   if (code & QK_LGUI)
     f(KC_LGUI);
 
+  if (code < QK_RMODS_MIN) return;
+
   if (code & QK_RCTL)
     f(KC_RCTL);
   if (code & QK_RSFT)
-- 
2.39.5