mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	tools: remove listeners
This commit is contained in:
		
							parent
							
								
									cd361cb1b3
								
							
						
					
					
						commit
						e82f775fb3
					
				
					 7 changed files with 27 additions and 2 deletions
				
			
		| 
						 | 
					@ -609,6 +609,8 @@ static void removed_proxy(void *user_data)
 | 
				
			||||||
static void destroy_proxy(void *user_data)
 | 
					static void destroy_proxy(void *user_data)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct global *g = user_data;
 | 
						struct global *g = user_data;
 | 
				
			||||||
 | 
						spa_hook_remove(&g->object_listener);
 | 
				
			||||||
 | 
						spa_hook_remove(&g->proxy_listener);
 | 
				
			||||||
	pw_properties_free(g->props);
 | 
						pw_properties_free(g->props);
 | 
				
			||||||
	if (g->info)
 | 
						if (g->info)
 | 
				
			||||||
		g->info_destroy(g->info);
 | 
							g->info_destroy(g->info);
 | 
				
			||||||
| 
						 | 
					@ -891,7 +893,9 @@ int main(int argc, char *argv[])
 | 
				
			||||||
	draw_graph(&data, dot_path);
 | 
						draw_graph(&data, dot_path);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dot_str_clear(&data.dot_str);
 | 
						dot_str_clear(&data.dot_str);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.registry_listener);
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
						pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.core_listener);
 | 
				
			||||||
	pw_context_destroy(data.context);
 | 
						pw_context_destroy(data.context);
 | 
				
			||||||
	pw_main_loop_destroy(data.loop);
 | 
						pw_main_loop_destroy(data.loop);
 | 
				
			||||||
	pw_deinit();
 | 
						pw_deinit();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1583,7 +1583,9 @@ int main(int argc, char *argv[])
 | 
				
			||||||
	if (data.info)
 | 
						if (data.info)
 | 
				
			||||||
		pw_core_info_free(data.info);
 | 
							pw_core_info_free(data.info);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						spa_hook_remove(&data.registry_listener);
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
						pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.core_listener);
 | 
				
			||||||
	pw_context_destroy(data.context);
 | 
						pw_context_destroy(data.context);
 | 
				
			||||||
	pw_main_loop_destroy(data.loop);
 | 
						pw_main_loop_destroy(data.loop);
 | 
				
			||||||
	pw_deinit();
 | 
						pw_deinit();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -765,7 +765,9 @@ int main(int argc, char *argv[])
 | 
				
			||||||
		regfree(data.out_regex);
 | 
							regfree(data.out_regex);
 | 
				
			||||||
	if (data.in_regex)
 | 
						if (data.in_regex)
 | 
				
			||||||
		regfree(data.in_regex);
 | 
							regfree(data.in_regex);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.registry_listener);
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
						pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.core_listener);
 | 
				
			||||||
	pw_core_disconnect(data.core);
 | 
						pw_core_disconnect(data.core);
 | 
				
			||||||
	pw_context_destroy(data.context);
 | 
						pw_context_destroy(data.context);
 | 
				
			||||||
	pw_main_loop_destroy(data.loop);
 | 
						pw_main_loop_destroy(data.loop);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -283,7 +283,9 @@ int main(int argc, char *argv[])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (data.metadata)
 | 
						if (data.metadata)
 | 
				
			||||||
		pw_proxy_destroy((struct pw_proxy*)data.metadata);
 | 
							pw_proxy_destroy((struct pw_proxy*)data.metadata);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.registry_listener);
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
						pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.core_listener);
 | 
				
			||||||
	pw_core_disconnect(data.core);
 | 
						pw_core_disconnect(data.core);
 | 
				
			||||||
	pw_context_destroy(data.context);
 | 
						pw_context_destroy(data.context);
 | 
				
			||||||
	pw_main_loop_destroy(data.loop);
 | 
						pw_main_loop_destroy(data.loop);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -587,6 +587,9 @@ destroy_proxy (void *data)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	spa_list_remove(&pd->global_link);
 | 
						spa_list_remove(&pd->global_link);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						spa_hook_remove(&pd->object_listener);
 | 
				
			||||||
 | 
						spa_hook_remove(&pd->proxy_listener);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	clear_params(pd);
 | 
						clear_params(pd);
 | 
				
			||||||
	remove_pending(pd);
 | 
						remove_pending(pd);
 | 
				
			||||||
	free(pd->type);
 | 
						free(pd->type);
 | 
				
			||||||
| 
						 | 
					@ -859,7 +862,9 @@ int main(int argc, char *argv[])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pw_main_loop_run(data.loop);
 | 
						pw_main_loop_run(data.loop);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						spa_hook_remove(&data.registry_listener);
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
						pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.core_listener);
 | 
				
			||||||
	pw_context_destroy(data.context);
 | 
						pw_context_destroy(data.context);
 | 
				
			||||||
	pw_main_loop_destroy(data.loop);
 | 
						pw_main_loop_destroy(data.loop);
 | 
				
			||||||
	pw_deinit();
 | 
						pw_deinit();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -643,8 +643,13 @@ int main(int argc, char *argv[])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pw_main_loop_run(data.loop);
 | 
						pw_main_loop_run(data.loop);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.profiler);
 | 
						if (data.profiler) {
 | 
				
			||||||
 | 
							spa_hook_remove(&data.profiler_listener);
 | 
				
			||||||
 | 
							pw_proxy_destroy((struct pw_proxy*)data.profiler);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						spa_hook_remove(&data.registry_listener);
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
						pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.core_listener);
 | 
				
			||||||
	pw_context_destroy(data.context);
 | 
						pw_context_destroy(data.context);
 | 
				
			||||||
	pw_main_loop_destroy(data.loop);
 | 
						pw_main_loop_destroy(data.loop);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -584,8 +584,13 @@ int main(int argc, char *argv[])
 | 
				
			||||||
	spa_list_consume(n, &data.node_list, link)
 | 
						spa_list_consume(n, &data.node_list, link)
 | 
				
			||||||
		remove_node(&data, n);
 | 
							remove_node(&data, n);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.profiler);
 | 
						if (data.profiler) {
 | 
				
			||||||
 | 
							spa_hook_remove(&data.profiler_listener);
 | 
				
			||||||
 | 
							pw_proxy_destroy((struct pw_proxy*)data.profiler);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						spa_hook_remove(&data.registry_listener);
 | 
				
			||||||
	pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
						pw_proxy_destroy((struct pw_proxy*)data.registry);
 | 
				
			||||||
 | 
						spa_hook_remove(&data.core_listener);
 | 
				
			||||||
	pw_context_destroy(data.context);
 | 
						pw_context_destroy(data.context);
 | 
				
			||||||
	pw_main_loop_destroy(data.loop);
 | 
						pw_main_loop_destroy(data.loop);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue