Realign dynamic macros with recent SEND_STRING changes (#8407)

This commit is contained in:
Wilba 2020-03-15 00:35:12 +11:00 committed by GitHub
parent a92947fcdb
commit 141535c9db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -210,9 +210,9 @@ void dynamic_keymap_macro_send(uint8_t id) {
++p; ++p;
} }
// Send the macro string one or two chars at a time // Send the macro string one or three chars at a time
// by making temporary 1 or 2 char strings // by making temporary 1 or 3 char strings
char data[3] = {0, 0, 0}; char data[4] = {0, 0, 0, 0};
// We already checked there was a null at the end of // We already checked there was a null at the end of
// the buffer, so this cannot go past the end // the buffer, so this cannot go past the end
while (1) { while (1) {
@ -223,10 +223,12 @@ void dynamic_keymap_macro_send(uint8_t id) {
break; break;
} }
// If the char is magic (tap, down, up), // If the char is magic (tap, down, up),
// add the next char (key to use) and send a 2 char string. // add the next char (key to use) and send a 3 char string.
if (data[0] == SS_TAP_CODE || data[0] == SS_DOWN_CODE || data[0] == SS_UP_CODE) { if (data[0] == SS_TAP_CODE || data[0] == SS_DOWN_CODE || data[0] == SS_UP_CODE) {
data[1] = eeprom_read_byte(p++); data[1] = data[0];
if (data[1] == 0) { data[0] = SS_QMK_PREFIX;
data[2] = eeprom_read_byte(p++);
if (data[2] == 0) {
break; break;
} }
} }