]> SAFE projects GIT repository - jmp/mailleur/commitdiff
Working out the events table update
authorJean-Marc Pigeon (Delson) <jmp@safe.ca>
Sun, 27 Jul 2025 14:47:44 +0000 (10:47 -0400)
committerJean-Marc Pigeon (Delson) <jmp@safe.ca>
Sun, 27 Jul 2025 14:47:44 +0000 (10:47 -0400)
app/scanner.c
lib/devlog.c
lib/devlog.h
lib/lvleml.c

index 66889902f64e1c520d47d554745a8f7e4df75ec7..cd7afb32340dafb6fa0c5ecaf9d1488de0ac9c2e 100644 (file)
@@ -293,8 +293,15 @@ while (proceed==true) {
         }
       rmtip=(char **)rou_freelist((void **)rmtip,(genfree_t)rou_freestr);
       break;
-    case 8      :       //let continue
-      scanref.logptr=log_closelog(scanref.logptr);
+    case 8      :       //updating logs
+      if (scanref.logptr!=(LOGPTR *)0) {
+        long debut;
+        long fin;
+
+        scanref.logptr=log_closelog(scanref.logptr,&debut,&fin);
+        }
+      break;
+    case 9      :       //let continue
       scanref.sqlptr=sql_closesql(scanref.sqlptr);
       if (foreground==false)
         phase=1;        //looping quickly to do next batch
index 7eda56118b980c99f7352751d6e435888951e579..fbf11d3dc4b5077b96efe8ede8b9d6cfca3c0ae6 100644 (file)
@@ -53,7 +53,7 @@ return log;
 /*      daily logs.                                     */
 /*                                                      */
 /********************************************************/
-static _Bool mergelog(const char *logname)
+static _Bool mergelog(const char *logname,long *debut,long *fin)
 
 {
 #define OPEP    "devlog.c:mergelog"
@@ -233,7 +233,7 @@ return (LOGPTR *)log;
 /*      return the close status.                        */
 /*                                                      */
 /********************************************************/
-PUBLIC LOGPTR *log_closelog(LOGPTR *logptr)
+PUBLIC LOGPTR *log_closelog(LOGPTR *logptr,long *debut,long *fin)
 
 {
 #define OPEP    "devlog.c:log_closelog"
@@ -243,6 +243,8 @@ int phase;
 int proceed;
 
 log=(LOGTYP *)logptr;
+*debut=0;
+*fin=0;
 phase=0;
 proceed=true;
 while (proceed==true) {
@@ -260,7 +262,7 @@ while (proceed==true) {
         }
       break;
     case 2      :       //merging current log
-      if (mergelog(log->filename)==false) 
+      if (mergelog(log->filename,debut,fin)==false) 
         phase=999;
       break;
     case 3      :       //removing logfile
index 8230e302cc01b0bb6d9a6bdfc90e831253e9267e..0303e5be024ee955f41c655678ab85136c859519 100644 (file)
@@ -16,7 +16,7 @@ typedef void    LOGPTR;
 extern LOGPTR *log_openlog(char *logname,const char *cmt);
 
 //procedure to close a previously open session log
-extern LOGPTR *log_closelog(LOGPTR *logptr);
+extern LOGPTR *log_closelog(LOGPTR *logptr,long *debut,long *fin);
 
 //procedure to write a sequence within the current log
 extern int log_fprintlog(LOGPTR *logptr,_Bool showtime,const char *format,...);
index 6ddd639000e05e3c803b1817665f78f16eae4807..51423149914ba6d58b7b798bbc3be450f2bc3cde 100644 (file)
@@ -106,10 +106,15 @@ static CONTYP *freecontact(CONTYP *contact)
 #define OPEP    "lvleml.c:freecontact"
 
 if (contact!=(CONTYP *)0) {
+  long debut;
+  long fin;
+
+  debut=0;
+  fin=0;
   (void) freesessid(contact);
   contact->termend=rou_freestr(contact->termend);
+  contact->logptr=log_closelog(contact->logptr,&debut,&fin);
   contact->sqlptr=sql_closesql(contact->sqlptr);
-  contact->logptr=log_closelog(contact->logptr);
   contact->relayok=(AFNTYP **)rou_freelist((void **)contact->relayok,
                                          (genfree_t)afn_freeipnum);
   contact->recipients=(RCPTYP **)rou_freelist((void **)contact->recipients,
@@ -2808,11 +2813,15 @@ PUBLIC void eml_remote_email(TRATYP **tra)
 
 char *mainsesid;
 LOGPTR *logptr;
+long debut;
+long fin;
 int phase;
 _Bool proceed;
 
 mainsesid=(char *)0;
 logptr=(LOGPTR *)0;
+debug=0;
+fin=0;
 phase=0;
 proceed=true;
 while (proceed==true) {
@@ -2845,7 +2854,7 @@ while (proceed==true) {
       (void) sending_email(logptr,tra);  
       break;
     case 4      :       //closing log linked to session
-      logptr=log_closelog(logptr);
+      logptr=log_closelog(logptr,&debut,&fin);
       break;
     default     :       //SAFE Guard
       proceed=false;