Skip to content

Remove lock from the engine thread.#3282

Merged
uklotzde merged 1 commit intomixxxdj:2.2from
daschuer:cuecontrol_lock
Nov 11, 2020
Merged

Remove lock from the engine thread.#3282
uklotzde merged 1 commit intomixxxdj:2.2from
daschuer:cuecontrol_lock

Conversation

@daschuer
Copy link
Copy Markdown
Member

After #3268 it is no longer necessary, because the protected code is only run from the main and controller thread.
The order of code ensures that it has no harm.

The mutex mainly protect the cue points and related data structures, these are not touched anyway.

This is considered as a band aid for 2.2 only.

I have a real solution in progress fixing the root cause for 2.3 that has a big impact that does not suit to go into a bugfix release.

Copy link
Copy Markdown
Contributor

@uklotzde uklotzde left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

m_bypassCueSetByPlay, m_bPreviewing, and m_iCurrentlyPreviewingHotcues are modified in other parts of the code, both locked and unlocked. Since they are also modified in updateIndicators() without locking, removing this lock is at least consistent with the remaining code that is called by the engine thread.

@uklotzde
Copy link
Copy Markdown
Contributor

LGTM

@uklotzde uklotzde merged commit fb678c3 into mixxxdj:2.2 Nov 11, 2020
@daschuer daschuer deleted the cuecontrol_lock branch September 26, 2021 17:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants