Skip to content

Commit

Permalink
quantum: Move qk_ucis_state to process_unicode.c
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
algernon committed Aug 24, 2016
1 parent a920548 commit a058ae4
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
2 changes: 2 additions & 0 deletions quantum/process_keycode/process_unicode.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
6 changes: 4 additions & 2 deletions quantum/process_keycode/process_unicode.h
Original file line number Diff line number Diff line change
Expand Up @@ -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}
Expand Down

0 comments on commit a058ae4

Please sign in to comment.