use libio
This commit is contained in:
		
							parent
							
								
									4eb64cdc5a
								
							
						
					
					
						commit
						0f7c7985ba
					
				
							
								
								
									
										22
									
								
								src/sleep.c
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								src/sleep.c
									
									
									
									
									
								
							@ -1,20 +1,26 @@
 | 
				
			|||||||
 | 
					#include <ctype.h> /* isdigit(3) */
 | 
				
			||||||
#include <stdlib.h> /* atoi(3) */
 | 
					#include <stdlib.h> /* atoi(3) */
 | 
				
			||||||
#include <sysexits.h> /* EX_USAGE */
 | 
					#include <sysexits.h> /* EX_USAGE */
 | 
				
			||||||
#include <unistd.h> /* sleep(3) */
 | 
					#include <unistd.h> /* sleep(3) */
 | 
				
			||||||
#include "libstris.h" /* stris(3) */
 | 
					#include "libio.h"
 | 
				
			||||||
#include "noargvzero.h"
 | 
					
 | 
				
			||||||
 | 
					static char *program_name = "sleep";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int main(int argc, char **argv){
 | 
					int main(int argc, char **argv){
 | 
				
			||||||
	int s;
 | 
						int s;
 | 
				
			||||||
	NOARGVZERO(argv);
 | 
						if(argc != 2){
 | 
				
			||||||
	if(argc != 2 || !stris(STRIS_TYPE_INT, argv[1])){
 | 
					usage:		write(2, "Usage: ", 7);
 | 
				
			||||||
		write(2, "Usage: ", 7);
 | 
							if(argv[0] == NULL)
 | 
				
			||||||
		for(s = 0; argv[0][s] != '\0'; ++s);
 | 
								argv[0] = program_name;
 | 
				
			||||||
		write(2, argv[0], s);
 | 
							fdprint(2, argv[0]);
 | 
				
			||||||
		write(2, " [seconds]\n", 11);
 | 
							write(2, " [seconds]\n", 11);
 | 
				
			||||||
		return EX_USAGE;
 | 
							return EX_USAGE;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	s = atoi(argv[1]);
 | 
						s = parse_uint(argv[1]);
 | 
				
			||||||
 | 
						while(isdigit(*argv[1]))
 | 
				
			||||||
 | 
							++argv[1];
 | 
				
			||||||
 | 
						if(*argv[1] != '\0')
 | 
				
			||||||
 | 
							goto usage;
 | 
				
			||||||
	while(s > 0)
 | 
						while(s > 0)
 | 
				
			||||||
		s = sleep(s);
 | 
							s = sleep(s);
 | 
				
			||||||
	return s;
 | 
						return s;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user