Through monitoring I found that something was calling log and logfile had not been initialized yet. I still don't know why though. I would like to know: 1. What would call log before logfile is initialized 2. How can I init logfile earlier 3. why void basic_mud_log(const char *format, ...) has the ,... at the descriptions. why does it work? Thanks I modified the routine as follows and the mud continues on: (added a return on the syserror) void basic_mud_log(const char *format, ...) { va_list args; time_t ct = time(0); char *time_s = asctime(localtime(&ct)); if (logfile == NULL) { puts("SYSERR: Using log() before stream was initialized!"); return; } if (format == NULL) { format = "SYSERR: log() received a NULL format."; return; } time_s[strlen(time_s) - 1] = '\0'; fprintf(logfile, "%-15.15s :: ", time_s + 4); va_start(args, format); vfprintf(logfile, format, args); va_end(args); fprintf(logfile, "\n"); fflush(logfile); } +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST