rem: nfree = output_blocksize - oc; if (nfree > nread) nfree = nread;
add: size_t nfree = MIN (nread, output_blocksize - oc);
context: copy_simple (char const *buf, int nread){  int nfree;			/* Number of unused bytes in `obuf'.  */  const char *start = buf;	/* First uncopied char in BUF.  */  do    {      nfree = output_blocksize - oc;      if (nfree > nread)	nfree = nread;      memcpy (obuf + oc, start, nfree);      nread -= nfree;		/* Update the number of bytes left to copy. */      start += nfree;      oc += nfree;      if (oc >= output_blocksize)	write_output ();    }  while (nread > 0);}