home · contact · privacy
Server/py: Minor fixes in actor_move().
[plomrogue] / src / client / interface_conf.c
index aba5e3bf5927f3be950a26d6d190e661804707e4..679f6c7a92549e8c6c094826e8c072eb0fd8a9a1 100644 (file)
@@ -1,6 +1,11 @@
-/* src/client/interface_conf.c */
+/* src/client/interface_conf.c
+ *
+ * This file is part of PlomRogue. PlomRogue is licensed under the GPL version 3
+ * or any later version. For details on its copyright, license, and warranties,
+ * see the file NOTICE in the root directory of the PlomRogue source package.
+ */
 
-#define _POSIX_C_SOURCE 200809L /* getopt(), optarg, strdup() */
+#define _POSIX_C_SOURCE 200809L /* getopt(), optarg, strdup(), snprintf() */
 #include "interface_conf.h"
 #include <ncurses.h> /* delwin() */
 #include <stddef.h> /* NULL, size_t */
@@ -19,7 +24,6 @@
 #include "cleanup.h" /* set_cleanup_flag() */
 #include "command_db.h" /* get_command() */
 #include "keybindings.h" /* KeyBinding, KeyBindingDB, get_command_to_keycode()*/
-#include "map.h" /* map_center() */
 #include "parse.h" /* EDIT_STARTED, parse_file(), parse_flagval(),
                     * parse_and_reduce_to_readyflag(), parse_id_uniq()
                     * parsetest_defcontext(), parse_unknown_arg(),
