main shrub/shrubtools / shared / byte_diff.c
 1/* Public domain. */
 2
 3#include "byte.h"
 4
 5int byte_diff(s,n,t)
 6register char *s;
 7register unsigned int n;
 8register char *t;
 9{
10  for (;;) {
11    if (!n) return 0; if (*s != *t) break; ++s; ++t; --n;
12    if (!n) return 0; if (*s != *t) break; ++s; ++t; --n;
13    if (!n) return 0; if (*s != *t) break; ++s; ++t; --n;
14    if (!n) return 0; if (*s != *t) break; ++s; ++t; --n;
15  }
16  return ((int)(unsigned int)(unsigned char) *s)
17       - ((int)(unsigned int)(unsigned char) *t);
18}