return 0;
/* if always checksum is set then we use the checksum instead
+--- old/main.c
++++ new/main.c
+@@ -110,7 +110,7 @@ pid_t wait_process(pid_t pid, int *statu
+ }
+
+ /* Wait for a process to exit, calling io_flush while waiting. */
+-static void wait_process_with_flush(pid_t pid, int *exit_code_ptr)
++void wait_process_with_flush(pid_t pid, int *exit_code_ptr)
+ {
+ pid_t waited_pid;
+ int status;
--- old/options.c
+++ new/options.c
@@ -99,6 +99,7 @@ int keep_partial = 0;
+ if (dest_filter) {
+ int status;
-+ wait_process(pid, &status);
++ wait_process_with_flush(pid, &status);
+ if (status != 0) {
+ rprintf(FERROR, "filter %s exited code: %d\n",
+ dest_filter, status);
+ pid_t pid = run_filter_on_file(filter_argv, fd2, fd);
+ close(fd);
+ close(fd2);
-+ wait_process(pid, &status);
++ wait_process_with_flush(pid, &status);
+ if (status != 0) {
+ rprintf(FERROR,
+ "bypassing source filter %s; exited with code: %d\n",