Cannot read properties of null reading __reactInternalInstance

Description
We got a new Zoom SDK javascript error from our production environment yesterday.
It did not affect our users since this happened in the last 3 minutes of their meeting, but as it’s a Null Pointer Issue, you should have a look & fix the code to avoid it - if possible.
Please check the details below.

Browser Console Error

Cannot read properties of null (reading '__reactInternalInstance$6jsy97hl9d')

Which Web Meeting SDK version?
Web SDK 1.9.9

To Reproduce(If applicable)
Cannot reproduce, this happened only once for now.

Screenshots

This error happened while one of the participant was editing some text on our application, so doing nothing special with the Zoom UI. We believe this error has been generated by Zoom background activity and not the user.
image

Device (please complete the following information):

Additional context

We also have another set of javascript errors that started to appear months or weeks ago depending on the error / SDK release. All the errors below continue to happens and are reported from the 1.9.9.
Do you mind having a look at it as well ?

  1. TypeError: e.relatedTarget.className.includes is not a function



  1. TypeError: Cannot read properties of undefined (reading ‘length’)


This happens right after initializing the SDK components

  1. TypeError: g.a.connectSocket is not a function

image

This one is quite critical actually. This happens after the SDK has been initialized and when the user is on the process to join the meeting/Zoom.
This prevent the user joining the Zoom meeting.

  1. InvalidAccessError: Failed to execute ‘connect’ on ‘AudioNode’: cannot connect to an AudioNode belonging to a different audio context


This one seems to be related to an Audio configuration issue within the Zoom UI by a user.


Here is what was on the user’s screen (probably a dialog popup when trying to join by audio computer):

click on コンピューターのオーディオを使用できません。 Zoomは一時的にご使用のコンピューターのデバイスを使用してミーティングのオーディオに接続することができません。「コンピューターでオーディオに参加」をクリ […]

Translated as:

click on Computer audio is not available. Zoom is temporarily unable to connect to meeting audio using your computer’s device. Click “Join Audio on Computer” […]

  1. TypeError: Cannot read properties of null (reading ‘createMediaStreamSource’)


That one seems to be generated after a disconnection within Zoom (indicated by the event listener logs)


Disconnection is one thing (root cause here), but your library code should not generate a Null object error & handle such case.

  1. TypeError: Failed to construct ‘MediaStreamTrackProcessor’: Input track cannot be ended

image

This one seems to be related to the audio when clicking on Audio join by computer right after joining the Zoom meeting.


This click before the error happens:

コンピューターでオーディオに参加

is actually a click on the Audio join by computer button.
Translation of the text:

Join audio on your computer

Hey @nvivot,

Thank you for reaching out to the Zoom Developer Forum and for reporting these errors. As a quick fix, I know that there are a significant amount of improvements with the latest version of the Web SDK - 2.0.1.

I’m interested to know if you’re seeing these same issues in your testing with the latest version or if they have since been resolved.

In regard to the Null Pointer Exception as well as the JS issues that you’re seeing, were these all one-time errors? If so, was there anything different about the meetings where this issue was encountered or any temporary additions to the app that may have conflicted?

Thanks,
Max

Hi @MaxM

We are still testing the 2.0.1 so i can’t tell you about errors on that version.

All reported issues are recurrent (under conditions), not one time.
Some of the reported issues are probably introduced by latest version of the SDK since they started to appear after SDK upgrades.
Other errors are there for almost 7 months now, so pretty regular errors (that would happen on specific conditions as reported)

Maybe some of these issues are solved in the 2.0.1 or maybe they do not occur anymore since the code has changed but new ones occurs (several ones has been reported in another thread already right), in all case, a Null object means that you are calling a method on something that does not exists. This usually reflect a non protective code approach, and would be better to fix it and generate managed errors with clear message & context information instead of an NPE like error.

1 Like

Hey @nvivot,

I appreciate the extra detail here! You’re right, we will want to fix a NPE on 1.9.9 as well. I was mostly looking to see if you had a quick workaround available to you.

Are you able to provide the Meeting ID/UUID where you saw the NPE? Likewise, this happened in the last 3 minutes of the meeting with no interaction from the user, or was this a result of clicking a button?

When it comes to the other errors, it can be difficult to track down the cause without further information and steps to reproduce. Anything you can provide should help us get to the bottom of the issues.

Likewise, I know that we have some existing tickets for audio/disconnection issues where our engineering and OPs teams are working together to investigate server-specific causes that may be impacting your meetings.

I’m thinking some of the errors are related to those issues as well. Have you encountered any of these errors alongside the audio issues that you’ve seen?

Thanks,
Max

Hi Max,

So far, i would say that the reported issues above are not related to the audio drop issues we are facing. Usually when we investigate audio drop cases, there are no specific javascript errors.

I report the errors above, not because we got some inquiries from our clients at that time and on these specific meeting, but just because i often see them happening, regularly but not that often. Consider it more as exotic errors that should be fixed because potentially causes of something else (i mean, NPE things are definitely not a good sign in software’s world)

Also, i reported it because now that we also have a mobile application using the ios SDK, we observe the same pattern: some crashes caused by what i guess is the communication between the client library and the server.

Thanks for your feedback, i don’t have much time right now, but i’ll try to find the time to prepare a detailed list including the Zoom meetings information. I’ll then open a ticket specifically for that.

I appreciate the additional information @nvivot. I’ll keep an eye out for that ticket.

Thanks,
Max

@MaxM

Here is another similar issue where you do not check whether an object is not null before using a method on it.

h.a.connectSocket is not a function

As you can see from the screenshot, this happens when the user get disconnected from the meeting.

Started to appear since we upgraded to web sdk 2.0.1, 7 days ago.

Since the web SDK 2.0.1 there are also a lot more javascript warnings about duplicated id from the DOM, etc.

Would be great if you clean it.

Here is one of the meeting IDs that had that error.

Meetind ID: 95389874229
Meeting Datetime: Dec. 7, 2021, at around 17:48 to 17:52 JST

Lara

Greetings, @lfrancia, and @nvivot,

Thank you for providing the details for the problematic meetings. If you’ve already submitted a ticket to Developer Support, please be sure to include these additional accounts for further review.

We look forward to getting to the bottom of this matter.

Best,
Donte

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.