Shabinder / SpotiFlyer

Kotlin Multiplatform Music Downloader, Supports Spotify / Gaana / Youtube Music / Jio Saavn / SoundCloud.
https://app.spotiflyer.in/
GNU General Public License v3.0
10.4k stars 776 forks source link

[BUG] : a few songs won't download #2635

Closed NicZShadow closed 1 year ago

NicZShadow commented 1 year ago

Describe the bug: I tried to download a few songs, but some of them won't download

Media Links Used: https://open.spotify.com/playlist/6AQFenzM9p6aunv04fGut2?si=kzF3v9eXR_uXssHqw4Rv2A&pt=d5b77374eb1ca07969a0a8afbbed463a

Expected behavior Download all 19 songs

Screenshots: Screenshot_2023-04-12-23-07-43-416_com shabinder spotiflyer

StackTrace:

java.lang.Exception: off=0, len=2096 out of bounds (size=0)
    at com.shabinder.spotiflyer.service.ForegroundService$enqueueDownload$2.emit(ForegroundService.kt:6)
    at com.shabinder.spotiflyer.service.ForegroundService$enqueueDownload$2.emit(ForegroundService.kt:1)
    at com.shabinder.common.core_components.file_manager.FileManagerKt$downloadFile$4.invokeSuspend(FileManager.kt:54)
    at com.shabinder.common.core_components.file_manager.FileManagerKt$downloadFile$4.invoke(Unknown Source:11)
    at com.shabinder.common.core_components.file_manager.FileManagerKt$downloadFile$4.invoke(Unknown Source:6)
    at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catch$$inlined$unsafeFlow$1.collect(SafeCollector.common.kt:94)
    at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catch$$inlined$unsafeFlow$1$1.invokeSuspend(Unknown Source:12)
    at h7.a.resumeWith(ContinuationImpl.kt:10)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55)
    at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55)
    at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55)
    at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55)
    at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55)
    at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
    at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12)
    at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

Device Info (please complete the following information):

Shabinder commented 1 year ago

Spotiflyer is discontinued, please install Soundbound with our new plugins.