(no subject)
Harvey Eneman <[email protected]>
| Newsgroups | gmane.mail.exmh.devel |
|---|---|
| Message-ID | <[email protected]> |
I've noticed for sometime that using the separate background process, the foreground process occasionally failed to report unseen messages. I believe this is the same issue that was raised by Jongki Suwandi in a note to exmh-users on Mar 31. As Jongki Suwandi indicated, if the background process thinks that it has already reported the current sequence to the foreground process, it does not send it again. My initial resolution to the problem was to simply not cache the unseen sequence (see the attached flist.tcl patch). I then noticed a subsequent issue: Mh_Sequences does not clear a folder's sequences when the sequence file no longer exists. I have provided a solution to this issue in the attached mh.tcl patch. Regards, Harv _______________________________________________ Exmh-workers mailing list [email protected] https://www.redhat.com/mailman/listinfo/exmh-workers
flist.tcl.patch
(application/x-patch, 1.1 KB)
*** flist.tcl.orig Thu Apr 3 15:39:55 2003
--- flist.tcl Mon Sep 6 14:32:39 2004
***************
*** 303,309 ****
}
proc FlistFindSeqsInner {} {
! global flist seqwin flistcache
if {[catch {
FlistGetContext
foreach folder $flist(unseenfolders) {
--- 303,309 ----
}
proc FlistFindSeqsInner {} {
! global flist seqwin flistcache mhProfile
if {[catch {
FlistGetContext
foreach folder $flist(unseenfolders) {
***************
*** 316,322 ****
# Cache added 2/11/03
# Sequence is different than last time we checked
! set flistcache($folder,$seq) $seqlist
BgRPC Seq_Set $folder $seq $seqlist
}
}
--- 316,324 ----
# Cache added 2/11/03
# Sequence is different than last time we checked
! if {$seq != $mhProfile(unseen-sequence)} {
! set flistcache($folder,$seq) $seqlist
! }
BgRPC Seq_Set $folder $seq $seqlist
}
}
mh.tcl.patch
(application/x-patch, 2.5 KB)
*** mh.tcl.orig Mon Jan 12 18:28:58 2004
--- mh.tcl Mon Sep 6 14:33:41 2004
***************
*** 425,432 ****
# First read the private sequence
set mhPriv(changed,private) 0
set filename $mhProfile(context)
! if [file exists $filename] {
! set mtime [file mtime $filename]
if {![info exists mhPriv(privmtime)] || ($mtime != $mhPriv(privmtime))} {
foreach elem [array names mhPriv] {
set indices [split $elem ,]
--- 425,431 ----
# First read the private sequence
set mhPriv(changed,private) 0
set filename $mhProfile(context)
! if {![catch {set mtime [file mtime $filename]}]} {
if {![info exists mhPriv(privmtime)] || ($mtime != $mhPriv(privmtime))} {
foreach elem [array names mhPriv] {
set indices [split $elem ,]
***************
*** 458,463 ****
--- 457,472 ----
set mhPriv(privmtime) $mtime
}
}
+ } elseif {[info exists mhPriv(privmtime)]} {
+ unset mhPriv(privmtime)
+ foreach elem [array names mhPriv] {
+ set indices [split $elem ,]
+ if {[lindex $indices 0] == {privseq}} {
+ if {[lindex $indices 1] == $folder} {
+ unset mhPriv($elem)
+ }
+ }
+ }
}
foreach elem [array names mhPriv] {
set indices [split $elem ,]
***************
*** 470,477 ****
# Then read the public sequence
set mhPriv(changed,public) 0
set filename "$mhProfile(path)/$folder/$mhProfile(mh-sequences)"
! if [file exists $filename] {
! set mtime [file mtime $filename]
if {![info exists mhPriv(seqmtime,$folder)] || ($mtime != $mhPriv(seqmtime,$folder))} {
foreach elem [array names mhPriv] {
set indices [split $elem ,]
--- 479,485 ----
# Then read the public sequence
set mhPriv(changed,public) 0
set filename "$mhProfile(path)/$folder/$mhProfile(mh-sequences)"
! if {![catch {set mtime [file mtime $filename]}]} {
if {![info exists mhPriv(seqmtime,$folder)] || ($mtime != $mhPriv(seqmtime,$folder))} {
foreach elem [array names mhPriv] {
set indices [split $elem ,]
***************
*** 505,510 ****
--- 513,528 ----
set mhPriv(seqmtime,$folder) $mtime
}
}
+ } elseif {[info exists mhPriv(seqmtime,$folder)]} {
+ unset mhPriv(seqmtime,$folder)
+ foreach elem [array names mhPriv] {
+ set indices [split $elem ,]
+ if {[lindex $indices 0] == {pubseq}} {
+ if {[lindex $indices 1] == $folder} {
+ unset mhPriv($elem)
+ }
+ }
+ }
}
foreach elem [array names mhPriv] {
set indices [split $elem ,]
signature.asc
(application/pgp-signature, 224 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (SunOS) Comment: Exmh version 2.6.3 04/04/2003 iD8DBQFBPV3RJWLrSYxEfJMRAsfvAJ9OOfryLUzSZZRRN1+gV+nsIQpcyQCePNnn 3zrXMYUMXfV1MLqQ50t76YA= =suri -----END PGP SIGNATURE-----