Matt McCutchen's Web Site
/
rsync
/
rsync.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improved a --files-from example (as suggested by Paul).
[rsync/rsync.git]
/
match.c
diff --git
a/match.c
b/match.c
index
55c6d13
..
00a38aa
100644
(file)
--- a/
match.c
+++ b/
match.c
@@
-29,7
+29,7
@@
int updating_basis_file;
typedef unsigned short tag;
#define TABLESIZE (1<<16)
typedef unsigned short tag;
#define TABLESIZE (1<<16)
-#define NULL_TAG (
(size_t)
-1)
+#define NULL_TAG (-1)
static int false_alarms;
static int tag_hits;
static int false_alarms;
static int tag_hits;
@@
-44,12
+44,12
@@
extern struct stats stats;
struct target {
tag t;
struct target {
tag t;
-
size_t
i;
+
int32
i;
};
static struct target *targets;
};
static struct target *targets;
-static
size_t
*tag_table;
+static
int32
*tag_table;
#define gettag2(s1,s2) (((s1) + (s2)) & 0xFFFF)
#define gettag(sum) gettag2((sum)&0xFFFF,(sum)>>16)
#define gettag2(s1,s2) (((s1) + (s2)) & 0xFFFF)
#define gettag(sum) gettag2((sum)&0xFFFF,(sum)>>16)
@@
-62,10
+62,10
@@
static int compare_targets(struct target *t1,struct target *t2)
static void build_hash_table(struct sum_struct *s)
{
static void build_hash_table(struct sum_struct *s)
{
-
size_t
i;
+
int32
i;
if (!tag_table)
if (!tag_table)
- tag_table = new_array(
size_t
, TABLESIZE);
+ tag_table = new_array(
int32
, TABLESIZE);
targets = new_array(struct target, s->count);
if (!tag_table || !targets)
targets = new_array(struct target, s->count);
if (!tag_table || !targets)
@@
-102,7
+102,7
@@
static OFF_T last_match;
* have only literal data.
**/
static void matched(int f, struct sum_struct *s, struct map_struct *buf,
* have only literal data.
**/
static void matched(int f, struct sum_struct *s, struct map_struct *buf,
- OFF_T offset, int i)
+ OFF_T offset, int
32
i)
{
int32 n = offset - last_match; /* max value: block_size (int32) */
int32 j;
{
int32 n = offset - last_match; /* max value: block_size (int32) */
int32 j;
@@
-133,12
+133,8
@@
static void matched(int f, struct sum_struct *s, struct map_struct *buf,
else
last_match = offset;
else
last_match = offset;
- if (buf && do_progress)
{
+ if (buf && do_progress)
show_progress(last_match, buf->file_size);
show_progress(last_match, buf->file_size);
-
- if (i == -1)
- end_progress(buf->file_size);
- }
}
}
@@
-146,8
+142,7
@@
static void hash_search(int f,struct sum_struct *s,
struct map_struct *buf, OFF_T len)
{
OFF_T offset, end, backup;
struct map_struct *buf, OFF_T len)
{
OFF_T offset, end, backup;
- int32 k;
- size_t want_i;
+ int32 k, want_i;
char sum2[SUM_LENGTH];
uint32 s1, s2, sum;
int more;
char sum2[SUM_LENGTH];
uint32 s1, s2, sum;
int more;
@@
-184,7
+179,7
@@
static void hash_search(int f,struct sum_struct *s,
do {
tag t = gettag2(s1,s2);
int done_csum2 = 0;
do {
tag t = gettag2(s1,s2);
int done_csum2 = 0;
-
size_t
j = tag_table[t];
+
int32
j = tag_table[t];
if (verbose > 4)
rprintf(FINFO,"offset=%.0f sum=%08x\n",(double)offset,sum);
if (verbose > 4)
rprintf(FINFO,"offset=%.0f sum=%08x\n",(double)offset,sum);
@@
-195,8
+190,7
@@
static void hash_search(int f,struct sum_struct *s,
sum = (s1 & 0xffff) | (s2 << 16);
tag_hits++;
do {
sum = (s1 & 0xffff) | (s2 << 16);
tag_hits++;
do {
- int32 l;
- size_t i = targets[j].i;
+ int32 l, i = targets[j].i;
if (sum != s->sums[i].sum1)
continue;
if (sum != s->sums[i].sum1)
continue;
@@
-232,7
+226,7
@@
static void hash_search(int f,struct sum_struct *s,
* the following want_i optimization. */
if (updating_basis_file) {
do {
* the following want_i optimization. */
if (updating_basis_file) {
do {
-
size_t
i2 = targets[j].i;
+
int32
i2 = targets[j].i;
if (s->sums[i2].offset != offset)
continue;
if (i2 != i) {
if (s->sums[i2].offset != offset)
continue;
if (i2 != i) {