Trn patch #3

Wayne Davison davison at borland.com
Thu Jun 27 10:41:14 AEST 1991


Here's a short patch for trn v1.0.2 that fixes the following problems:

   o	dont_read_data() needs the ANSI() prototype wrapper -- most people
	fixed this manually already, so TAKE CARE not to uninstall it!
   o	mthreads tried to use %s to output a number in the severe_handler.
   o	changed my address to make it current.
   o	fixed mthreads to not update active2 if the directory entry is missing.
   o	uuencoded files with both a cut line and a table entry wouldn't
	unpack.
   o	the pointer extractprog won't be freed multiple times now.
   o	fixed the thread selector's screen updating when no screen clearing
	is allowed (-l option).
   o	twiddled mt.check a bit.

A version of trn based on the up-coming rn 4.4 will be released in a couple
months.  That version of mthreads will have much better error handling for
corrupt thread files.  If your site is experiencing frequent interrupt 10/11
haltings and you'd like to be a beta site, please contact me (my site never
has such problems).
-- 
 \  /| / /|\/ /| /(_)     Wayne Davison
(_)/ |/ /\|/ / |/  \      davison at borland.com
   (W   A  Y   N   e)
---8<------8<------8<------8<---cut here--->8------>8------>8------>8---
Index: patchlevel
Prereq: v1.0.2
***************
*** 1 ****
! Trn v1.0.2
--- 1 ----
! Trn v1.0.3
Index: README
***************
*** 156,160 ****
  
  9)  IMPORTANT!  Help save the world!  Communicate any problems and suggested
!     patches to davison at dri.com (...!uunet!drivax!davison) so we can keep
      everyone in sync.  If you have a problem, there's someone else
      out there who either has had or will have the same problem.  Please
--- 156,160 ----
  
  9)  IMPORTANT!  Help save the world!  Communicate any problems and suggested
!     patches to Wayne Davison (davison at borland.com) so we can keep
      everyone in sync.  If you have a problem, there's someone else
      out there who either has had or will have the same problem.  Please
Index: mt.check.SH
***************
*** 44,51 ****
  Subject: mthreads error!
  
! The following errors were reported in mt.log.  Please report this fact
! to Wayne Davison (davison at dri.com or ...!uunet!drivax!davison) for his
! attention.  The affected newsgroups can't be updated until this bug is
! fixed, or the offending articles are expired.
  
  EOT
--- 44,49 ----
  Subject: mthreads error!
  
! The following errors were reported in mt.log.  If they persist, please
! report this fact to Wayne Davison (davison at borland.com).
  
  EOT
***************
*** 53,62 ****
  fi
  
! mv mt.log.6 mt.log.7
! mv mt.log.5 mt.log.6
! mv mt.log.4 mt.log.5
! mv mt.log.3 mt.log.4
! mv mt.log.2 mt.log.3
! mv mt.log   mt.log.2
  touch mt.log
  
--- 51,60 ----
  fi
  
! test -f mt.log.6 && mv mt.log.6 mt.log.7
! test -f mt.log.5 && mv mt.log.5 mt.log.6
! test -f mt.log.4 && mv mt.log.4 mt.log.5
! test -f mt.log.3 && mv mt.log.3 mt.log.4
! test -f mt.log.2 && mv mt.log.2 mt.log.3
! test -f mt.log   && mv mt.log   mt.log.2
  touch mt.log
  
Index: mthreads.1
***************
*** 302,304 ****
  Lots of thread data files.
  .SH AUTHOR
! Wayne Davison <davison at dri.com> <uunet!drivax!davison>
--- 302,304 ----
  Lots of thread data files.
  .SH AUTHOR
