Open a 32-bit instance of GraphStudioNext (instance A)
In instance A render a video file. The graph should contain a video renderer filter supporting IVideoWindow
Open a 64-bit instance of GraphStudioNext (instance B)
In instance B connect to remote graph in instance A
Expected : Connects to remote graph in instance A
Actual : Sometimes succeeds connecting, sometimes crashes. Stopping on a breakpoint before the crash almost always avoids the crash.
The crashing call stack is inside a call to put_Caption with crash occur in marshalling code for BSTR (see code extract below).
Probably caused by passing a raw pointer to the string data in the local variable vw_name to put_Caption rather than a proper BSTR parameter. Works in local graphs by chance but call timing is different calling a remote graph.
Steps
Expected : Connects to remote graph in instance A Actual : Sometimes succeeds connecting, sometimes crashes. Stopping on a breakpoint before the crash almost always avoids the crash.
The crashing call stack is inside a call to put_Caption with crash occur in marshalling code for BSTR (see code extract below).
Probably caused by passing a raw pointer to the string data in the local variable vw_name to put_Caption rather than a proper BSTR parameter. Works in local graphs by chance but call timing is different calling a remote graph.