|  |  |  | @ -153,28 +153,22 @@ static void merge_wildcard_on_all(struct output_config *wildcard) { | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | static void merge_id_on_name(struct output_config *oc) { | 
			
		
	
		
			
				
					|  |  |  |  | 	char *id_on_name = NULL; | 
			
		
	
		
			
				
					|  |  |  |  | 	char id[128]; | 
			
		
	
		
			
				
					|  |  |  |  | 	char *name = NULL; | 
			
		
	
		
			
				
					|  |  |  |  | 	struct sway_output *output; | 
			
		
	
		
			
				
					|  |  |  |  | 	wl_list_for_each(output, &root->all_outputs, link) { | 
			
		
	
		
			
				
					|  |  |  |  | 		name = output->wlr_output->name; | 
			
		
	
		
			
				
					|  |  |  |  | 		output_get_identifier(id, sizeof(id), output); | 
			
		
	
		
			
				
					|  |  |  |  | 		if (strcmp(name, oc->name) == 0 || strcmp(id, oc->name) == 0) { | 
			
		
	
		
			
				
					|  |  |  |  | 			size_t length = snprintf(NULL, 0, "%s on %s", id, name) + 1; | 
			
		
	
		
			
				
					|  |  |  |  | 			id_on_name = malloc(length); | 
			
		
	
		
			
				
					|  |  |  |  | 			if (!id_on_name) { | 
			
		
	
		
			
				
					|  |  |  |  | 				sway_log(SWAY_ERROR, "Failed to allocate id on name string"); | 
			
		
	
		
			
				
					|  |  |  |  | 				return; | 
			
		
	
		
			
				
					|  |  |  |  | 			} | 
			
		
	
		
			
				
					|  |  |  |  | 			snprintf(id_on_name, length, "%s on %s", id, name); | 
			
		
	
		
			
				
					|  |  |  |  | 			break; | 
			
		
	
		
			
				
					|  |  |  |  | 		} | 
			
		
	
		
			
				
					|  |  |  |  | 	struct sway_output *output = all_output_by_name_or_id(oc->name); | 
			
		
	
		
			
				
					|  |  |  |  | 	if (output == NULL) { | 
			
		
	
		
			
				
					|  |  |  |  | 		return; | 
			
		
	
		
			
				
					|  |  |  |  | 	} | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 	const char *name = output->wlr_output->name; | 
			
		
	
		
			
				
					|  |  |  |  | 	char id[128]; | 
			
		
	
		
			
				
					|  |  |  |  | 	output_get_identifier(id, sizeof(id), output); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 	size_t size = snprintf(NULL, 0, "%s on %s", id, name) + 1; | 
			
		
	
		
			
				
					|  |  |  |  | 	char *id_on_name = malloc(size); | 
			
		
	
		
			
				
					|  |  |  |  | 	if (!id_on_name) { | 
			
		
	
		
			
				
					|  |  |  |  | 		sway_log(SWAY_ERROR, "Failed to allocate id on name string"); | 
			
		
	
		
			
				
					|  |  |  |  | 		return; | 
			
		
	
		
			
				
					|  |  |  |  | 	} | 
			
		
	
		
			
				
					|  |  |  |  | 	snprintf(id_on_name, size, "%s on %s", id, name); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 	int i = list_seq_find(config->output_configs, output_name_cmp, id_on_name); | 
			
		
	
		
			
				
					|  |  |  |  | 	if (i >= 0) { | 
			
		
	
	
		
			
				
					|  |  |  | 
 |