-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
gracefull handle Midi overflow #825
Conversation
Hello! This branch is against the 1.12 branch, which is now closed to any changes except bugfixes. Please re-open your PR against master if this PR is still relevant. |
This is a bug-fix ;-) |
The code change looks good to me though I have the same concern about the Debian package change. Instead, let's publish a portmidi package on our PPA compiled in release mode. |
My PPA has a portmidi build with PM_CHECK_ERRORS disabled. |
The package works for me on Precise. However I have tested it without a real controller. |
@daschuer -- could you revert the control file changes? |
Yes, I can do it, but I want just verify that it is clear for you what it means: |
I would rather the user be able to install Mixxx than to add a cryptic package requirement. Based on survey results, 70% of users don't have a MIDI controller. My bet is that most users who hit the dependency error when they download the .deb will give up. You're probably right that this is not worth doing in 2.0.1 though. Maybe some other day when the Ubuntu situation is better. |
Ok I will remove the dependency tonight. We should remove the direct *.deb download link from |
The situation does not change between 2.0.1 or 2.1.0 if we assume that every user installs our libportmidi this fix can go to both. If not, we need to force it by the dependency. |
By the way: done ;-) |
This pull request has not been updated in years so I am closing it to reduce the clutter of open PRs. IMO if this requires changes to a dependency then we should not merge it until those changes are merged upstream. |
This one is waiting for the Ubuntu situation to go better. Trusty: 1:200-0ubuntu3 Maybe there is a way to detect the version at compile time. |
This PR is marked as stale because it has been open 90 days with no activity. |
@daschuer So it's ready to merge for 2.3? We drop support for older distros there. |
Yes finally. Thank you for the reminder. |
f79c14d
to
da870f0
Compare
Done. |
This is a valid bug-fix. Who likes to have a look? |
I'm not comfortable rushing this change into an almost ready to be released branch. |
Why are you at this opinion? What is the risky bit here. The use of poll is here obviously redundant leading to a deadlock in rare cases. |
You can slow down the polling rate and turn the jog wheel to produce an overflow. |
@Holzhaus Did you find time to test this? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, forgot about this. Thanks for the reminder. Works fine for me. I can't comment about the code though.
@Be-ing merge? |
I'm still nervous about merging this without a clear way to reproduce the issue and knowing that the MIDI I/O code otherwise has been working well for years. However maybe this addresses the sporadic reports of controllers randomly not working after a while on Windows? So if consensus is to merge this now, I'm not going to insist on holding it up. |
This is a simple fix to handle midi overflows gracefully.
Details see: https://bugs.launchpad.net/mixxx/+bug/1527410
This fixes the issue that the midi fix stops after an overflow on nearly all platforms.
Unfortunately in Ubuntu the thing becomes worse due to and exit call.
This is why I change the required potmidi version to > the problematic one.
https://bugs.launchpad.net/mixxx/+bug/1527888
https://bugs.launchpad.net/mixxx/+bug/1097286
IMHO This is merge-able once we have a portmidi version for Ubnutu in our ppa