78 lines
2.6 KiB
Diff
78 lines
2.6 KiB
Diff
|
diff -urb duperemove-0.11a/csum-xxhash.c duperemove-0.11b/csum-xxhash.c
|
||
|
--- duperemove-0.11a/csum-xxhash.c 2018-05-15 20:47:26.000000000 +0100
|
||
|
+++ duperemove-0.11b/csum-xxhash.c 2018-09-10 11:11:17.768921930 +0100
|
||
|
@@ -43,7 +43,7 @@
|
||
|
}
|
||
|
|
||
|
struct xxhash_running_checksum {
|
||
|
- XXH64_state_t td64;
|
||
|
+ XXH64_state_t *td64;
|
||
|
};
|
||
|
DECLARE_RUNNING_CSUM_CAST_FUNCS(xxhash_running_checksum);
|
||
|
|
||
|
@@ -51,7 +51,8 @@
|
||
|
{
|
||
|
struct xxhash_running_checksum *c =
|
||
|
calloc(1, sizeof(struct xxhash_running_checksum));
|
||
|
- XXH64_reset(&c->td64, 0);
|
||
|
+ c->td64 = XXH64_createState();
|
||
|
+ XXH64_reset(c->td64, 0);
|
||
|
return priv_to_rc(c);
|
||
|
}
|
||
|
|
||
|
@@ -59,7 +60,7 @@
|
||
|
unsigned int len, unsigned char *buf)
|
||
|
{
|
||
|
struct xxhash_running_checksum *c = rc_to_priv(_c);
|
||
|
- XXH64_update(&c->td64, buf, len);
|
||
|
+ XXH64_update(c->td64, buf, len);
|
||
|
}
|
||
|
|
||
|
static void xxhash_finish_running_checksum(struct running_checksum *_c,
|
||
|
@@ -68,7 +69,8 @@
|
||
|
struct xxhash_running_checksum *c = rc_to_priv(_c);
|
||
|
unsigned long long *hash = (unsigned long long*)digest;
|
||
|
|
||
|
- *hash = XXH64_digest(&c->td64);
|
||
|
+ *hash = XXH64_digest(c->td64);
|
||
|
+ XXH64_freeState(c->td64);
|
||
|
free(c);
|
||
|
}
|
||
|
|
||
|
diff -urb duperemove-0.11a/Makefile duperemove-0.11b/Makefile
|
||
|
--- duperemove-0.11a/Makefile 2018-05-15 20:47:26.000000000 +0100
|
||
|
+++ duperemove-0.11b/Makefile 2018-09-10 11:09:11.808519081 +0100
|
||
|
@@ -8,13 +8,13 @@
|
||
|
|
||
|
HEADERS=csum.h hash-tree.h results-tree.h kernel.h list.h rbtree.h dedupe.h \
|
||
|
btrfs-ioctl.h filerec.h btrfs-util.h debug.h util.h \
|
||
|
- memstats.h file_scan.h find_dupes.h run_dedupe.h xxhash.h \
|
||
|
+ memstats.h file_scan.h find_dupes.h run_dedupe.h \
|
||
|
bswap.h dbfile.h interval_tree.h interval_tree_generic.h \
|
||
|
rbtree_augmented.h list_sort.h stats.h
|
||
|
CFILES=duperemove.c hash-tree.c results-tree.c rbtree.c dedupe.c filerec.c \
|
||
|
btrfs-util.c util.c memstats.c file_scan.c find_dupes.c run_dedupe.c \
|
||
|
csum.c dbfile.c interval_tree.c list_sort.c stats.c debug.c
|
||
|
-hash_CFILES=csum-xxhash.c xxhash.c csum-murmur3.c
|
||
|
+hash_CFILES=csum-xxhash.c csum-murmur3.c
|
||
|
|
||
|
CFILES += $(hash_CFILES)
|
||
|
|
||
|
@@ -24,7 +24,7 @@
|
||
|
|
||
|
DIST_CFILES:=$(CFILES) $(hashstats_CFILES) $(btrfs_extent_same_CFILES) \
|
||
|
$(csum_test_CFILES)
|
||
|
-DIST_SOURCES:=$(DIST_CFILES) $(HEADERS) LICENSE LICENSE.xxhash Makefile \
|
||
|
+DIST_SOURCES:=$(DIST_CFILES) $(HEADERS) LICENSE Makefile \
|
||
|
rbtree.txt README.md $(MANPAGES) SubmittingPatches docs/duperemove.html
|
||
|
DIST=duperemove-$(VER)
|
||
|
DIST_TARBALL=$(RELEASE).tar.gz
|
||
|
@@ -45,6 +45,7 @@
|
||
|
glib_LIBS=$(shell pkg-config --libs glib-2.0)
|
||
|
sqlite_CFLAGS=$(shell pkg-config --cflags sqlite3)
|
||
|
sqlite_LIBS=$(shell pkg-config --libs sqlite3)
|
||
|
+hash_LIBS=-lxxhash
|
||
|
|
||
|
ifdef DEBUG
|
||
|
DEBUG_FLAGS = -ggdb3 -fsanitize=address -fno-omit-frame-pointer \
|