]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
quantum: Move qk_ucis_state to process_unicode.c
authorGergely Nagy <algernon@madhouse-project.org>
Wed, 24 Aug 2016 13:39:23 +0000 (15:39 +0200)
committerGergely Nagy <algernon@madhouse-project.org>
Wed, 24 Aug 2016 13:39:23 +0000 (15:39 +0200)
In order to not declare the same variable in multiple objects (which
happens when building UCIS-enabled keymap for both the ErgoDox EZ and
the ErgoDox Infinity), move the declaration to the .c file, and keep
only an extern reference in the header.

Many thanks to @fredizzimo for spotting the error in Travis, and
suggesting the fix.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
quantum/process_keycode/process_unicode.c
quantum/process_keycode/process_unicode.h

index a1be8d2fc396b89d0b367781fa19b33d7330b163..06c1694f2e7b1753f714998a6a8ae758df610263 100644 (file)
@@ -74,6 +74,8 @@ bool process_unicode(uint16_t keycode, keyrecord_t *record) {
 }
 
 #ifdef UCIS_ENABLE
+qk_ucis_state_t qk_ucis_state;
+
 void qk_ucis_start(void) {
   qk_ucis_state.count = 0;
   qk_ucis_state.in_progress = true;
index 85364e8eb3bd721a5a017a02ed1a9cb0396b24f3..02ce3dd7e05c4dadef3443536872419c5fc4f214 100644 (file)
@@ -29,11 +29,13 @@ typedef struct {
   char *code;
 } qk_ucis_symbol_t;
 
-struct {
+typedef struct {
   uint8_t count;
   uint16_t codes[UCIS_MAX_SYMBOL_LENGTH];
   bool in_progress:1;
-} qk_ucis_state;
+} qk_ucis_state_t;
+
+extern qk_ucis_state_t qk_ucis_state;
 
 #define UCIS_TABLE(...) {__VA_ARGS__, {NULL, NULL}}
 #define UCIS_SYM(name, code) {name, #code}