Refactor enmasse() and recurse() to reflect depth
The HLP-changes to sbase have been a great addition of functionality, but they kind of "polluted" the enmasse() and recurse() prototypes. As this will come in handy in the future, knowing at which "depth" you are inside a recursing function is an important functionality. Instead of having a special HLP-flag passed to enmasse, each sub- function needs to provide it on its own and can calculate results based on the current depth (for instance, 'H' implies 'P' at depth > 0). A special case is recurse(), because it actually depends on the follow-type. A new flag "recurse_follow" brings consistency into what used to be spread across different naming conventions (fflag, HLP_flag, ...). This also fixes numerous bugs with the behaviour of HLP in the tools using it.
This commit is contained in:
		
							
								
								
									
										5
									
								
								util.h
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								util.h
									
									
									
									
									
								
							| @@ -56,12 +56,13 @@ int enregcomp(int, regex_t *, const char *, int); | ||||
| int eregcomp(regex_t *, const char *, int); | ||||
|  | ||||
| /* misc */ | ||||
| void enmasse(int, char **, int (*)(const char *, const char *, char), char); | ||||
| void fnck(const char *, const char *, int (*)(const char *, const char *, char), char); | ||||
| void enmasse(int, char **, int (*)(const char *, const char *, int)); | ||||
| void fnck(const char *, const char *, int (*)(const char *, const char *, int), int); | ||||
| mode_t getumask(void); | ||||
| char *humansize(double); | ||||
| mode_t parsemode(const char *, mode_t, mode_t); | ||||
| void putword(const char *); | ||||
| extern int recurse_follow; | ||||
| void recurse(const char *, void (*)(const char *, int), int); | ||||
| #undef strtonum | ||||
| long long strtonum(const char *, long long, long long, const char **); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user