2015-07-24 11:42:33 (UTC-03:00)
Marcel Rodrigues <marcelgmr@gmail.com>
Refactor get_index() into loop.
diff --git a/main.c b/main.c index 9992807..59cb0c5 100644 --- a/main.c +++ b/main.c @@ -23,16 +23,14 @@ int get_index(Font *font, uint16_t code) { int index; + uint16_t *cur_code; + uint16_t codes[] = {code, 0xFFFD, 0x003F, 0x0020, 0}; - index = search_glyph(font, code); - if (index == -1) - index = search_glyph(font, 0xFFFD); - if (index == -1) - index = search_glyph(font, 0x003F); - if (index == -1) - index = search_glyph(font, 0x0020); - if (index == -1) - index = search_glyph(font, 0x0000); + for (cur_code = &codes[0]; *cur_code; cur_code++) { + index = search_glyph(font, *cur_code); + if (index != -1) + break; + }; return index; }