diff sms.c @ 1980:81df9aa2de9b

Less hacky run on audio thread mode
author Michael Pavone <pavone@retrodev.com>
date Sat, 09 May 2020 23:25:51 -0700
parents b387f1c5a1d0
children a7b753e260a2 9caebcfeac72
line wrap: on
line diff
--- a/sms.c	Sat May 09 21:37:35 2020 -0700
+++ b/sms.c	Sat May 09 23:25:51 2020 -0700
@@ -428,7 +428,7 @@
 			target_cycle -= adjust;
 		}
 	}
-	if (render_should_release_on_exit()) {
+	if (sms->header.force_release || render_should_release_on_exit()) {
 		bindings_release_capture();
 		vdp_release_framebuffer(sms->vdp);
 		render_pause_source(sms->psg->audio);
@@ -439,7 +439,8 @@
 static void resume_sms(system_header *system)
 {
 	sms_context *sms = (sms_context *)system;
-	if (render_should_release_on_exit()) {
+	if (sms->header.force_release || render_should_release_on_exit()) {
+		sms->header.force_release = 0;
 		bindings_reacquire_capture();
 		vdp_reacquire_framebuffer(sms->vdp);
 		render_resume_source(sms->psg->audio);