- s->sums[i].sum1 = get_checksum1(map,n1);
- get_checksum2(map,n1,s->sums[i].sum2);
+ for (i = 0; i < count; i++) {
+ int n1 = MIN(len, n);
+ char *map = map_ptr(buf, offset, n1);
+
+ s->sums[i].sum1 = get_checksum1(map, n1);
+ get_checksum2(map, n1, s->sums[i].sum2);