minor changes
This commit is contained in:
@@ -43,7 +43,7 @@ void logfileOpen(int first) {
|
||||
|
||||
if (logfileStd) {
|
||||
fil=stdout;
|
||||
return;
|
||||
str_copy(filnam, "<stdout>");
|
||||
}
|
||||
assert(fil==NULL);
|
||||
if (first) {
|
||||
@@ -83,13 +83,14 @@ void logfileStatusBuffer(char *buffer, int bufsize) {
|
||||
statusSize=bufsize-1;
|
||||
}
|
||||
|
||||
void logfileInit(char *path, int nodate, int use_stdout, int write_all) {
|
||||
char *logfileInit(char *path, int nodate, int use_stdout, int write_all) {
|
||||
str_copy(lnam, path);
|
||||
lastStamp=-1;
|
||||
lastStamp=-2;
|
||||
logfileStd=use_stdout;
|
||||
writeAll=write_all;
|
||||
notDated=nodate;
|
||||
logfileOpen(1);
|
||||
return(filnam);
|
||||
}
|
||||
|
||||
void logfileOut(int mask, const char *fmt, ...)
|
||||
@@ -144,7 +145,7 @@ void logfileMask(int mask) {
|
||||
logMask=logMask | mask;
|
||||
}
|
||||
|
||||
void logfileStamp(void) {
|
||||
void logfileStamp(char *text) {
|
||||
struct tm *tim;
|
||||
struct timeb btim;
|
||||
int stamp;
|
||||
@@ -152,16 +153,17 @@ void logfileStamp(void) {
|
||||
ftime(&btim);
|
||||
tim=localtime(&btim.time);
|
||||
stamp=tim->tm_hour*60+tim->tm_min;
|
||||
if (stamp!=lastStamp) {
|
||||
if (stamp<lastStamp) { /* time smaller than last time -> new day -> new logfile */
|
||||
if (fil!=NULL) { fclose(fil); fil=NULL; }
|
||||
logfileOpen(1);
|
||||
}
|
||||
if (stamp<lastStamp) { /* time smaller than last time -> new day -> new logfile */
|
||||
if (fil!=NULL) { fclose(fil); fil=NULL; }
|
||||
logfileOpen(1);
|
||||
lastStamp=-2;
|
||||
}
|
||||
if (stamp>lastStamp+1) {
|
||||
#ifdef __VMS
|
||||
else if (fil==NULL) logfileOpen(0);
|
||||
if (fil==NULL) logfileOpen(0);
|
||||
#endif
|
||||
lastStamp=stamp;
|
||||
fprintf(fil, "--- %02d:%02d:%02d ---\n", tim->tm_hour, tim->tm_min, tim->tm_sec);
|
||||
fprintf(fil, "%02d:%02d:%02d --- %s", tim->tm_hour, tim->tm_min, tim->tm_sec, text);
|
||||
dirty=0;
|
||||
}
|
||||
}
|
||||
@@ -170,18 +172,23 @@ void logfileWrite0(int mask) {
|
||||
char *s, *next;
|
||||
|
||||
logMask=logMask | mask;
|
||||
if (dirty) logfileStamp(); /* there was something written since last time */
|
||||
if (dirty) logfileStamp("\n"); /* there was something written since last time */
|
||||
|
||||
s=ebuf;
|
||||
if (writeAll || *s!='\0' && wrtMask & logMask) {
|
||||
logfileStamp(); /* write stamp before write something */
|
||||
next=strchr(s, '\1');
|
||||
while (next!=NULL) {
|
||||
*next='\0';
|
||||
next++;
|
||||
if (*next & logMask) {
|
||||
fprintf(fil, "%s", s);
|
||||
dirty=1;
|
||||
if (*s=='@') { /* write out time */
|
||||
lastStamp=-2;
|
||||
logfileStamp(s+1);
|
||||
} else {
|
||||
logfileStamp("\n"); /* write stamp before write something */
|
||||
fprintf(fil, "%s", s);
|
||||
dirty=1;
|
||||
}
|
||||
}
|
||||
s=next+1;
|
||||
next=strchr(s, '\1');
|
||||
@@ -213,7 +220,7 @@ void logfileShowErr(char *text)
|
||||
if (fil==NULL) logfileOpen(0);
|
||||
#endif
|
||||
logfileWrite0(LOG_ALL); /* write all */
|
||||
ErrWrite(text);
|
||||
ErrShow(text);
|
||||
#ifdef __VMS
|
||||
if (!logfileStd) { fclose(fil); fil=NULL; }
|
||||
#else
|
||||
@@ -227,8 +234,8 @@ void logfileClose()
|
||||
if (fil==NULL) logfileOpen(0);
|
||||
#endif
|
||||
logfileWrite0(LOG_MAIN+LOG_INFO);
|
||||
lastStamp-=1;
|
||||
logfileStamp();
|
||||
lastStamp=-2;
|
||||
logfileStamp("\n");
|
||||
if (fil!=NULL) { fclose(fil); fil=NULL; }
|
||||
filnam[0]='\0';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user