More developments: After testing the script code and midiscriptengine.cpp extensively, I found that the segfaulting problem lies not with connecting or disconnecting signals, but with ControlObjectThread::updateControlObject(), therefore inherited by ControlObjectThread::slotSet() which I use alot. (Seems to be worse when I do a slotSet(get()) to force a ControlObject signal emission.) It also happens if I try to have ControlObject emit(valueChanged()) from midiscriptengine.
Also, the slots don't react if connected to ControlObjectThread's valueChanged() signal. So I still have to connect script slots to ControlObject's signal for now. The good news is that it segfaults less now, and I still have automatic reactions, but they just don't update on a mode switch. So the questions du jour are: 1) WHAT is wrong with ControlObjectThread::updateControlObject() ?! (It's just one line, line 137: m_pControlObject->queueFromThread(get(), this);) 2) Can we fix it? 3) And if we can't answer that, is there any other thread-safe way to do what I'm trying to do? (Force a signal emission.) Sean <<--------------------------------------------------------------------------------->> This E-Mail message has been scanned for viruses and cleared by >>SmartMail<< from Smarter Technology, Inc. <<--------------------------------------------------------------------------------->> ------------------------------------------------------------------------------ Check out the new SourceForge.net Marketplace. It is the best place to buy or sell services for just about anything Open Source. http://p.sf.net/sfu/Xq1LFB _______________________________________________ Mixxx-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mixxx-devel
