-
-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Qt5: crash when removing a channel that sends to another channel #2667
Comments
It's interesting that this one should be Qt5-specific. Does it only occur when playing? |
It's not. Reproduced on both Qt5 and Qt4 builds. |
That's what I would expect, which is why I found it interesting that Umcaruje stated it was Qt5-specific (here). Anyway, my plan is to refactor deleting FX channels so that the actual deletion happens between mixer rounds (kinda like adding and removing PlayHandles is done right now). Crash-free deletion during a mixer round would require lots of checks everywhere and probably synchronization, too. |
That's weird, I can't reproduce this on my Qt4 build... @Fastigium I just checked and this happens even without playing. I got an even longer backtrace when there is no playing:
|
That's a rather impressive backtrace 😲. Should still be fixed by the refactoring I proposed, though. I'll see if I can do that in the upcoming week. Wrestling with C++11 and Travis for now. |
Umcaruje I can, this happens to me as well on Qt4 |
How can't I reproduce it on my Qt4 build *scratches head* |
@Umcaruje mine was on Mac build I tested on (since I didn't have a Qt4 Linux build handy at that moment). |
PR to fix this available at #2675, testing welcome! |
Any build I can test on win 7? |
@DeRobyJ Here you go, although if you get a crash, it's not going to be trivial to get a backtrace. Still, if you can describe what you did when it happened, that might help :) |
Fixed to me, did a bunch of tests, like deleting multiple channels with "unused" feature, or a channel sending to more than one other channel, and so on. Win7 sp1 64bit In fact, there is a problem.
They keep their initial status, so on a black project everything will go to master, you can't change that. Channel selecting works fine in lmms-1.1.90.1-g67334a8-win64-qt5 edit: |
@DeRobyJ Glad that it fixed the crashes! And I think I know what causes the issue you describe, I'll try to reproduce and fix it. |
@DeRobyJ Another build, and the problem you mentioned should be fixed now. There is a small chance that the fix introduced other problems, so if you could test again, I'd be much obliged! |
FYI, the linked build is Qt4, not Qt5. 👍 |
That build seems fine, fixed the bug and I'm not getting anything bad, but that is in qt4!! |
@DeRobyJ And here's a Qt5 build to complete the testing. I hope it works, building it involved some guesswork and some doubtful warnings. @tresf The wiki page doesn't seem to contain any instructions on building for Windows with Qt5. I consulted the |
Ok, same behaviour. it doesn't crash when deleting or moving channels that send to others. |
@DeRobyJ Awesome, thanks for testing! |
Steps to reproduce:
Version info:
Backtrace:
The text was updated successfully, but these errors were encountered: