I use the packf command to save archives of my old email, and then I
use the msh command to view messages from my archives.  In mh, this
worked ok.  With nmh-1.0.4, the show command is currently broken inside
msh.  I've tracked down the problem to the if statement
that begins at line 2386 in mshcmds.c (the showcmd subroutine).
Here is what the code looks like:

    if (!nshow && !getenv ("NOMHNPROC")) 
        for (msgnum = mp->lowsel; msgnum <= mp->hghsel; msgnum++) 
            if (is_selected (mp, msgnum) && is_nontext (msgnum)) { 
                proc = showmimeproc; 
                vec[vecp++] = "-show"; 
                vec[vecp++] = "-file"; 
                vec[vecp] = NULL; 
                goto finish; 
            } 


The showmimeproc variable is set to "/usr/local/bin/mhshow", and
the problem is that the mhshow command does not accept the "-show"
argument, so the command fails.  I looked at the same code in 
mh-6.8.3, and it looked like:

    if (!nshow && !getenv ("NOMHNPROC")) 
        for (msgnum = mp -> lowsel; msgnum <= mp -> hghsel; msgnum++) 
            if ((mp -> msgstats[msgnum] & SELECTED) && nontext (msgnum)) { 
                proc = (cp = m_find ("mhnproc")) ? cp : "mhn"; 
                vec[vecp++] = "-show"; 
                vec[vecp++] = "-file"; 
                vec[vecp] = NULL; 
                goto finish; 
            } 

This worked because the mhn command does accept the -show option.
Any ideas why this was changed, and what the correct fix is?

Thanks

Alec

Reply via email to