Use new stringjoin() function.
diff --git a/batch.c b/batch.c
index 632c607..456bbb9 100644
--- a/batch.c
+++ b/batch.c
@@ -29,8 +29,8 @@
 	int i, f, save_pv;
 	int64 save_written;
 
-	i = strlcpy(filename, batch_prefix, sizeof filename);
-	strlcpy(filename + i, rsync_flist_file, sizeof filename - i);
+	stringjoin(filename, sizeof filename,
+		   batch_prefix, rsync_flist_file, NULL);
 
 	f = do_open(filename, O_WRONLY|O_CREAT|O_TRUNC, S_IREAD|S_IWRITE);
 	if (f < 0) {
@@ -64,8 +64,8 @@
 	char buff2[MAXPATHLEN + 6];
 	char filename[MAXPATHLEN];
 
-	i = strlcpy(filename, batch_prefix, sizeof filename);
-	strlcpy(filename+i, rsync_argvs_file, sizeof filename - i);
+	stringjoin(filename, sizeof filename,
+		   batch_prefix, rsync_argvs_file, NULL);
 
 	f = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC,
 		    S_IREAD | S_IWRITE | S_IEXEC);
@@ -124,8 +124,8 @@
 	int i, f, save_pv;
 	int64 save_read;
 
-	i = strlcpy(filename, batch_prefix, sizeof filename);
-	strlcpy(filename + i, rsync_flist_file, sizeof filename - i);
+	stringjoin(filename, sizeof filename,
+		   batch_prefix, rsync_flist_file, NULL);
 
 	f = do_open(filename, O_RDONLY, 0);
 	if (f < 0) {
@@ -193,8 +193,8 @@
 	char filename[MAXPATHLEN];
 
 	if (f_csums < 0) {
-		int n = strlcpy(filename, batch_prefix, sizeof filename);
-		strlcpy(filename + n, rsync_csums_file, sizeof filename - n);
+		stringjoin(filename, sizeof filename,
+			   batch_prefix, rsync_csums_file, NULL);
 
 		f_csums = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC,
 				  S_IREAD | S_IWRITE);
@@ -242,8 +242,8 @@
 	char filename[MAXPATHLEN];
 
 	if (f_csums < 0) {
-		int n = strlcpy(filename, batch_prefix, sizeof filename);
-		strlcpy(filename + n, rsync_csums_file, sizeof filename - n);
+		stringjoin(filename, sizeof filename,
+			   batch_prefix, rsync_csums_file, NULL);
 
 		f_csums = do_open(filename, O_RDONLY, 0);
 		if (f_csums < 0) {
@@ -284,8 +284,8 @@
 	char filename[MAXPATHLEN];
 
 	if (f_delta < 0) {
-		int n = strlcpy(filename, batch_prefix, sizeof filename);
-		strlcpy(filename + n, rsync_delta_file, sizeof filename - n);
+		stringjoin(filename, sizeof filename,
+			   batch_prefix, rsync_delta_file, NULL);
 
 		f_delta = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC,
 				  S_IREAD | S_IWRITE);
@@ -316,8 +316,8 @@
 	char filename[MAXPATHLEN];
 
 	if (f_delta < 0) {
-		int n = strlcpy(filename, batch_prefix, sizeof filename);
-		strlcpy(filename + n, rsync_delta_file, sizeof filename - n);
+		stringjoin(filename, sizeof filename,
+			   batch_prefix, rsync_delta_file, NULL);
 
 		f_delta = do_open(filename, O_RDONLY, 0);
 		if (f_delta < 0) {