diff --git a/app/src/main/java/com/lagradost/cloudstream3/utils/M3u8Helper.kt b/app/src/main/java/com/lagradost/cloudstream3/utils/M3u8Helper.kt index 5b9eb6cd..6fcb3a17 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/utils/M3u8Helper.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/utils/M3u8Helper.kt @@ -118,7 +118,12 @@ class M3u8Helper { ) public fun hlsYield(qualities: List): Iterator { - val selected = selectBest(qualities)!! + if (qualities.isEmpty()) return listOf().iterator() + + var selected = selectBest(qualities) + if (selected == null) { + selected = qualities[0] + } val headers = selected.headers val streams = qualities.map { m3u8Generation(it) }.flatten() @@ -136,7 +141,7 @@ class M3u8Helper { val encryptionState = isEncrypted(m3u8Data) if (encryptionState) { - val match = ENCRYPTION_URL_IV_REGEX.find(m3u8Data)!!.destructured + val match = ENCRYPTION_URL_IV_REGEX.find(m3u8Data)!!.destructured // its safe to assume that its not going to be null encryptionUri = match.component2() if (!isCompleteUrl(encryptionUri)) {