mirror of
				https://github.com/N64Recomp/N64ModernRuntime.git
				synced 2025-10-30 08:02:29 +00:00 
			
		
		
		
	Fix race condition where update_gfx could be called after renderer shutdown (#98)
This commit is contained in:
		
							parent
							
								
									db1b1a1082
								
							
						
					
					
						commit
						8506c1b588
					
				
					 2 changed files with 5 additions and 0 deletions
				
			
		|  | @ -502,6 +502,7 @@ bool ultramodern::is_game_started() { | |||
| } | ||||
| 
 | ||||
| std::atomic_bool exited = false; | ||||
| moodycamel::LightweightSemaphore graphics_shutdown_ready; | ||||
| 
 | ||||
| void ultramodern::quit() { | ||||
|     exited.store(true); | ||||
|  | @ -763,6 +764,8 @@ void recomp::start( | |||
|         } | ||||
|     } | ||||
| 
 | ||||
|     graphics_shutdown_ready.signal(); | ||||
| 
 | ||||
|     game_thread.join(); | ||||
|     ultramodern::join_event_threads(); | ||||
|     ultramodern::join_thread_cleaner_thread(); | ||||
|  |  | |||
|  | @ -105,6 +105,7 @@ uint64_t total_vis = 0; | |||
| 
 | ||||
| 
 | ||||
| extern std::atomic_bool exited; | ||||
| extern moodycamel::LightweightSemaphore graphics_shutdown_ready; | ||||
| 
 | ||||
| void set_dummy_vi(); | ||||
| 
 | ||||
|  | @ -318,6 +319,7 @@ void gfx_thread_func(uint8_t* rdram, moodycamel::LightweightSemaphore* thread_re | |||
|         } | ||||
|     } | ||||
| 
 | ||||
|     graphics_shutdown_ready.wait(); | ||||
|     renderer_context->shutdown(); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Wiseguy
						Wiseguy