An elm patch (fixes elm for Microport SysV/AT)
Dominick Samperi
samperi at mancol.UUCP
Mon Feb 8 17:54:28 AEST 1988
After applying Chip Sulzenburg's SCO/Xenix patches to the source for
elm 1.7 beta, the resulting elm compiled and ran under Microport's
System V/AT (286 version)...almost. An attempt to send mail when the
sender's mailbox is emptry results in a segmentation violation. sdb
shows that the error occurs in the function create_readmsg_file(),
where a reference to header_table[current-1] is made, when current=0.
The patch below will make a small change to mailmsg2.c so that
create_readmsg_file() is called only when current > 0, and this seems
to have fixed the problem.
I guess the reason this bug does not show up on other systems is
that they do not catch the illegal array reference (or pointer
dereference).
Note: I have not studied the elm code in detail, so I cannot guarantee
that this fix will not have undesirable side effects, but I doubt that
it will.
Here is the patch, in the form of a context diff:
*** mailmsg2.c Mon Feb 8 01:55:13 1988
--- ../mailmsg2.c Mon Feb 8 01:54:35 1988
***************
*** 147,153
/** Edit the message **/
! if (edit_message)
create_readmsg_file(); /* for "readmsg" routine */
ch = edit_message? 'e' : ' '; /* drop through if needed... */
--- 147,153 -----
/** Edit the message **/
! if (edit_message && current > 0)
create_readmsg_file(); /* for "readmsg" routine */
ch = edit_message? 'e' : ' '; /* drop through if needed... */
--
Dominick Samperi, Manhattan College, NYC
manhat!samperi at NYU.EDU
ihnp4!cmcl2!manhat!samperi (that's an ell in cmcl2)
More information about the Comp.unix.xenix
mailing list