mirror of
				https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
				synced 2025-11-03 09:01:50 -05:00 
			
		
		
		
	core: add assert macros for verifying calling context
This adds pa_assert_io_context() and pa_assert_ctl_context() in addition to a few related macros. When called they will fail when the current execution context is not IO resp. not control context. (aka 'thread' context vs. 'main' context)
This commit is contained in:
		
							parent
							
								
									17d57415f5
								
							
						
					
					
						commit
						9a95fe49c8
					
				
					 9 changed files with 234 additions and 31 deletions
				
			
		| 
						 | 
				
			
			@ -43,6 +43,7 @@ typedef struct pa_source pa_source;
 | 
			
		|||
#include <pulsecore/source-output.h>
 | 
			
		||||
#include <pulsecore/card.h>
 | 
			
		||||
#include <pulsecore/queue.h>
 | 
			
		||||
#include <pulsecore/thread-mq.h>
 | 
			
		||||
 | 
			
		||||
#define PA_MAX_OUTPUTS_PER_SOURCE 32
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -295,4 +296,7 @@ void pa_source_set_latency_range_within_thread(pa_source *s, pa_usec_t min_laten
 | 
			
		|||
void pa_source_invalidate_requested_latency(pa_source *s);
 | 
			
		||||
pa_usec_t pa_source_get_latency_within_thread(pa_source *s);
 | 
			
		||||
 | 
			
		||||
#define pa_source_assert_io_context(s) \
 | 
			
		||||
    pa_assert(pa_thread_mq_get() || !PA_SOURCE_IS_LINKED((s)->state))
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue