Adam,
    That code is in there because there were some claims and some 
uncertainty about whether Microsoft's code could possibly issue a 
callback while another was in progress. The feeling was no, it won't 
happen, but if there *were* concurrent callbacks on the same device, it 
would cause problems, so some checks were added. It seems plausible that 
there could be concurrent callbacks on *different* devices, and it 
sounds like a bug that this is tripping the assert().
    I want to look at the code, because I don't think anyone has really 
considered whether the code is safe for multiple processors concurrently 
handling MIDI callbacks. In the meantime, you could either read the code 
too or just take out the entry count and assert() code and see what happens.
    I'll report back when I've taken a closer look.
    Thanks for the report -- it's a real issue that needs some attention.
    -Roger

_______________________________________________
media_api mailing list
[email protected]
http://lists.create.ucsb.edu/mailman/listinfo/media_api

Reply via email to