[alt.sources] REMIND 2.2 Patch.01

dfs@doe.carleton.ca (David F. Skoll) (11/22/90)

This is Patch 1 for remind version 2.2.  It fixes a serious bug; you
are strongly recommended to apply it.

Certain date specifications could cause remind to enter an infinite
loop; this patch fixes it.  It also corrects a couple of typos in
the man page.

Extract the file patch.01 from the shar into the remind source directory;
type "patch < patch.01" and then type make.

Thanks go to Dave Buck {aeras,amdahl,ardent,daver,netcom,sun,zygot}!dlb!dave
for this bug report and fix.
--
David Skoll

----------------- CUT HERE ------------------------
#!/bin/sh
# This is Remind-2.2-patch.01, a shell archive (shar 3.32)
# made 11/22/1990 15:44 UTC by dfs@scotty
# Source directory /enterprise/navigation/dfs/work/.rem/work
#
# existing files will NOT be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   2967 -rw------- patch.01
#
if touch 2>&1 | fgrep 'amc' > /dev/null
 then TOUCH=touch
 else TOUCH=true
fi
# ============= patch.01 ==============
if test X"$1" != X"-c" -a -f 'patch.01'; then
	echo "File already exists: skipping 'patch.01'"
else
echo "x - extracting patch.01 (Text)"
sed 's/^X//' << 'SHAR_EOF' > patch.01 &&
XPatch 01 - 22 November 1991
XFixes bug in nextdate.c which causes infinite looping.  Also
Xfixes some typos in the man pages.
X
XFix for nextdate.c courtesy Dave Buck, D.L. Buck and Associates, Inc.
XSan Jose, California.  Thanks Dave!
X
XFirst patch:  UPDATE THE PATCHLEVEL
X*** ../work-backup/init.c	Thu Nov 22 10:17:36 1990
X--- init.c	Thu Nov 22 10:21:10 1990
X***************
X*** 7,13 ****
X  #include "globals.h"
X  #include "protos.h"
X  
X! #define PATCHLEVEL 0
X  
X  static char DPMsg[] = "Debug and Purge options conflict - Purge chosen.\n";
X  static char DPCMsg[] = "Calendar overrides Debug and Purge options.\n";
X--- 7,13 ----
X  #include "globals.h"
X  #include "protos.h"
X  
X! #define PATCHLEVEL 1
X  
X  static char DPMsg[] = "Debug and Purge options conflict - Purge chosen.\n";
X  static char DPCMsg[] = "Calendar overrides Debug and Purge options.\n";
X
XSecond patch: FIX NEXTDATE.C
X*** ../work-backup/nextdate.c	Thu Nov 22 10:17:37 1990
X--- nextdate.c	Thu Nov 22 10:18:24 1990
X***************
X*** 212,218 ****
X  	 jul2 = Julian(d, m, y);
X  
X  	 /* Blip up to next valid year */
X! 	 while (conday > DaysInMonth(m, y)) y++;
X  
X  	 /* Try this year */
X  	 jul = Julian(conday, conmon, y);
X--- 212,218 ----
X  	 jul2 = Julian(d, m, y);
X  
X  	 /* Blip up to next valid year */
X! 	 while (conday > DaysInMonth(conmon, y)) y++;
X  
X  	 /* Try this year */
X  	 jul = Julian(conday, conmon, y);
X
XThird patch: FIX THE MAN PAGE.
X*** ../work-backup/remind.1	Thu Nov 22 10:17:38 1990
X--- remind.1	Thu Nov 22 10:20:41 1990
X***************
X*** 228,239 ****
X  consists of zero to four parts.  These parts are
X  .I day
X  (day of month),
X- 
X- 
X- 
X- 
X- 
X- 
X  .I month
X  (month name),
X  .I year
X--- 228,233 ----
X***************
X*** 605,611 ****
X  keyword, it checks the last-access date of the reminder file.  If it is
X  equal to the current date,
X  .B remind
X! assumes that the reminder file has already been run once, and ignored the
X  reminder.  If you start
X  .B remind
X  with the
X--- 599,605 ----
X  keyword, it checks the last-access date of the reminder file.  If it is
X  equal to the current date,
X  .B remind
X! assumes that the reminder file has already been run once, and ignores the
X  reminder.  If you start
X  .B remind
X  with the
X***************
X*** 1278,1289 ****
X  and the body of the message will be blank.
X  .PP
X  .nf
X! 	REM AT 17:00 RUN echo "5:00pm - GO HOME!" > /tmp/rem.$$; \\
X! 	xterm -g 80x25+0+0 -e view /tmp/rem.$$; rm -f /tmp/rem.$$
X  .fi
X  .PP
X! This reminder will pop up an xterm at 5:00pm every day.  The xterm
X! will execute view (read-only "vi") on a file which reads "5:00pm - GO HOME!"
X  .PP
X  .nf
X  	remind -c12 /dev/null 1 Jan 1991
X--- 1272,1282 ----
X  and the body of the message will be blank.
X  .PP
X  .nf
X! 	REM AT 17:00 RUN echo "5:00pm - GO HOME!" | xless -g +0+0
X  .fi
X  .PP
X! This reminder will pop up an xless window at 5:00pm every day.  The xless
X! window will contain the line "5:00pm - GO HOME!"
X  .PP
X  .nf
X  	remind -c12 /dev/null 1 Jan 1991
SHAR_EOF
$TOUCH -am 1122104590 patch.01 &&
chmod 0600 patch.01 ||
echo "restore of patch.01 failed"
set `wc -c patch.01`;Wc_c=$1
if test "$Wc_c" != "2967"; then
	echo original size 2967, current size $Wc_c
fi
fi
exit 0