diff options
author | Vladimir Chtchetkine <vchtchetkine@google.com> | 2010-09-01 09:17:11 -0700 |
---|---|---|
committer | Vladimir Chtchetkine <vchtchetkine@google.com> | 2010-09-01 09:44:01 -0700 |
commit | cefa7443eb3d3e4bb134595f756145426d5613e3 (patch) | |
tree | 7ced288de1420463b18ce3f2d0ae36efaa46775e /keymaps.c | |
parent | 2cb19c7efef5f194198aa84d6a9ffbdb4c740455 (diff) | |
download | external_qemu-cefa7443eb3d3e4bb134595f756145426d5613e3.zip external_qemu-cefa7443eb3d3e4bb134595f756145426d5613e3.tar.gz external_qemu-cefa7443eb3d3e4bb134595f756145426d5613e3.tar.bz2 |
Add android_port initialization in the core.
Also some minor cleanups to the ui <-> core stuff.
Change-Id: I7d64ec1aa694c027851b7e262b6e1b80bb6cef08
Diffstat (limited to 'keymaps.c')
-rw-r--r-- | keymaps.c | 25 |
1 files changed, 24 insertions, 1 deletions
@@ -64,20 +64,43 @@ static kbd_layout_t *parse_keyboard_layout(const name2keysym_t *table, kbd_layout_t * k) { FILE *f; + /* This file is used by both, UI and core components. There are differences + * in the way how keymap file path is obtained for these two different + * configurations. */ +#if defined(CONFIG_STANDALONE_UI) + char filename[2048]; +#else char * filename; +#endif // CONFIG_STANDALONE_UI char line[1024]; int len; +#if defined(CONFIG_STANDALONE_UI) + if (android_core_qemu_find_file(QEMU_FILE_TYPE_KEYMAP, language, + filename, sizeof(filename))) { + fprintf(stderr, + "Could not read keymap file: '%s'\n", language); + return NULL; + } +#else filename = qemu_find_file(QEMU_FILE_TYPE_KEYMAP, language); + if (!filename) { + fprintf(stderr, + "Could not read keymap file: '%s'\n", language); + return NULL; + } +#endif // CONFIG_STANDALONE_UI if (!k) k = qemu_mallocz(sizeof(kbd_layout_t)); - if (!(filename && (f = fopen(filename, "r")))) { + if (!(f = fopen(filename, "r"))) { fprintf(stderr, "Could not read keymap file: '%s'\n", language); return NULL; } +#if defined(CONFIG_STANDALONE_UI) qemu_free(filename); +#endif // CONFIG_STANDALONE_UI for(;;) { if (fgets(line, 1024, f) == NULL) break; |