[net.sources.bugs] Rn bug patch #11

jonab@sdcrdcf.UUCP (Jonathan Biggar) (11/17/84)

System: rn version 4.1
Bug #: 11
Priority: MEDIUM
Subject: R and F may not include article.
Index: respond.c
Prereq: 4.1
From: scw@cepu.UUCP (Stephen C. Woods)

Description:
	On machines where sizeof(int) != sizeof(long), rn won't include the
	old article with the R or F commands.  The problem is that [fl]seek
	requires that it's second argument (offset) be a long, but
	htype[PAST_HEADER].ht_mispos is defined as a short (for pdp-11s).

Repeat-By:
	Use the R or F command, and see if the old article is included into
	the header file generated by rn.

Fix:	From rn, say "| patch -d DIR", where DIR is your rn source directory.
	Outside of rn, say "cd DIR; patch <thisarticle".  If you don't have
	the patch program, apply the following by hand, or get patch.

*** /tmp/,RCSt1015892	Fri Oct 12 15:52:52 1984
--- /tmp/,RCSt2015892	Fri Oct 12 15:52:57 1984
***************
*** 1,4
! /* $Header: respond.c,v 4.1 84/09/24 12:06:33 lwall Exp $
   *
   * $Log:	respond.c,v $
   * Revision 4.1  84/09/24  12:06:33  lwall

--- 1,4 -----
! /* $Header: respond.c,v 4.1.1.2 84/10/12 15:52:07 lwall Exp $
   *
   * $Log:	respond.c,v $
   * Revision 4.1.1.2  84/10/12  15:52:07  lwall
***************
*** 1,6
  /* $Header: respond.c,v 4.1 84/09/24 12:06:33 lwall Exp $
   *
   * $Log:	respond.c,v $
   * Revision 4.1  84/09/24  12:06:33  lwall
   * Real baseline.
   * 

--- 1,12 -----
  /* $Header: respond.c,v 4.1.1.2 84/10/12 15:52:07 lwall Exp $
   *
   * $Log:	respond.c,v $
+  * Revision 4.1.1.2  84/10/12  15:52:07  lwall
+  * Made sure fseek()s got (long) as second argument.
+  * 
+  * Revision 4.1.1.1  84/09/25  13:25:56  lwall
+  * Branch for sdcrdcf changes.
+  * 
   * Revision 4.1  84/09/24  12:06:33  lwall
   * Real baseline.
   * 
***************
*** 331,337
  #ifdef ASYNC_PARSE
  	parse_maybe(art);
  #endif
! 	fseek(artfp,htype[PAST_HEADER].ht_minpos,0);
  	while (fgets(buf,LBUFLEN,artfp) != Nullch) {
  	    fprintf(tmpfp,"%s%s",indstr,buf);
  	}

--- 337,343 -----
  #ifdef ASYNC_PARSE
  	parse_maybe(art);
  #endif
! 	fseek(artfp,(long)htype[PAST_HEADER].ht_minpos,0);
  	while (fgets(buf,LBUFLEN,artfp) != Nullch) {
  	    fprintf(tmpfp,"%s%s",indstr,buf);
  	}
***************
*** 376,382
  #ifdef ASYNC_PARSE
  	parse_maybe(art);
  #endif
! 	fseek(artfp,htype[PAST_HEADER].ht_minpos,0);
  	while (fgets(buf,LBUFLEN,artfp) != Nullch) {
  	    fprintf(tmpfp,"%s%s",indstr,buf);
  	}

--- 382,388 -----
  #ifdef ASYNC_PARSE
  	parse_maybe(art);
  #endif
! 	fseek(artfp,(long)htype[PAST_HEADER].ht_minpos,0);
  	while (fgets(buf,LBUFLEN,artfp) != Nullch) {
  	    fprintf(tmpfp,"%s%s",indstr,buf);
  	}