diff --git a/src/keycode.cpp b/src/keycode.cpp
index cdf3c6062dde7aad2e5c7a0d77c8ce4c1b6bc2d6..9aa9d300d688e601c2e24286c41fa5da68a52f50 100644
--- a/src/keycode.cpp
+++ b/src/keycode.cpp
@@ -260,7 +260,7 @@ KeyPress::KeyPress(const char *name)
 		try {
 			Key = keyname_to_keycode(name);
 			m_name = name;
-			if (strlen(name) > 8) {
+			if (strlen(name) > 8 && strncmp(name, "KEY_KEY_", 8) == 0) {
 				int chars_read = mbtowc(&Char, name + 8, 1);
 				assert (chars_read == 1 && "unexpected multibyte character");
 			} else