aws / aws/amazon-chime-sdk-android

App crashes with refCount < 1 when multiple participants ends the call

Open
#643 5 comments 0 reactions 0 assignees View on GitHub
Needs More Information
Dominant language
Kotlin
Stars
113
Forks
60
Avg merge
40m
Merged PRs (30d)
2

Description

Crash Description

**App crashes with refCount < 1 when multiple participants ends the call**

Steps to reproduce

**when multiple participants ends the call**

**Not a every time issue. App crashing sometimes for different users**

Crash logs

java.lang.IllegalStateException: release() called on an object with refcount < 1 at
com.amazonaws.services.chime.sdk.meetings.utils.RefCountDelegate.release
Unknown Source:29
at
com.amazonaws.services.chime.sdk.meetings.audiovideo.video.gl.DefaultEglCoreFactory.onEglCoreReleased
Unknown Source:4
at
com.amazonaws.services.chime.sdk.meetings.audiovideo.video.gl.DefaultEglCoreFactory.access$onEglCoreReleased
Unknown Source
at
com.amazonaws.services.chime.sdk.meetings.audiovideo.video.gl.DefaultEglCoreFactory$createEglCore$$inlined$synchronized$lambda$2.run
Unknown Source:2
at
com.amazonaws.services.chime.sdk.meetings.audiovideo.video.gl.DefaultEglCore.release
Unknown Source:90
at
com.amazonaws.services.chime.sdk.meetings.internal.video.DefaultVideoClientController$stopAndDestroy$1.invokeSuspend

same crash happens multiple times.

version details

**ext.chime_sdk_ml = "0.3.0"
ext.chime_sdk_media = "0.20.0"
ext.chime_sdk = "0.20.0"**

Device details

1
--
architecture | aarch64
brand | POCO
model | M2102J20SI
name | POCO M2102J20SI
type | Mobile

2
--
architecture | aarch64
brand | Google
model | Pixel 9 Pro
name | Google Pixel 9 Pro
type | Mobile

3
--
architecture | aarch64
brand | Samsung
model | SM-S918B
name | Samsung SM-S918B
type | Mobile

4
--
architecture | aarch64
brand | Google
model | Pixel 4a
name | Google Pixel 4a
type | Mobile

From the app we have only 2 calls for release. Is there to check something like isReleased()? to safely call the release().

Contributor guide

Open the contributing guide

Research direction

Start with the crash stack at RefCountDelegate.release, DefaultEglCoreFactory.onEglCoreReleased, and DefaultVideoClientController.stopAndDestroy. Reproduce calls ending with multiple participants and compare the app's two release calls with the SDK's release path. Done means repeated call endings no longer produce the refcount exception.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
audio-video-rtc, mobile-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.