equal
deleted
inserted
replaced
297 } |
297 } |
298 |
298 |
299 if (StrEmpty(_keyboard_opt[1])) { |
299 if (StrEmpty(_keyboard_opt[1])) { |
300 GetString(keyboard[1], STR_OSK_KEYBOARD_LAYOUT_CAPS, lastof(keyboard[1])); |
300 GetString(keyboard[1], STR_OSK_KEYBOARD_LAYOUT_CAPS, lastof(keyboard[1])); |
301 } else { |
301 } else { |
302 strncpy(keyboard[0], _keyboard_opt[0], lengthof(keyboard[1])); |
302 strncpy(keyboard[1], _keyboard_opt[1], lengthof(keyboard[1])); |
303 } |
303 } |
304 |
304 |
305 for (uint j = 0; j < 2; j++) { |
305 for (uint j = 0; j < 2; j++) { |
306 const char *kbd = keyboard[j]; |
306 const char *kbd = keyboard[j]; |
|
307 bool ended = false; |
307 for (uint i = 0; i < OSK_KEYBOARD_ENTRIES; i++) { |
308 for (uint i = 0; i < OSK_KEYBOARD_ENTRIES; i++) { |
308 _keyboard[j][i] = Utf8Consume(&kbd); |
309 _keyboard[j][i] = Utf8Consume(&kbd); |
|
310 |
|
311 /* Be lenient when the last characters are missing (is quite normal) */ |
|
312 if (_keyboard[j][i] == '\0' || ended) { |
|
313 ended = true; |
|
314 _keyboard[j][i] = ' '; |
|
315 continue; |
|
316 } |
309 |
317 |
310 if (IsPrintable(_keyboard[j][i])) { |
318 if (IsPrintable(_keyboard[j][i])) { |
311 errormark[j][i] = ' '; |
319 errormark[j][i] = ' '; |
312 } else { |
320 } else { |
313 has_error = true; |
321 has_error = true; |