On Monday 30 Jan 2006 21:40, Pedro Lopez-Cabanillas wrote: > On Monday 30 January 2006 21:56, Pedro Lopez-Cabanillas wrote: > > I guess that there should be an explicit > > call to registerDataBlockForEvent somewere before setDataBlockForEvent() > > in AlsaDriver.cpp:2470, right? > > No. First, registerDataBlockForEvent() is protected, and second: it sets > the data block itself. I've tried to workaround the issues to only get more > problems. Sorry, but I'm not in a position to look deeper into this issue > now.
OK, I've committed what I think is a fix. The superficial problem (no data block ID set for mapped events created at the sequencer side) turned out to also mask a deeper problem (separate data block ID counts at GUI and sequencer meant that outgoing events from the GUI overwrote the incoming event data blocks -- this may not have caused any actual problems because the incoming events were probably no longer used by then, but it's hard to be certain). Anyway, I've adjusted setDataBlockForEvent so as to call registerDataBlockForEvent if there is no ID set (ID 0 is officially not used) and I've made it use random IDs instead of incrementing ones, so as to hopefully avoid using the same range in both processes. We also check whether a datablock file already exists and avoid overwriting it (not enough on its own because of potential race conditions). Together those should make things pretty safe. So, please test! One last problem: the datablock files created on the sequencer side are not deleted when Rosegarden exits. Chris ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ Rosegarden-devel mailing list [email protected] - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-devel
