<adam_d> i just had a quick look at this build_lookup_tables thing
<adam_d> it accesses this static list of definitions def = &timecode_def[0]
<adam_d> and then does a load of stuff
which modifies that pointer
like it mallocs the table
<adam_d> and sets def->lookup to be a pointer to something
and then modifies def->lookup[i]
if you run two of these at once, they're both going to be fighting over the same lookup table
Looking back, the problem's pretty clear now. It's going to be a decent amount of coding to fix it up though. I'll get on this before the next beta...
So Adam cracked this one:
<adam_d> i just had a quick look at this build_lookup_tables thing
def = &timecode_def[0]
<adam_d> it accesses this static list of definitions
<adam_d> and then does a load of stuff
which modifies that pointer
like it mallocs the table
<adam_d> and sets def->lookup to be a pointer to something
and then modifies def->lookup[i]
if you run two of these at once, they're both going to be fighting over the same lookup table
Looking back, the problem's pretty clear now. It's going to be a decent amount of coding to fix it up though. I'll get on this before the next beta...