dd: exit with 1 if last write was incomplete
$ busybox dd if=/dev/zero of=/dev/loop0 bs=100M count=8; echo $? 8+0 records in 7+1 records out 805220352 bytes (767.9MB) copied, 0.464010 seconds, 1.6GB/s 1 <=========== FIXED function old new delta write_and_stats 96 97 +1 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
		@@ -195,14 +195,16 @@ static bool write_and_stats(const void *buf, size_t len, size_t obs,
 | 
			
		||||
	ssize_t n = full_write_or_warn(buf, len, filename);
 | 
			
		||||
	if (n < 0)
 | 
			
		||||
		return 1;
 | 
			
		||||
	if ((size_t)n == obs)
 | 
			
		||||
		G.out_full++;
 | 
			
		||||
	else if (n) /* > 0 */
 | 
			
		||||
		G.out_part++;
 | 
			
		||||
#if ENABLE_FEATURE_DD_THIRD_STATUS_LINE
 | 
			
		||||
	G.total_bytes += n;
 | 
			
		||||
#endif
 | 
			
		||||
	return 0;
 | 
			
		||||
	if ((size_t)n == obs) {
 | 
			
		||||
		G.out_full++;
 | 
			
		||||
		return 0;
 | 
			
		||||
	}
 | 
			
		||||
	if (n) /* > 0 */
 | 
			
		||||
		G.out_part++;
 | 
			
		||||
	return 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#if ENABLE_LFS
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user