vial/encoder: fix memory corruption in exec_keycode

get_record_keycode calls into update_source_layers_cache which corrupts
memory because our magic row/col isn't present in the matrix

based on drashna code in ed6153062f/users/drashna/encoder_stuff.c
This commit is contained in:
Ilya Zhuravlev
2021-03-21 00:16:17 -04:00
parent c9c90c06b7
commit c69a05c216
3 changed files with 20 additions and 9 deletions

View File

@ -257,6 +257,7 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record);
bool process_record_user(uint16_t keycode, keyrecord_t *record);
void post_process_record_kb(uint16_t keycode, keyrecord_t *record);
void post_process_record_user(uint16_t keycode, keyrecord_t *record);
bool process_record_quantum_helper(uint16_t keycode, keyrecord_t *record);
#ifndef BOOTMAGIC_LITE_COLUMN
# define BOOTMAGIC_LITE_COLUMN 0