Chasers Crashing in current source

Post Reply
Robert Scheffler

Wondering if you guys have had any issues with chasers?

I built from current source under Windows. Running on Win7, 64bit.

Create an new project with 4 scenes. Create chaser, add the 4 scenes. Then try and 'preview' the chaser by clicking the play button.

Message says: Microsoft VisualC++ Runtime Library. The application has requested the Runtime to terminate it in an unusual way.

Anybody seeing issues with Chasers on any platform, but most interested in windows.

I could attach a project, but it is simple to re-create.

QLC+ 4.6.1 works as expected.

Thanks, Bob
Massimo Callegari

Just tried 4.7.0 on Linux and found no issue.

Can you please give more details about your setup ?
For example which fixtures you're using, which output device, the chaser timings, etc..
Robert Scheffler

Massimo,

I am figuring it is something in my build environment.
Hopefully attached is a project that shows the issue.
My actual show is more complicated, so I made a simple/stupid project to see, and it does do this on my my laptop and desktop machines (both Win7, 64-bit).

4.6.1 works fine with this project. The git version crashes. Since it is a DLL/VisualC++ error, clearly just a windows issue... Your favorite topic...

Bob
Attachments
ChaserCrashing.qxw
(4.07 KiB) Downloaded 60 times
Robert Scheffler

And here is a screen shot of the error message.

Using simple generic single-channel fixtures. I use ArtNET as the output, but that has been working multi-universe perfectly with the same build.
I am also using MIDI from my Tascam US2400.
Will try stripping all that out and see if it changes.
I'll also double check my build setup and do some more testing on my side.
Thanks,
Bob
Massimo Callegari

Yeah, my favourite topic ! :)

If you don't mind, I'm gonna move this discussion in the development thread.

I need to check your issue later as I'm busy in another matter now.
Robert Scheffler

Chaser works in a cue list on VC, manually stepping the chaser.
A button in VC, or clicking play in the Function editor crashes QLC+.
I traced into the Chaser function. A chaserrunner is created in my crash situation.
In Chaser::createRunner() calls runner->setParent(self) which is where it crashes.

If I comment out the runner->setParent(self), it _seems_ to works. What is the real danger here???

Not sure if that helps, but I am running QT4.8.5
The build from CLI, and now inside QT have the same results.
Bob
Darrow

I have the exact same problem after building qlcplus 4.8.4 from source on Windows 8.1 with Qt 4.8.6 (not recommended for the weak hearted).

runner->setParent(self) in chaser.cpp mentioned above is now m_runner->setParent(this). Commenting this out fixes the problem and so far I have not seen any other problems surfacing. Anybody have any idea what is going on here?
Massimo Callegari

I built a test version a few days ago.
https://sourceforge.net/p/qlcplus/discu ... /73d5dfcf/

Can you double check if the crash happens on my version as well ?
Darrow

Precompiled versions, including QLC+_4.8.5-TEST-20150228.exe, work OK. The crash occurs when building from source using the HOWTO given here:

https://github.com/mcallegari/qlcplus/w ... uild-HOWTO
Massimo Callegari

OK, you know this is my favourite topic, right ?
It's like serving a juicy gazelle on a silver plate to a starving lion :)

Seriously, building on Windows (especially with MinGW) has something mystical in it.
It took me one month to figure out the first misteries:
http://stackoverflow.com/questions/1348 ... in16-issue

There is a jungle of serious binary incompatibilities in my favourite OS.
The first thing I would try in your case is to copy the QLC+ libraries over an existing installation.
The files are (going by memory)
qlcplus.exe
qlcplusengine.dll
qlcplusui.dll
qlcpluswebaccess.dll

Please try them so we can understand in the first place if the binaries you produce are OK or if the problem is elsewhere.
In the second case, you can try one by one to replace the other DLLs until you find which one is causing the issue.
I would bet on winpthreads DLL.

In these days I am evaluating another building system to make life easier (to me and everybody): http://win-builds.org/doku.php
They are a little bit behind with Qt, but if it's worth it, I will contribute to the project and add the packages required by QLC+ (liblo and fftw3)
Darrow

Thanks Massimo. I will try what you suggest. Should I continue with Qt 4.8.6 for now? I notice that your test version has several QT5 dlls.
Massimo Callegari

Please use Qt5. I am deploying it since QLC+ 4.8.0.
Qt4 is phasing out and your binaries wouldn't work anyway on recent installations of QLC+.
Massimo Callegari

I just realized I haven't published a HOWTO for Windows+Qt5.
Anyway it's the same process you used with Qt4.

You might need to use a recent MinGW with GCC 4.8.
That's what I'm using at the moment
Darrow

Sounds like moving to Qt5 is almost certainly the answer. Thank you very much.
Post Reply