mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-31 05:54:26 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			32 lines
		
	
	
		
			890 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			890 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
| find: fix regression in status processing for path arguments
 | |
| 
 | |
| Regression added in commit 14158b4127dba30466c50147b868a6a89702960b
 | |
| "find: add optional support for '-exec ... {} +'"
 | |
| 
 | |
| This commit causes find to exit on the first path argument that was not
 | |
| found, which breaks existing scripts and is incompatible to other
 | |
| implementations.
 | |
| 
 | |
| Instead of exiting on the first failure, return EXIT_FAILURE at the end
 | |
| if any error occurred.
 | |
| 
 | |
| Signed-off-by: Felix Fietkau <nbd@openwrt.org>
 | |
| 
 | |
| --- a/findutils/find.c
 | |
| +++ b/findutils/find.c
 | |
| @@ -1460,12 +1460,10 @@ int find_main(int argc UNUSED_PARAM, cha
 | |
|  				NULL,           /* user data */
 | |
|  				0)              /* depth */
 | |
|  		) {
 | |
| -			status = EXIT_FAILURE;
 | |
| -			goto out;
 | |
| +			status |= EXIT_FAILURE;
 | |
|  		}
 | |
|  	}
 | |
|  
 | |
| -	IF_FEATURE_FIND_EXEC_PLUS(status = flush_exec_plus();)
 | |
| -out:
 | |
| +	IF_FEATURE_FIND_EXEC_PLUS(status |= flush_exec_plus();)
 | |
|  	return status;
 | |
|  }
 |