diff --git a/ChangeLog b/ChangeLog index 4fe5e873..e50a2fe5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4631,8 +4631,6 @@ v0.33.20 10-Feb-2002 msgbase.a: Improved logging for opening message bases. Added function to delete a JAM message base. - Changed the handling of the lastread pointers in the JAM pack - function which caused problems on FreeBSD. mbsetup: In message groups added default settings for auto area diff --git a/TODO b/TODO index fa82d6c5..6c470aaa 100644 --- a/TODO +++ b/TODO @@ -33,6 +33,8 @@ mbsebbs: L: Better word wrapping or paragraph justification in editor. + L: E-mail downloads with e-mail verification. + mbfido: U: Code cleanup and make a structure in this program. Remove duplicate or similar functions. @@ -40,8 +42,6 @@ mbfido: N: Remove memory leak during toss. (It's ok for less 5000 messages for each run). - N: Implement long filename support from .tic files (testing fase). - N: When a news article is received from a mailinglist there is a valid To: address in the message, the gate doesn't see that and uses the name to "All". diff --git a/lib/jammsg.c b/lib/jammsg.c index 8ba439a3..c42e7376 100644 --- a/lib/jammsg.c +++ b/lib/jammsg.c @@ -642,7 +642,6 @@ void JAM_Pack(void) Written++; lseek(fdJlr, 0, SEEK_SET); - lseek(fdnJlr, 0, SEEK_SET); while ((read(fdJlr, &LR, sizeof(lastread)) == sizeof(lastread))) { /* * Test if one of the lastread pointer is the current @@ -656,8 +655,9 @@ void JAM_Pack(void) LR.LastReadMsg = NewNumber; if (LR.HighReadMsg == jamHdr.MsgNum) LR.HighReadMsg = NewNumber; + lseek(fdJlr, - sizeof(lastread), SEEK_CUR); + write(fdJlr, &LR, sizeof(lastread)); } - write(fdnJlr, &LR, sizeof(lastread)); } jamHdr.MsgNum = NewNumber; write(fdnHdr, &jamHdr, sizeof(JAMHDR)); @@ -700,6 +700,14 @@ void JAM_Pack(void) } } + /* + * Now copy the lastread file + */ + lseek(fdJlr, 0, SEEK_SET); + while (read(fdJlr, &LR, sizeof(lastread)) == sizeof(lastread)) { + write(fdnJlr, &LR, sizeof(lastread)); + } + /* * Close all files */