X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=src%2Fcommand_db.c;h=37f4d69545c76fccecf60e02b8876f203fee9ac3;hb=e75b508724effaad1bfd6dcf337c34a368855095;hp=c0aa523ac6221a49ea556ac66ede0e222926eaea;hpb=2dccba703435158681552b8a8aefccab79eb13f3;p=plomrogue diff --git a/src/command_db.c b/src/command_db.c index c0aa523..37f4d69 100644 --- a/src/command_db.c +++ b/src/command_db.c @@ -2,12 +2,13 @@ #include "command_db.h" #include /* for free() */ -#include /* for FILE typedef, fgets() */ +#include /* for FILE typedef */ #include /* for uint8_t */ #include /* for strlen(), strtok() */ #include "main.h" /* for world global */ -#include "rexit.h" /* for exit_err() */ -#include "readwrite.h" /* for textfile_sizes(), try_fopen(), try_fclose() */ +#include "readwrite.h" /* for textfile_sizes(), try_fopen(), try_fclose(), + * try_fgets() + */ #include "misc.h" /* for try_malloc() */ @@ -79,17 +80,14 @@ extern char * get_command_longdsc(char * dsc_short) extern void init_command_db() { char * f_name = "init_command_db()"; - char * err_s = "Trouble in init_command_db() with textfile_sizes()."; - char * path = "config/commands"; FILE * file = try_fopen(path, "r", f_name); - uint16_t lines, linemax; - exit_err(textfile_sizes(file, &linemax, &lines), err_s); + uint16_t lines; + uint16_t linemax = textfile_sizes(file, &lines); char line[linemax + 1]; - struct Command * cmds = try_malloc(lines * sizeof(struct Command), f_name); uint8_t i = 0; - while (fgets(line, linemax + 1, file)) + while (try_fgets(line, linemax + 1, file, f_name)) { if ('\n' == line[0] || 0 == line[0]) { @@ -101,7 +99,6 @@ extern void init_command_db() i++; } try_fclose(file, f_name); - world.cmd_db = try_malloc(sizeof(struct CommandDB), f_name); world.cmd_db->cmds = cmds; world.cmd_db->n = lines;