- copy_tokenized_string(line, &cmd.dsc_short, delim);
- copy_tokenized_string(NULL, &cmd.server_msg, delim);
- if (!strcmp("0", cmd.server_msg))
- { /* A .server_msg == NULL helps control.c's */
- free(cmd.server_msg); /* try_key() and try_server_command() to */
- cmd.server_msg = NULL; /* differentiate server commands from */
- } /* non-server commands. */
- char * arg_string = strtok(NULL, delim);
- cmd.arg = arg_string[0];
- copy_tokenized_string(NULL, &cmd.dsc_long, "\n");
- uint32_t old_size = i * sizeof(struct Command);
- uint32_t new_size = old_size + sizeof(struct Command);
- struct Command * new_cmds = try_malloc(new_size, f_name);
- memcpy(new_cmds, world.commandDB.cmds, old_size);
- new_cmds[i] = cmd;
- free(world.commandDB.cmds);
- world.commandDB.cmds = new_cmds;
+ memset(&cmd, 0, sizeof(struct Command));
+ err_try_fgets(line, linemax, file, context, "nf");
+ write_line_to_target(&cmd.dsc_short, line);
+ err_try_fgets(line, linemax, file, context, "0nf");
+ write_line_to_target(&cmd.dsc_long, line);
+ err_try_fgets(line, linemax, file, context, "0nf");
+ if (strcmp(world.delim, line))
+ {
+ write_line_to_target(&cmd.server_msg, line);
+ err_try_fgets(line, linemax, file, context, "0nfs");
+ cmd.arg = line[0];
+ err_try_fgets(line, linemax, file, context, "d");
+ }
+ array_append(i, sizeof(struct Command), (void *) &cmd,
+ (void **) &world.commandDB.cmds);