Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix occasional audio interface deadlock #4450

Merged
merged 1 commit into from Jul 10, 2018
Merged

Conversation

@PhysSong
Copy link
Member

@PhysSong PhysSong commented Jun 25, 2018

Fixes #4406 by ensuring audio thread has read the NULL buffer before stop processing. Dropping them have caused several regressions(#4406, #3397, #3396, etc.) because stopProcessing of backend can be called before it receives NULL buffer.
Instead of relying on per-backend semaphores(Dropped for SDL in 98346f7, for JACK in 1dcacbb), Mixer::fifoWriter now checks it.

@PhysSong
Copy link
Member Author

@PhysSong PhysSong commented Jul 1, 2018

Review please! I want to merge this soon, but I think it'd be better to wait for reviews.

@PhysSong
Copy link
Member Author

@PhysSong PhysSong commented Jul 10, 2018

Merging since there was no review and I can find any regressions.

@PhysSong PhysSong merged commit f2d6832 into LMMS:stable-1.2 Jul 10, 2018
2 checks passed
2 checks passed
ci/circleci Your tests passed on CircleCI!
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@PhysSong PhysSong deleted the PhysSong:exitlock branch Jul 10, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

1 participant
You can’t perform that action at this time.