X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=quantum%2Fprocess_keycode%2Fprocess_combo.c;h=6e9c28e4fc0489cb95a2021cb2c25e8373c3b0d6;hb=11eaccdbce5246e7235ff91d0d04de83f7685919;hp=58d45add2288899de0805abeb487b2dafcf2bf13;hpb=605c4129cc89e8fe647881108b0c9c79d4da1aea;p=qmk_firmware.git diff --git a/quantum/process_keycode/process_combo.c b/quantum/process_keycode/process_combo.c index 58d45add2..6e9c28e4f 100644 --- a/quantum/process_keycode/process_combo.c +++ b/quantum/process_keycode/process_combo.c @@ -22,7 +22,7 @@ __attribute__ ((weak)) -combo_t key_combos[] = { +combo_t key_combos[COMBO_COUNT] = { }; @@ -127,8 +127,12 @@ bool process_combo(uint16_t keycode, keyrecord_t *record) void matrix_scan_combo(void) { for (int i = 0; i < COMBO_COUNT; ++i) { + // Do not treat the (weak) key_combos too strict. + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Warray-bounds" combo_t *combo = &key_combos[i]; - if (combo->timer && + #pragma GCC diagnostic pop + if (combo->timer && combo->timer != COMBO_TIMER_ELAPSED && timer_elapsed(combo->timer) > COMBO_TERM) {