diff --git a/abuild-tar.c b/abuild-tar.c
index e4917741b4ab182dc8e93fff7e122e8fd217d1aa..f7dc421b20988d45cbc99b1030410bf10e47065e 100644
--- a/abuild-tar.c
+++ b/abuild-tar.c
@@ -115,6 +115,7 @@ static ssize_t full_read(int fd, void *buf, size_t count)
 		if (n <= 0)
 			break;
 		buf += n;
+		total += n;
 		count -= n;
 	} while (1);
 
@@ -136,6 +137,7 @@ static ssize_t full_write(int fd, const void *buf, size_t count)
 		if (n <= 0)
 			break;
 		buf += n;
+		total += n;
 		count -= n;
 	} while (1);