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)
{