aboutsummaryrefslogtreecommitdiff
path: root/quantum/dynamic_macro.h
diff options
context:
space:
mode:
authorDaniel Shields <dshields@bats.com>2017-05-11 09:46:11 +0100
committerDaniel Shields <dshields@bats.com>2017-06-01 16:29:58 +0100
commit606e13a47ea3f4099e09c0a71294555163790c4a (patch)
tree6f158d763086ebceded8890264febef9fdf8087c /quantum/dynamic_macro.h
parentec3e684123c5abf22fd8d397786adbd978bbfcdb (diff)
downloadqmk_firmware-606e13a47ea3f4099e09c0a71294555163790c4a.tar.gz
qmk_firmware-606e13a47ea3f4099e09c0a71294555163790c4a.zip
Prevent the recording of looping dynamic macros.
If a macro play key is inadvertently recorded in a dynamic macro a loop is created and the macro will not terminate when played. This should be prevented.
Diffstat (limited to 'quantum/dynamic_macro.h')
-rw-r--r--quantum/dynamic_macro.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/quantum/dynamic_macro.h b/quantum/dynamic_macro.h
index f242405de..045ee95b5 100644
--- a/quantum/dynamic_macro.h
+++ b/quantum/dynamic_macro.h
@@ -274,6 +274,10 @@ bool process_record_dynamic_macro(uint16_t keycode, keyrecord_t *record)
274 macro_id = 0; 274 macro_id = 0;
275 } 275 }
276 return false; 276 return false;
277 case DYN_MACRO_PLAY1:
278 case DYN_MACRO_PLAY2:
279 dprintln("dynamic macro: ignoring macro play key while recording");
280 return false;
277 default: 281 default:
278 /* Store the key in the macro buffer and process it normally. */ 282 /* Store the key in the macro buffer and process it normally. */
279 switch (macro_id) { 283 switch (macro_id) {