From 1cc34ea7d4f75ba6babb1960c52dc69c3f48d985 Mon Sep 17 00:00:00 2001 From: Christopher Snowhill Date: Sun, 26 Dec 2021 04:34:33 -0800 Subject: [PATCH] Audio Output: Made converter cleanup atomic, to wait on any threads that are still running --- Audio/Chain/ConverterNode.m | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Audio/Chain/ConverterNode.m b/Audio/Chain/ConverterNode.m index a1cbc6c6b..333a31c3c 100644 --- a/Audio/Chain/ConverterNode.m +++ b/Audio/Chain/ConverterNode.m @@ -557,11 +557,6 @@ static float db_to_scale(float db) - (void)inputFormatDidChange:(AudioStreamBasicDescription)format { DLog(@"FORMAT CHANGED"); - stopping = YES; - while (convertEntered || ACInputEntered || ACFloatEntered) - { - usleep(500); - } [self cleanUp]; [self setupWithInputFormat:format outputFormat:outputFormat]; } @@ -575,6 +570,11 @@ static float db_to_scale(float db) - (void)cleanUp { + stopping = YES; + while (convertEntered || ACInputEntered || ACFloatEntered) + { + usleep(500); + } rgInfo = nil; if (converterFloat) {