allbery@NCoast.ORG (Brandon S. Allbery) (10/15/89)
I have never had much luck making vmh work under System III or System V; for the most part, this hasn't bothered me because I prefer the shell command interface to MH. However, I now have a co-worker who would like to learn MH without losing access to his mail from other mailers if he manages to get confused or etc. while I'm not around, so msh and/or vmh on his maildrop look like the best action. (Msh seems to work fine for this.) Anyway, has anyone ever figured out why vmh doesn't handle its line buffers correctly on USG systems? Under System III I used a hack which got the line buffers allocated, but reverse scrolling screwed things up royally. I'd prefer a working solution this time. Any suggestions? Thanks in advance, ++Brandon -- Brandon S. Allbery, moderator of comp.sources.misc allbery@NCoast.ORG uunet!hal.cwru.edu!ncoast!allbery ncoast!allbery@hal.cwru.edu bsa@telotech.uucp 161-7070 (MCI), ALLBERY (Delphi), B.ALLBERY (GEnie), comp-sources-misc@backbone [comp.sources.misc-related mail should go ONLY to comp-sources-misc@<backbone>] *Third party vote-collection service: send mail to allbery@uunet.uu.net (ONLY)*
gregg@cbnewsc.ATT.COM (gregg.g.wonderly) (10/18/89)
From article <1989Oct14.222507.25123@NCoast.ORG>, by allbery@NCoast.ORG (Brandon S. Allbery): > I have never had much luck making vmh work under System III or System V; for > the most part, this hasn't bothered me because I prefer the shell command > interface to MH. However, I now have a co-worker who would like to learn MH > without losing access to his mail from other mailers if he manages to get > confused or etc. while I'm not around, so msh and/or vmh on his maildrop look > like the best action. (Msh seems to work fine for this.) > > Anyway, has anyone ever figured out why vmh doesn't handle its line buffers > correctly on USG systems? Under System III I used a hack which got the line > buffers allocated, but reverse scrolling screwed things up royally. I'd > prefer a working solution this time. Any suggestions? There are two things wrong with vmh on system 5. I have not fixed the second one yet. First is its use of (char *)sprintf() which is really (int)sprintf() under system 5. The guilty code is somthing like bp = buffer; while (something) { bp += strlen (sprint (bp, format, x,y,z)); do somthing else } The other thing is the use of the curses line buffers as you indicated. The code expects that the curses line buffers are arrays of characters when in reality they are arrays of shorts. All through the code there is calls to waddstr with the linebuffer passed as an argument directly. There are also things like w->_colx = bp - buffer; which to work should be w->_colx = (unsigned) (bp - buffer) / 2; to even have a chance of working. There is so much to fix here that I have really been discourged about doing it. -- ----- gregg.g.wonderly@att.com (AT&T bell laboratories)