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 | } |
