shaka-player-embedded
shaka-player-embedded copied to clipboard
Crashes when releasing a persistent license
Overview
Releasing a persistent license causes a crash due to an assertion inside the widevine cdm plugin.
Build environment
- macOS Big Sur (11.5.1)
- shaka-player-embedded/master
- Xcode 11.7
- commit 180462a1bb6ea0642f0681486cb41448c167b54f
- shaka-player-embedded/master/sample_xcode_project
- Xcode 13.2.1
- commit 180462a1bb6ea0642f0681486cb41448c167b54f with patches
- Widevine CDM 15.2.4
- commit/df86ca975b8c03da33771736fa81078b22d0507b
Execution environment
iPhone 13 mini (iOS 15.5)
Steps to reproduce
- build "ShakaPlayerEmbedded"
- place both of .framework on //sample_xcode_project
- add widevine_cdm_secured_ios.framework to project
- apply the attached patches
- run the app
- long press "shaka-proxy / angel-one" and select "Download"
- wait for download completion
- long press "shaka-proxy / angel-one" and select "Remove"
As a result, the app crashes with a failed assertion as follows:
Assertion failed: (got_server_certificate_), function Update, file /<cdm_dir>/shaka_plugin/widevine_implementation.cc, line 357.
Supplements
- Explicitly specifying 'serverCertificate' before instantiating Storage (via Player) escapes the crash.
- I commented out the assertion as a test, and then the deletion process completed.