Use const char *argv[] signatures
C is really weird about this stuff, but this makes more sense to me.
This commit is contained in:
		
							parent
							
								
									9bc200bfe5
								
							
						
					
					
						commit
						36ec6cf258
					
				
							
								
								
									
										4
									
								
								chat.h
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								chat.h
									
									
									
									
									
								
							| @ -40,8 +40,8 @@ void selfNick(const char *nick); | |||||||
| void selfUser(const char *user); | void selfUser(const char *user); | ||||||
| void selfJoin(const char *join); | void selfJoin(const char *join); | ||||||
| 
 | 
 | ||||||
| void eventWait(char *const argv[]); | void eventWait(const char *argv[static 2]); | ||||||
| void eventPipe(char *const argv[]); | void eventPipe(const char *argv[static 2]); | ||||||
| void eventLoop(int ui, int irc); | void eventLoop(int ui, int irc); | ||||||
| 
 | 
 | ||||||
| struct Tag { | struct Tag { | ||||||
|  | |||||||
							
								
								
									
										8
									
								
								event.c
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								event.c
									
									
									
									
									
								
							| @ -33,18 +33,18 @@ static struct { | |||||||
| 	int fd; | 	int fd; | ||||||
| } spawn; | } spawn; | ||||||
| 
 | 
 | ||||||
| void eventWait(char *const argv[]) { | void eventWait(const char *argv[static 2]) { | ||||||
| 	uiHide(); | 	uiHide(); | ||||||
| 	pid_t pid = fork(); | 	pid_t pid = fork(); | ||||||
| 	if (pid < 0) err(EX_OSERR, "fork"); | 	if (pid < 0) err(EX_OSERR, "fork"); | ||||||
| 	if (!pid) { | 	if (!pid) { | ||||||
| 		execvp(argv[0], argv); | 		execvp(argv[0], (char *const *)argv); | ||||||
| 		err(EX_CONFIG, "%s", argv[0]); | 		err(EX_CONFIG, "%s", argv[0]); | ||||||
| 	} | 	} | ||||||
| 	spawn.wait = true; | 	spawn.wait = true; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void eventPipe(char *const argv[]) { | void eventPipe(const char *argv[static 2]) { | ||||||
| 	if (spawn.pipe) { | 	if (spawn.pipe) { | ||||||
| 		uiLog(TagStatus, UIHot, L"event: existing pipe"); | 		uiLog(TagStatus, UIHot, L"event: existing pipe"); | ||||||
| 		return; | 		return; | ||||||
| @ -62,7 +62,7 @@ void eventPipe(char *const argv[]) { | |||||||
| 		dup2(rw[1], STDOUT_FILENO); | 		dup2(rw[1], STDOUT_FILENO); | ||||||
| 		dup2(rw[1], STDERR_FILENO); | 		dup2(rw[1], STDERR_FILENO); | ||||||
| 		close(rw[1]); | 		close(rw[1]); | ||||||
| 		execvp(argv[0], argv); | 		execvp(argv[0], (char *const *)argv); | ||||||
| 		perror(argv[0]); | 		perror(argv[0]); | ||||||
| 		exit(EX_CONFIG); | 		exit(EX_CONFIG); | ||||||
| 	} | 	} | ||||||
|  | |||||||
							
								
								
									
										3
									
								
								input.c
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								input.c
									
									
									
									
									
								
							| @ -144,8 +144,7 @@ static void inputClose(struct Tag tag, char *params) { | |||||||
| static void inputMan(struct Tag tag, char *params) { | static void inputMan(struct Tag tag, char *params) { | ||||||
| 	(void)tag; | 	(void)tag; | ||||||
| 	(void)params; | 	(void)params; | ||||||
| 	char *argv[] = { "man", "1", "chatte", NULL }; | 	eventWait((const char *[]) { "man", "1", "chatte", NULL }); | ||||||
| 	eventWait(argv); |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static const struct { | static const struct { | ||||||
|  | |||||||
							
								
								
									
										4
									
								
								url.c
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								url.c
									
									
									
									
									
								
							| @ -91,14 +91,14 @@ void urlOpenMatch(struct Tag tag, const char *substr) { | |||||||
| 		struct Entry entry = ringEntry(i); | 		struct Entry entry = ringEntry(i); | ||||||
| 		if (!entry.url || entry.tag != tag.id) continue; | 		if (!entry.url || entry.tag != tag.id) continue; | ||||||
| 		if (!strstr(entry.url, substr)) continue; | 		if (!strstr(entry.url, substr)) continue; | ||||||
| 		eventPipe((char *[]) { "open", entry.url, NULL }); | 		eventPipe((const char *[]) { "open", entry.url, NULL }); | ||||||
| 		break; | 		break; | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void urlOpenRange(struct Tag tag, size_t at, size_t to) { | void urlOpenRange(struct Tag tag, size_t at, size_t to) { | ||||||
| 	size_t argc = 1; | 	size_t argc = 1; | ||||||
| 	char *argv[2 + RingLen] = { "open" }; | 	const char *argv[2 + RingLen] = { "open" }; | ||||||
| 	size_t tagIndex = 0; | 	size_t tagIndex = 0; | ||||||
| 	for (size_t i = RingLen - 1; i < RingLen; --i) { | 	for (size_t i = RingLen - 1; i < RingLen; --i) { | ||||||
| 		struct Entry entry = ringEntry(i); | 		struct Entry entry = ringEntry(i); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user