mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	pipewire: introspect: do not leave spa_param_infos uninitialized
				
					
				
			`pw_reallocarray()` leaves the newly allocated storage (if any)
uninitialized, so fill the bytes of the new `spa_param_info` objects
with zeros in `pw_{node,port,device}_info_merge()` to avoid handing
out pointers to uninitialized storage.
			
			
This commit is contained in:
		
							parent
							
								
									212c574821
								
							
						
					
					
						commit
						4e370151b0
					
				
					 1 changed files with 3 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -212,6 +212,7 @@ struct pw_node_info *pw_node_info_merge(struct pw_node_info *info,
 | 
			
		|||
		}
 | 
			
		||||
		info->n_params = n_params;
 | 
			
		||||
		for (; i < info->n_params; i++) {
 | 
			
		||||
			spa_zero(info->params[i]);
 | 
			
		||||
			info->params[i].id = update->params[i].id;
 | 
			
		||||
			info->params[i].flags = update->params[i].flags;
 | 
			
		||||
			info->params[i].user = 1;
 | 
			
		||||
| 
						 | 
				
			
			@ -285,6 +286,7 @@ struct pw_port_info *pw_port_info_merge(struct pw_port_info *info,
 | 
			
		|||
		}
 | 
			
		||||
		info->n_params = n_params;
 | 
			
		||||
		for (; i < info->n_params; i++) {
 | 
			
		||||
			spa_zero(info->params[i]);
 | 
			
		||||
			info->params[i].id = update->params[i].id;
 | 
			
		||||
			info->params[i].flags = update->params[i].flags;
 | 
			
		||||
			info->params[i].user = 1;
 | 
			
		||||
| 
						 | 
				
			
			@ -448,6 +450,7 @@ struct pw_device_info *pw_device_info_merge(struct pw_device_info *info,
 | 
			
		|||
		}
 | 
			
		||||
		info->n_params = n_params;
 | 
			
		||||
		for (; i < info->n_params; i++) {
 | 
			
		||||
			spa_zero(info->params[i]);
 | 
			
		||||
			info->params[i].id = update->params[i].id;
 | 
			
		||||
			info->params[i].flags = update->params[i].flags;
 | 
			
		||||
			info->params[i].user = 1;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue