From 0dedfa35ea7038fca18b7dc1ccb47638b8ecdebd Mon Sep 17 00:00:00 2001 From: Blatzar <46196380+Blatzar@users.noreply.github.com> Date: Sun, 18 Sep 2022 20:06:13 +0200 Subject: [PATCH] Sflix fix --- SflixProvider/build.gradle.kts | 2 +- .../kotlin/com/lagradost/SflixProvider.kt | 20 +++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/SflixProvider/build.gradle.kts b/SflixProvider/build.gradle.kts index 0e1d3c0..8e75aaf 100644 --- a/SflixProvider/build.gradle.kts +++ b/SflixProvider/build.gradle.kts @@ -1,5 +1,5 @@ // use an integer for version numbers -version = 6 +version = 7 cloudstream { diff --git a/SflixProvider/src/main/kotlin/com/lagradost/SflixProvider.kt b/SflixProvider/src/main/kotlin/com/lagradost/SflixProvider.kt index 55c9a7f..db33e3b 100644 --- a/SflixProvider/src/main/kotlin/com/lagradost/SflixProvider.kt +++ b/SflixProvider/src/main/kotlin/com/lagradost/SflixProvider.kt @@ -304,6 +304,7 @@ open class SflixProvider : MainAPI() { data class SourceObjectEncrypted( @JsonProperty("sources") val sources: String?, + @JsonProperty("encrypted") val encrypted: Boolean?, @JsonProperty("sources_1") val sources1: String?, @JsonProperty("sources_2") val sources2: String?, @JsonProperty("sourcesBackup") val sourcesBackup: String?, @@ -779,16 +780,19 @@ open class SflixProvider : MainAPI() { ) ) + println("Sflix response: $response") val sourceObject = if (response.text.contains("encrypted") && decryptKey != null) { val encryptedMap = response.parsedSafe() - val sources = - encryptedMap?.sources ?: throw RuntimeException("NO SOURCES $encryptedMap") - - val decrypted = decryptMapped>(sources, decryptKey) - SourceObject( - sources = decrypted, - tracks = encryptedMap.tracks - ) + val sources = encryptedMap?.sources + if (sources == null || encryptedMap.encrypted == false) { + response.parsedSafe() + } else { + val decrypted = decryptMapped>(sources, decryptKey) + SourceObject( + sources = decrypted, + tracks = encryptedMap.tracks + ) + } } else { response.parsedSafe() } ?: return@suspendSafeApiCall