react-native-webrtc: Crash on entering the call

Expected Behavior

this crash doesn’t happen always, more likely to occur in video group calls

Observed Behavior

MicrosoftTeams-image

`*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***

Build fingerprint: ‘google/sdk_gphone_x86/generic_x86_arm:11/RSR1.201013.001/6903271:user/release-keys’ Revision: ‘0’ ABI: ‘x86’ Timestamp: 2022-12-19 19:46:40+0300 pid: 15274, tid: 15356, name: signaling_threa >>> com.pingme2022 <<< uid: 10159 signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr -------- eax 00000000 ebx 00003baa ecx 00003bfc edx 00000006 edi ed1cd81e esi b2989c70 ebp ee941b90 esp b2989c18 eip ee941b99 backtrace: #00 pc 00000b99 [vdso] (__kernel_vsyscall+9) #01 pc 0005ad68 /apex/com.android.runtime/lib/bionic/libc.so (syscall+40) (BuildId: 6e3a0180fa6637b68c0d181c343e6806) #02 pc 00076511 /apex/com.android.runtime/lib/bionic/libc.so (abort+209) (BuildId: 6e3a0180fa6637b68c0d181c343e6806) #03 pc 004c3c6c /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #04 pc 004c3f8f /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #05 pc 004a69a8 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #06 pc 00908714 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #07 pc 0090869b /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #08 pc 00477623 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #09 pc 00482c55 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #10 pc 0048712d /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #11 pc 004eee11 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #12 pc 004edf35 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #13 pc 004ef249 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #14 pc 004ef188 /data/app/~~UPQzE5ueBBIQir83PzrF5g==/com.pingme2022-OIGtfTSCXt8f5Ie85wfTbw==/base.apk!libjingle_peerconnection_so.so (offset 0x92cd000) (BuildId: 3ff11105582ab47f) #15 pc 000e6974 /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+100) (BuildId: 6e3a0180fa6637b68c0d181c343e6806) #16 pc 00078567 /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71) (BuildId: 6e3a0180fa6637b68c0d181c343e6806)`

Steps to reproduce the issue

enter a call

Platform Information React Native Version: 0.70.6 Plugin Version: 106.0.1 OS: Android 12, 11, 9 OS Version: 9/12/10

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 23 (10 by maintainers)

Most upvoted comments

Merged #1268 I’ll be cutting a release soon.

Yep, good catch. We’ll get that fixed after the break 😉

If you want to give it a go and send a PR that would be welcome too.

Isn’t that because we don’t support one part of the auto-rollback? Memory is fuzzy now, but IIRC there is something about perfect negotiation we don’t yet support isn’t there?

yeah, this might be the reason, but I’m in shock actually after trying to remove the manual rollback logic and the flow is still working fine, did you add it in the last beta releases?

We added nothing specific to perfect negotiation but there is a non-zero chance it might have been fixed by accident 😃

What are you doing prior to setLocalDescription ? Here is what I see from that crash:

We don’t manage the lifetime of transceivers, so this feels like a WebRTC bug but we’d need to know what sequence of actions triggers it.