Re: mh.tcl bug report and hopefully identification.
Brent Welch <[email protected]>
| Newsgroups | gmane.mail.exmh.devel |
|---|---|
| Message-ID | <[email protected]> |
Hmm - this proposed fix doesn't make sense to me. However, your
stack trace implies that "seq" has the value 5278-5285, that that
variable is an input parameter and should be the name of a sequence.
I can't see where "seq" is changed by anything (at least in my code)
>>>Klaus Elsbernd said:
> As I mentioned earlier, I have trouble with constantly growing the
> .exmhcontext.
> While I often get tcl-debug-windows, and because it seemes that I only
> had
> those
> errors, I digged myself into the code of mh.tcl.
>
> When dealing with public sequences in Mh_SequenceUpdate (around line
> 616,
> mhPriv(pubseq,$folder,$seq) is set to
> the expanded list of the sequence, by calling MhSeqExpand using
> $seqs($seq).
> When dealing with private sequences, one can assume the same behavior.
> It happens often to me, that the call of MhSeqExpand using the same
> argument
> $seqs($seq) results in an unknown variable $seqs($seq).
>
> I replaced $seqs($seq) by only $seq, which seems to work, although it is
> clearly not indented.
> The log-output showed to me that my change succeded. I have no further
> debug-output on this subject.
>
> ================
> I suppose, if private and public sequences changes at the same time
> within handling the public sequence section, $seq will be rewritten
> (see some lines above) to an actual sequence and as the result, when
> dealing with private sequence will no more contain the name.
> perhaps one should rename the local variable within the public/private
> sections
> ================
>
>
> ***************
> *** 610,616 ****
> set mhPriv(changed,$which) 1
> }
> if {$mhPriv(changed,public) == 1} {
> ! set mhPriv(pubseq,$folder,$seq) [MhSeqExpand $folder
> $seqs($seq)]
> set filename $mhProfile(path)/$folder/$mhProfile(mh-sequences)
> if {[catch {open $filename.new w} out] == 0} {
> Exmh_Debug Writing $filename
> --- 615,625 ----
> set mhPriv(changed,$which) 1
> }
> if {$mhPriv(changed,public) == 1} {
> ! Exmh_Debug "mhPriv public changed $folder $seq"
> ! set thisseq [MhSeqExpand $folder $seqs($seq)]
> ! Exmh_Debug "set mhPriv to $thisseq"
> ! set mhPriv(pubseq,$folder,$seq) $thisseq
> set filename $mhProfile(path)/$folder/$mhProfile(mh-sequences)
> if {[catch {open $filename.new w} out] == 0} {
> Exmh_Debug Writing $filename
> ***************
> *** 641,647 ****
> }
> }
> if {$mhPriv(changed,private) == 1} {
> ! set mhPriv(privseq,$folder,$seq) [MhSeqExpand $folder
> $seqs($seq)]
> set filename $mhProfile(context)
> if {[catch {open $filename.new w} out] == 0} {
> Exmh_Debug Writing $filename
> --- 650,660 ----
> }
> }
> if {$mhPriv(changed,private) == 1} {
> ! Exmh_Debug "mhPriv private changed $folder $seq"
> ! set thisseq [MhSeqExpand $folder $seq ]
> ! Exmh_Debug "set mhPriv to $thisseq"
> ! set mhPriv(privseq,$folder,$seq) $thisseq
> set filename $mhProfile(context)
> if {[catch {open $filename.new w} out] == 0} {
> Exmh_Debug Writing $filename
>
> Bis dann
> Klaus
> debug-output of exmh 2.6
> can't read "seqs(5278-5285)": no such variable
> while executing
> "MhSeqExpand $folder $seqs($seq)"
> (procedure "Mh_SequenceUpdate" line 66)
> invoked from within
> "Mh_SequenceUpdate $folder del $seq $msgids"
> (procedure "Seq_Del" line 4)
> invoked from within
> "Seq_Del $exmh(folder) $mhProfile(unseen-sequence) $msgid "
> (procedure "FtocCommit" line 48)
> invoked from within
> "FtocCommit deleted $rmmCommit"
> (procedure "Ftoc_Commit" line 14)
> invoked from within
> "Ftoc_Commit $rmmCommit $moveCommit $copyCommit"
> (procedure "FolderCommit" line 4)
> invoked from within
> "FolderCommit Mh_Rmm Mh_Refile Mh_Copy"
> ("uplevel" body line 1)
> invoked from within
> "uplevel #0 $cmd"
> (procedure "busyCursorInner" line 8)
> invoked from within
> "busyCursorInner $cmd $widgets"
> (procedure "busyCursorHack" line 32)
> invoked from within
> "busyCursorHack $args"
> ("cursor" arm line 1)
> invoked from within
> "switch $busy(style) {
> icon {busyIcon $args}
> cursorAll {busyCursor $args}
> cursor {busyCursorHack $args}
> default {eval $args}
> }"
> (procedure "busy" line 3)
> invoked from within
> "busy FolderCommit $rmmCommit $moveCommit $copyCommit"
> (procedure "Folder_Commit" line 2)
> invoked from within
> "Folder_Commit"
> (command bound to event)
>
> --
> "Sure, vi is user friendly.
> It's just particular about who it makes friends with." ;-)
> _________________________
> Klaus Elsbernd; System Administrator, BOFH |
> [email protected]
> Deutsches Forschungsz. für Künstliche Intelligenz | DFKI GmbH, Geb.
> 57/285
> 67657 Kaiserslautern; Germany | Tel: (+49)
> 0631/205-3486
>
>
--
Brent Welch
Software Architect, Panasas Inc
Delivering the World's Most Scalable and Agile Storage Network
www.panasas.com
[email protected]