Windows Zoom SDK crashes in Waiting Room

Description
From our observations, Windows Zoom SDK crashes (crashes) while freeing memory.
After the client got into the waiting room and tried to free memory, he flies out.
We use Custom UI.

Which version?
SDK Version = 5.0.1 (24433.0616)

To Reproduce(If applicable)
Steps to reproduce the behavior:

  1. Init, Auth sdk
  2. Join an existing meeting.
  3. Create two (or more) ICustomizedVideoContainer
  4. ICustomizedVideoContainer -> Show (as it turned out, without calling this function, we cannot create IVideoRenderElement)
  5. For each ICustomizedVideoContainer create two IVideoRenderElement
  6. IVideoRenderElement -> SetPos(…)
  7. IVideoRenderElement -> Subscribe(…)
  8. IVideoRenderElement -> Show()
  9. Put this client in Waiting Room
  10. When I received messages (event) MEETING_STATUS_IN_WAITING_ROOM, I try free memory
    9.1. IVideoRenderElement -> Unsubscribe(…) (Sometimes crashes at this place)
    9.2. ICustomizedVideoContainer -> DestroyVideoElement (IVideoRenderElement ) (Sometimes crashes at this place)
    9.3. CustomizedUIMgr -> DestroyVideoContainer (ICustomizedVideoContainer) (Sometimes crashes at this place)

Hi @sergey_ikol,

Thank you very much for the post. Could you provide the SDK log and a dump file for this crash so that we could further investigate?

Thanks!

Hi @Carson_Chen,

Sorry, but the dump-file is not being generated during this error.

From this link you can download sdk log files.

Hi @sergey_ikol,

Thank you very much for providing the log. Let me forward this to the engineering team and see if they could identify the root cause. Will get back to you shortly.

Thanks!

Hi @sergey_ikol,

Thanks for the reply and for providing the log. So when the attendee has been assigned to the waiting room, before you received the MEETING_STATUS_IN_WAITING_ROOM status from onMeetingStatusChanged, the callback onVideoRenderElementDestroyed will be triggered, and please free the memory and destroy the video element and container here. So when you have received the status MEETING_STATUS_IN_WAITING_ROOM, the video render element has already been destroyed internally, so when you try to access it at that time, it will cause a crash.

Please refer to the implementation of the callback onVideoRenderElementDestroyed in the demo app and adjust the time to clean the memory could avoid this issue.

Hope this helps. Thank you!