-
-
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
Install qt5 soundsources to a different folder to avoid crashes, fixes lp1774639 #1698
Conversation
It is really annoying to have a crash every time I change from QT4 to 5 and back. |
Now it fixes also https://bugs.launchpad.net/mixxx/+bug/1711173 |
This feels like a hacky solution. Why isn't the old plugin overwritten by the new one? |
Maybe this bug is related? |
It is not related. The number of soundsources depends on the compile options. So it may happen, that the user has installed a build with more soundsources. These will stick in these folders as intended. An other issue is that the user might use Mixxx from the build tree, which used a different qt version than the original installed one. In this case Mixxx tries to load the plug-ins from the install path as well. (My case) |
For this PR we need to test and probably fix the windows and Mac installer. Who is able make the installers Qt version aware? Alternative, we can ignore the issue and install master alwaxs to qt5 and 2.1 always to qt4 path. |
@sblaisot:What is your opinion here? Is it difficult to make the install location qt version aware on windows? |
The installer already takes whatever subdir exist in build_dir so if the subdir is called So all you have to do is to build in the right sudbir here: You already have an example of qt4/5 logic here: |
src/sources/soundsourceproxy.cpp
Outdated
@@ -51,6 +51,22 @@ const QStringList SOUND_SOURCE_PLUGIN_FILENAME_PATTERN; // empty | |||
#endif | |||
|
|||
QList<QDir> getSoundSourcePluginDirectories() { | |||
|
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.
on macOS the bundle plugin directory must be named PlugIns
:
https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW1
macOS is unaffected by this bug because .app bundles can't get files mixed up so I would just leave the __APPLE__
codepaths unchanged
I think Windows is mostly unaffected by this bug because the WiX installer will not install Mixxx on top of an old install -- it requires you to run the uninstaller first, which will delete the plugins. Right @sblaisot ? |
9d72243
to
2c7fddd
Compare
2c7fddd
to
a0e6b28
Compare
Ok, now it works for Linux only. No crash anymore.
all other platforms are not effected. We "only" have to change: The linux packagers are also not effected because at least for ubuntu they do not ship soundsource plugins. |
re-added the vamp fix |
2d83efc
to
c3550aa
Compare
c3550aa
to
cd9c9f6
Compare
The base 2.1 is correct. It does not change anything in a qt4 2.1 build, but if one wants to try qt5 it will work without a crash. |
I have tested both. |
ready .. |
cool, thanks |
https://bugs.launchpad.net/mixxx/+bug/1774639
This fixes the bug for Linux. I think there is something missing for the Windows and Mac OS installer.