Hi Max,<br><br>In retrospect, you're right. I originally did the re-ordering as a preventative measure to prevent the sound system onTimer from accessing the playing sounds list that might be in the middle of an update. But even scanning through the list could cause problems if it interrupts the main thread in the middle of a delete and update of the list. I guess I'll have to add a mutex in just to be on the safe side.
<br><br>Speaking of which, could anyone familiar which the MidiParser classes tell me if it's possible to reduce the number of channels it requires? Currently, each parser seems to take up 8 channels, even if it's parsing a MIDI file with only a single MTrk. In the case of Lure of the Temptress, all sounds are MIDI tracks, so it's currently causing some problems when multiple sounds are playing.. I'm currently partially overlapping the channels, but this causes some interference.
<br><br>Paul.<br><br><div><span class="gmail_quote">On 9/16/07, <b class="gmail_sendername">Max Horn</b> <<a href="mailto:max@quendi.de">max@quendi.de</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>As it is, I think the change is problematic, because instead of<br>fixing the problem, it just hides it / makes it less likely to be<br>triggered. So, assuming the old code was causing buggy behavior, you<br>just went from a hard-to-catch bug to a near-impossible-to-catch
<br>"heisenbug", which IMO makes things worse, not better :-(.<br></blockquote></div><br>