PPro segfault crash during concurrent async locked access patterns

Hello,

My code performs some serialized ppro API actions (via the lockedAccess/executeTransaction pattern of course) that insert clips into the timeline and modifies them and such.

Recently, I added some logic that detects changes via a TRACK_CHANGED listener callback and performs some async ppro API actions from that (also lockedAccessPatterned).

Is concurrent async/await access to Premiere Pro timeline objects through the native bridge expected to be safe? @bbb_999

I took a look at the .dmp file and it appears that when two independent async call chains each make their own lockedAccess/NAPI calls around the same time, the native object references from one chain become stale due to the other chain’s mutations, causing Premiere to segfault.

I’m assuming I’m not the first person to call multiple concurrent async timeline operations. Do I need to build some kind of locked access pattern wrapper for all PPro timeline actions so that the concurrent async operations become serialized? Or did I come across some edge case? I can provide the .dmp file to the devs if needed.

Interesting!

You are, in fact, the first to mention multiple concurrent async timeline operations. :slight_smile:

We’d like to get all the details; I’ll DM you my adobe contact info.