rem: p[i] ^= ((unsigned char const *) buf)[i]; buf = (char const *) buf + avail;
add: p[i] ^= buf[i]; buf += avail;
context: isaac_seed_data (struct isaac_state *s, void const *buf, size_t size){  unsigned char *p;  size_t avail;  size_t i;  avail = sizeof s->mm - (size_t) s->c;	/* s->c is used as a write pointer */  /* Do any full buffers that are necessary */  while (size > avail)    {      p = (unsigned char *) s->mm + s->c;      for (i = 0; i < avail; i++)	p[i] ^= ((unsigned char const *) buf)[i];      buf = (char const *) buf + avail;      size -= avail;      isaac_mix (s, s->mm);      s->c = 0;      avail = sizeof s->mm;    }  /* And the final partial block */  p = (unsigned char *) s->mm + s->c;  for (i = 0; i < size; i++)    p[i] ^= ((unsigned char const *) buf)[i];  s->c = (word32) size;}