mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Don't look at string[length - 1] if length == 0.
This commit is contained in:
		
							
								
								
									
										4
									
								
								client.c
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								client.c
									
									
									
									
									
								
							@@ -580,7 +580,7 @@ client_dispatch_wait(void *data0)
 | 
			
		||||
			imsg_free(&imsg);
 | 
			
		||||
			return (-1);
 | 
			
		||||
		case MSG_SHELL:
 | 
			
		||||
			if (data[datalen - 1] != '\0')
 | 
			
		||||
			if (datalen == 0 || data[datalen - 1] != '\0')
 | 
			
		||||
				fatalx("bad MSG_SHELL string");
 | 
			
		||||
 | 
			
		||||
			clear_signals(0);
 | 
			
		||||
@@ -664,7 +664,7 @@ client_dispatch_attached(void)
 | 
			
		||||
			kill(getpid(), SIGTSTP);
 | 
			
		||||
			break;
 | 
			
		||||
		case MSG_LOCK:
 | 
			
		||||
			if (data[datalen - 1] != '\0')
 | 
			
		||||
			if (datalen == 0 || data[datalen - 1] != '\0')
 | 
			
		||||
				fatalx("bad MSG_LOCK string");
 | 
			
		||||
 | 
			
		||||
			system(data);
 | 
			
		||||
 
 | 
			
		||||
@@ -961,12 +961,12 @@ server_client_msg_identify(struct client *c, struct imsg *imsg)
 | 
			
		||||
		c->flags |= flags;
 | 
			
		||||
		break;
 | 
			
		||||
	case MSG_IDENTIFY_TERM:
 | 
			
		||||
		if (data[datalen - 1] != '\0')
 | 
			
		||||
		if (datalen == 0 || data[datalen - 1] != '\0')
 | 
			
		||||
			fatalx("bad MSG_IDENTIFY_TERM string");
 | 
			
		||||
		c->term = xstrdup(data);
 | 
			
		||||
		break;
 | 
			
		||||
	case MSG_IDENTIFY_TTYNAME:
 | 
			
		||||
		if (data[datalen - 1] != '\0')
 | 
			
		||||
		if (datalen == 0 || data[datalen - 1] != '\0')
 | 
			
		||||
			fatalx("bad MSG_IDENTIFY_TTYNAME string");
 | 
			
		||||
		c->ttyname = xstrdup(data);
 | 
			
		||||
		break;
 | 
			
		||||
@@ -981,7 +981,7 @@ server_client_msg_identify(struct client *c, struct imsg *imsg)
 | 
			
		||||
		c->fd = imsg->fd;
 | 
			
		||||
		break;
 | 
			
		||||
	case MSG_IDENTIFY_ENVIRON:
 | 
			
		||||
		if (data[datalen - 1] != '\0')
 | 
			
		||||
		if (datalen == 0 || data[datalen - 1] != '\0')
 | 
			
		||||
			fatalx("bad MSG_IDENTIFY_ENVIRON string");
 | 
			
		||||
		if (strchr(data, '=') != NULL)
 | 
			
		||||
			environ_put(&c->environ, data);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user