X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=src%2Fkeybindings.c;h=121304bdadd9ed2d773adf6eed374f4c8a034bd4;hb=b97faa0009abc699ab7bff7bcc3221b8b3104e12;hp=0b5194c4eec8d585a7b024c0acacab65f5da8287;hpb=f74f720e631840566200e8f022b1068e6f3453fb;p=plomrogue diff --git a/src/keybindings.c b/src/keybindings.c index 0b5194c..121304b 100644 --- a/src/keybindings.c +++ b/src/keybindings.c @@ -16,14 +16,15 @@ extern void init_keybindings(struct World * world) { - FILE * file = fopen("keybindings", "r"); + FILE * file = fopen("config/keybindings", "r"); uint16_t lines, linemax; - textfile_sizes(file, &linemax, &lines); + char * err = "textfile_sizes() in init_keybindings() returns error."; + exit_err(textfile_sizes(file, &linemax, &lines), world, err); struct KeyBinding * keybindings = malloc(lines * sizeof(struct KeyBinding)); char * command = malloc(linemax); uint16_t commcount = 0; char * cmdptr; - while (fgets(command, linemax, file)) + while (fgets(command, linemax + 1, file)) { keybindings[commcount].key = atoi(command); cmdptr = strchr(command, ' ') + 1; @@ -49,7 +50,7 @@ extern void save_keybindings(struct World * world) struct KeysWinData * keyswindata = (struct KeysWinData *) world->keyswindata; struct KeyBinding * keybindings = world->keybindings; - FILE * file = fopen("keybindings", "w"); + FILE * file = fopen("config/keybindings", "w"); uint16_t linemax = 0; uint16_t i; for (i = 0; i <= keyswindata->max; i++) @@ -170,7 +171,8 @@ extern char * get_keyname(uint16_t keycode) extern void keyswin_mod_key(struct World * world, struct WinMeta * win_meta) { world->keyswindata->edit = 1; - exit_err(draw_all_wins(win_meta), world, "Window drawing error."); + exit_err(draw_all_wins(win_meta), world, "Trouble with draw_all_wins() in " + "keyswin_mod_key()."); int key = getch(); if (key < 1000) {