diff options
author | Wilba <Jason.S.Williams@gmail.com> | 2020-03-15 00:35:12 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-14 13:35:12 +0000 |
commit | 141535c9db200348396abe38f66e8679c010767b (patch) | |
tree | 958fa26e03746fb341d2536952a7d83d45d9232d /quantum/dynamic_keymap.c | |
parent | a92947fcdb44c04996ebd11fb8ab8e5111468af7 (diff) | |
download | qmk_firmware-141535c9db200348396abe38f66e8679c010767b.tar.gz qmk_firmware-141535c9db200348396abe38f66e8679c010767b.zip |
Realign dynamic macros with recent SEND_STRING changes (#8407)
Diffstat (limited to 'quantum/dynamic_keymap.c')
-rw-r--r-- | quantum/dynamic_keymap.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/quantum/dynamic_keymap.c b/quantum/dynamic_keymap.c index f4120b118..3bb84cbde 100644 --- a/quantum/dynamic_keymap.c +++ b/quantum/dynamic_keymap.c | |||
@@ -210,9 +210,9 @@ void dynamic_keymap_macro_send(uint8_t id) { | |||
210 | ++p; | 210 | ++p; |
211 | } | 211 | } |
212 | 212 | ||
213 | // Send the macro string one or two chars at a time | 213 | // Send the macro string one or three chars at a time |
214 | // by making temporary 1 or 2 char strings | 214 | // by making temporary 1 or 3 char strings |
215 | char data[3] = {0, 0, 0}; | 215 | char data[4] = {0, 0, 0, 0}; |
216 | // We already checked there was a null at the end of | 216 | // We already checked there was a null at the end of |
217 | // the buffer, so this cannot go past the end | 217 | // the buffer, so this cannot go past the end |
218 | while (1) { | 218 | while (1) { |
@@ -223,10 +223,12 @@ void dynamic_keymap_macro_send(uint8_t id) { | |||
223 | break; | 223 | break; |
224 | } | 224 | } |
225 | // If the char is magic (tap, down, up), | 225 | // If the char is magic (tap, down, up), |
226 | // add the next char (key to use) and send a 2 char string. | 226 | // add the next char (key to use) and send a 3 char string. |
227 | if (data[0] == SS_TAP_CODE || data[0] == SS_DOWN_CODE || data[0] == SS_UP_CODE) { | 227 | if (data[0] == SS_TAP_CODE || data[0] == SS_DOWN_CODE || data[0] == SS_UP_CODE) { |
228 | data[1] = eeprom_read_byte(p++); | 228 | data[1] = data[0]; |
229 | if (data[1] == 0) { | 229 | data[0] = SS_QMK_PREFIX; |
230 | data[2] = eeprom_read_byte(p++); | ||
231 | if (data[2] == 0) { | ||
230 | break; | 232 | break; |
231 | } | 233 | } |
232 | } | 234 | } |