Skip to content

Conversation

@acolwell
Copy link
Collaborator

Thanks for submitting a pull request! Please provide enough information so that others can review your pull request. Additionally, make sure you've done all of these things:

PR Description

What type of PR is this? (Check one of the boxes below)

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Improvement (non-breaking change which does not add functionality nor fixes a bug but improves Natron in some way)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • My change requires a change to the documentation
    • I have updated the documentation accordingly

What does this pull request do?

Fixing GenericWatcher::scheduleBlockingTask() so that it actually holds the tasksMutex when it is pushing new task information.

Have you tested your changes (if applicable)? If so, how?

Yes. I basically just did simple tests that make sure when the function gets called everything still seems to work. I did not notice any problems caused by this change.

Futher details of this pull request

I suspect it could fix potential race conditions, but I didn't ever actually encounter any issues like that. I just happened to come across this code and realized that the queue was not being protected like the original author probably intended.

Fixing GenericWatcher::scheduleBlockingTask() so that it actually holds
the tasksMutex when it is pushing new task information.
@devernay devernay merged commit fea1bbf into NatronGitHub:RB-2.5 Mar 10, 2024
@acolwell acolwell deleted the fix_QMutexLocker_bug branch March 10, 2024 19:49
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