@@ -118,7 +122,6 @@ static void set_keybindings(char * token1, uint8_t flags,
 
 static void write_keybindings(FILE * file, struct KeyBindingDB * kbdb)
 {
-    char * f_name = "write_keybindings()";
     char * sep = " ";
     char * tok0 = "KEY";
     uint8_t i_kb;
@@ -126,12 +129,12 @@ static void write_keybindings(FILE * file, struct KeyBindingDB * kbdb)
     {
         size_t size = strlen(tok0) + strlen(sep) + 3 + strlen(sep)
                       + strlen(kbdb->kbs[i_kb].command->dsc_short) + 1 + 1;
-        char * line = try_malloc(size, f_name);
+        char * line = try_malloc(size, __func__);
         int test = snprintf(line, size, "%s%s%d%s%s\n",
                              tok0, sep, kbdb->kbs[i_kb].keycode, sep,
                              kbdb->kbs[i_kb].command->dsc_short);
-        exit_trouble(test < 0, f_name, "snprintf()");
-        try_fwrite(line, sizeof(char), strlen(line), file, f_name);
+        exit_trouble(test < 0, __func__, "snprintf");
+        try_fwrite(line, sizeof(char), strlen(line), file, __func__);
         free(line);
     }
 }
@@ -141,7 +144,6 @@ static void write_keybindings(FILE * file, struct KeyBindingDB * kbdb)
 static void write_def(FILE * file, char * prefix, uint8_t quotes, char * val,
                       char type)
 {
-    char * f_name = "write_def()";
     char * val_str = NULL;
     int test_val_str = 1;
     if      ('s' == type)
@@ -151,26 +153,26 @@ static void write_def(FILE * file, char * prefix, uint8_t quotes, char * val,
     if      ('i' == type)
     {
         size_t size_val_str = 6 + 1;
-        val_str = try_malloc(size_val_str, f_name);
+        val_str = try_malloc(size_val_str, __func__);
         test_val_str = snprintf(val_str, size_val_str, "%d", (int16_t) *val);
     }
     else if ('c' == type)
     {
         size_t size_val_str = 1 + 1;
-        val_str = try_malloc(size_val_str, f_name);
+        val_str = try_malloc(size_val_str, __func__);
         test_val_str = snprintf(val_str, size_val_str, "%c", * val);
     }
-    exit_trouble(test_val_str < 0, f_name, "snprintf()");
+    exit_trouble(test_val_str < 0, __func__, "snprintf");
     char * quote = quotes ? "'": "";
     char * affix = "\n";
     size_t size =   strlen(prefix) + strlen(val_str) + (2 * strlen(quote))
                   + strlen(affix) + 1;
-    char * line = try_malloc(size, f_name);
+    char * line = try_malloc(size, __func__);
     int test = snprintf(line, size, "%s%s%s%s%s",
                         prefix, quote, val_str, quote, affix);
-    exit_trouble(test < 0, f_name, "snprintf()");
+    exit_trouble(test < 0, __func__, "snprintf");
     free(val_str);
-    try_fwrite(line, sizeof(char), strlen(line), file, f_name);
+    try_fwrite(line, sizeof(char), strlen(line), file, __func__);
     free(line);
 }
 
@@ -216,16 +218,15 @@ static void tokens_into_entries(char * token0, char * token1)
 
 static void write_if_win(struct Win ** win)
 {
-    char * f_name = "write_if_win()";
     if (*win)
     {
         (*win)->target_height_type = (0 >= (*win)->target_height);
         (*win)->target_width_type = (0 >= (*win)->target_width);;
         size_t old_ids_size = strlen(world.winDB.ids);
         size_t new_size = old_ids_size + 1 + 1;
-        char * new_ids = try_malloc(new_size, f_name);
+        char * new_ids = try_malloc(new_size, __func__);
         int test = snprintf(new_ids,new_size,"%s%c",world.winDB.ids,(*win)->id);
-        exit_trouble(test < 0, f_name, "snprintf()");
+        exit_trouble(test < 0, __func__, "snprintf");
         free(world.winDB.ids);
         world.winDB.ids = new_ids;
         array_append(old_ids_size, sizeof(struct Win), *win,
@@ -246,7 +247,7 @@ static uint8_t start_win(char * token0, char * token1, char * str_win,
     }
     *win = (struct Win *) parse_init_entry(win_flags, sizeof(struct Win));
     parsetest_singlechar(token1);
-    parse_id_uniq(world.winDB.ids && (NULL!=strchr(world.winDB.ids,token1[0])));
+    parse_id_uniq(world.winDB.ids && strchr(world.winDB.ids,token1[0]));
     (*win)->id = token1[0];
     return 1;
 }
@@ -370,7 +371,7 @@ static void set_keybindings(char * token1, uint8_t flags,
     }
     kb.keycode = atoi(token1);
     char * err_uniq = "Binding to key already defined.";
-    err_line(NULL != get_command_to_keycode(kbdb, kb.keycode), err_uniq);
+    err_line(!(!get_command_to_keycode(kbdb, kb.keycode)), err_uniq);
     kb.command = get_command(token2);
     err_line(!(kb.command), "No such command in command DB.");
     array_append(kbdb->n_of_kbs, sizeof(struct KeyBinding), (void *) &kb,
@@ -432,11 +433,10 @@ extern void save_interface_conf()
 
 extern void load_interface_conf()
 {
-    char * f_name = "load_interface_conf()";
-    world.winDB.ids    = try_malloc(1, f_name);
+    world.winDB.ids    = try_malloc(1, __func__);
     world.winDB.ids[0] = '\0';
     world.winDB.wins = NULL;
-    tmp_order    = try_malloc(1, f_name);
+    tmp_order    = try_malloc(1, __func__);
     tmp_order[0] = '\0';
     tmp_active   = '\0';
     detect_atomic_leftover(world.path_interface);
@@ -444,7 +444,7 @@ extern void load_interface_conf()
     char * err = "Not all expected windows defined in config file.";
     exit_err(strlen(world.winDB.legal_ids) != strlen(world.winDB.ids), err);
     make_v_screen_and_init_win_sizes();
-    world.winDB.order = try_malloc(1, f_name);
+    world.winDB.order = try_malloc(1, __func__);
     world.winDB.order[0] = '\0';
     uint8_t i;
     for (i = 0; i < strlen(tmp_order); toggle_window(tmp_order[i]), i++);
@@ -480,6 +480,5 @@ extern void reload_interface_conf()
 {
     unload_interface_conf();
     load_interface_conf();
-    map_center();
     world.winDB.v_screen_offset = 0;
 }