! Wayne Davison <davison at borland.com>
Index: mthreads.c
***************
*** 493,497 ****
      /* Re-open our log file, if needed */
      if( fp_log || (fp_log = fopen( file_exp( "%X/mt.log" ), "a" )) ) {
! 	log_error( "** Severe signal: %s **\n", sig );
  	if( zap_thread ) {
  	    log_entry( "Destroyed thread file for %s\n", line );
--- 493,497 ----
      /* Re-open our log file, if needed */
      if( fp_log || (fp_log = fopen( file_exp( "%X/mt.log" ), "a" )) ) {
! 	log_error( "** Severe signal: %d **\n", sig );
  	if( zap_thread ) {
  	    log_entry( "Destroyed thread file for %s\n", line );
***************
*** 499,503 ****
      }
      if( !daemon_delay ) {
! 	printf( "Severe signal: %s!\n", sig);
  	if( zap_thread ) {
  	    printf( "Destroyed thread file for %s\n", line );
--- 499,503 ----
      }
      if( !daemon_delay ) {
! 	printf( "Severe signal: %d!\n", sig);
  	if( zap_thread ) {
  	    printf( "Destroyed thread file for %s\n", line );
***************
*** 799,804 ****
  		if (errno != ENOENT) {
  		    log_entry( "Unable to chdir to `%s'.\n", filename );
- 		} else {
- 		    update_successful = TRUE;
  		}
  #endif
--- 799,802 ----
Index: mthreads.h
***************
*** 59,63 ****
  int read_data ANSI((void));
  int write_data ANSI((char *));
! void dont_read_data(int);
  
  void process_articles ANSI((ART_NUM,ART_NUM));
--- 59,63 ----
  int read_data ANSI((void));
  int write_data ANSI((char *));
! void dont_read_data ANSI((int));
  
  void process_articles ANSI((ART_NUM,ART_NUM));
Index: newsnews.SH
***************
*** 24,28 ****
  will again be displayed, just once for each person.
  
! Wayne Davison	davison at dri.com
  !GROK!THIS!
  $eunicefix newsnews
--- 24,28 ----
  will again be displayed, just once for each person.
  
! Wayne Davison	davison at borland.com
  !GROK!THIS!
  $eunicefix newsnews
Index: respond.c
***************
*** 107,112 ****
  	safecpy(altbuf,filexp(s),sizeof altbuf);
  	s = altbuf;
! 	if (extractprog)
  	    free(extractprog);
  	if (*s) {
  	    cmdstr = cpytill(buf,s,'|');	/* check for | */
--- 107,114 ----
  	safecpy(altbuf,filexp(s),sizeof altbuf);
  	s = altbuf;
! 	if (extractprog) {
  	    free(extractprog);
+ 	    extractprog = Nullch;
+ 	}
  	if (*s) {
  	    cmdstr = cpytill(buf,s,'|');	/* check for | */
***************
*** 203,206 ****
--- 205,209 ----
  		if (!cmdstr
  		 && (strnEQ(art_buf,"table ", 6)
+ 		  || strnEQ(art_buf,"table\n", 6)
  		  || strnEQ(art_buf,"begin ", 6))) {
  		 uu_decode:
Index: rn.c
***************
*** 10,17 ****
  */
  
! static char rnid[] = "@(#)$Header: rn.c,v 4.3.3.3 91/01/16 03:28:42 davison Trn $";
! static char patchlevel[] = "Trn v1.0.2 based on Rn patchlevel 54";
  
  /* $Log:	rn.c,v $
   * Revision 4.3.3.3  91/01/16  03:28:42  davison
   * Integrated rn patches 48-54.  Fixed in_char and verify interaction.
--- 10,20 ----
  */
  
! static char rnid[] = "@(#)$Header: rn.c,v 4.3.3.4 91/06/26 02:25:34 davison Trn $";
! static char patchlevel[] = "Trn v1.0.3 based on Rn patchlevel 54";
  
  /* $Log:	rn.c,v $
+  * Revision 4.3.3.4  91/06/26  02:25:34  davison
+  * Misc. fixes for minor problems.
+  * 
   * Revision 4.3.3.3  91/01/16  03:28:42  davison
   * Integrated rn patches 48-54.  Fixed in_char and verify interaction.
***************
*** 566,570 ****
  		    printf("\n%s",rnid);
  		    printf("\n%s",patchlevel);
! 		    printf("\nSend bugs to davison at dri.com (...!uunet!drivax!davison)\n") FLUSH;
  		    goto reask_newsgroup;
  		default:
--- 569,573 ----
  		    printf("\n%s",rnid);
  		    printf("\n%s",patchlevel);
! 		    printf("\nSend bugs to davison at borland.com\n") FLUSH;
  		    goto reask_newsgroup;
  		default:
Index: term.c
***************
*** 1145,1149 ****
  	return;
      }
!     if (*CM) {
  	cmcost = strlen(str = tgoto(CM,0,to));
      } else {
--- 1145,1149 ----
  	return;
      }
!     if (*CM && !muck_up_clear) {
  	cmcost = strlen(str = tgoto(CM,0,to));
      } else {
Index: trn.1
***************
*** 2216,2220 ****
  and is now under the direction of Stan Barber <sob at bcm.tmc.edu>.
  .br
! Threaded version by Wayne Davison <davison at dri.com>
  .br
  (Mail all bug reports for trn to Wayne.)
--- 2216,2220 ----
  and is now under the direction of Stan Barber <sob at bcm.tmc.edu>.
  .br
! Threaded version by Wayne Davison <davison at borland.com>
  .br
  (Mail all bug reports for trn to Wayne.)
---8<------8<------8<------8<---cut here--->8------>8------>8------>8---



More information about the Comp.sources.bugs mailing list