Re: freopen filelog update

From: Mike Carpenter (abram@DELTANET.COM)
Date: 10/21/97


If i were to just use this update as my first patch will it work or is
there something from another patch
that I will need?
Abram

----------
>
> With a small update, it'll save perror() output:
>
> greerga@cambot:~/circle30bpl11/freopen$ tail ../log/syslog
> Tue Oct 21 09:27:28 :: Losing player: Azalin.
> Tue Oct 21 09:27:28 :: No connections.  Going to sleep.
> Tue Oct 21 09:27:32 :: New connection.  Waking up.
> gethostbyaddr: Error 0
> Tue Oct 21 09:27:34 :: Azalin [134.053.147.032] has connected.
> Tue Oct 21 09:27:35 :: Azalin retrieving crash-saved items and entering
game.
> Tue Oct 21 09:27:40 :: (GC) Shutdown by Azalin.
> Tue Oct 21 09:27:40 :: Closing all sockets.
> Tue Oct 21 09:27:40 :: Closing link to: Azalin.
> Tue Oct 21 09:27:40 :: Normal termination of game.
>
> Standard ANSI C function...MSVC claims to support it.
>
> diff -upPr -x *.o ../done/filelog/comm.c ./comm.c
> --- ../done/filelog/comm.c      Mon Oct 20 15:07:44 1997
> +++ ./comm.c    Tue Oct 21 09:17:15 1997
> @@ -144,7 +144,7 @@ int main(int argc, char **argv)
>    dir = DFLT_DIR;
>
>    /* Be nice to make this a command line option but the parser uses
log() */
> -  if (*LOGFILE != '\0' && !(logfile = fopen(LOGFILE, "w"))) {
> +  if (*LOGFILE != '\0' && !(logfile = freopen(LOGFILE, "w", stderr))) {
>      fprintf(stdout, "Error opening log file!\n");
>      exit(1);
>    }
> diff -upPr -x *.o ../done/filelog/utils.c ./utils.c
> --- ../done/filelog/utils.c     Mon Oct 20 15:06:30 1997
> +++ ./utils.c   Tue Oct 21 09:26:47 1997
> @@ -133,6 +133,7 @@ void log(char *str)
>    tmstr = asctime(localtime(&ct));
>    *(tmstr + strlen(tmstr) - 1) = '\0';
>    fprintf(logfile, "%-19.19s :: %s\n", tmstr, str);
> +  fflush(logfile);
>  }
>
>
> @@ -166,8 +167,10 @@ void mudlog(char *str, char type, int le
>    ct = time(0);
>    tmp = asctime(localtime(&ct));
>
> -  if (file)
> +  if (file) {
>      fprintf(logfile, "%-19.19s :: %s\n", tmp, str);
> +    fflush(logfile);
> +  }
>    if (level < 0)
>      return;


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/08/00 PST