maxrave-dev / maxrave-dev/SimpMusic

App crash on PC.

Open
#2,521 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Kotlin
Stars
11.4k
Forks
599
Avg merge
3d 18h
Merged PRs (30d)
7

Description

Duplicate Check
  • I confirm I searched for existing reports and found no duplicates.
Describe the Bug

I was playing music using the mini player, tried to skip the song and it crashed. Attached below is the error screenshot and error code.

java.io.IOException: Unable to rename C:\Users\User.simpmusic\settings.preferences_pb.tmp to C:\Users\User.simpmusic\settings.preferences_pb. This likely means that there are multiple instances of DataStore for this file. Ensure that you are only creating a single instance of datastore for this file.
at androidx.datastore.a.r.a(FileStorage.kt)
at androidx.datastore.a.k.a(DataStoreImpl.kt)
at androidx.datastore.a.k$r.invokeSuspend(DataStoreImpl.kt)
at androidx.datastore.a.k$r.a(DataStoreImpl.kt)
at androidx.datastore.a.k$r.invoke(DataStoreImpl.kt)
at androidx.datastore.a.G.a(SingleProcessCoordinator.kt)
at androidx.datastore.a.k.a(DataStoreImpl.kt)
at androidx.datastore.a.k.a(DataStoreImpl.kt)
at androidx.datastore.a.k$g.invokeSuspend(DataStoreImpl.kt)
at androidx.datastore.a.k$g.a(DataStoreImpl.kt)
at androidx.datastore.a.k$g.invoke(DataStoreImpl.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatched(Undispatched.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
at androidx.datastore.a.k.a(DataStoreImpl.kt)
at androidx.datastore.a.k.a(DataStoreImpl.kt)
at androidx.datastore.a.k$t.invokeSuspend(DataStoreImpl.kt)
at androidx.datastore.a.k$t.a(DataStoreImpl.kt)
at androidx.datastore.a.k$t.invoke(DataStoreImpl.kt)
at androidx.datastore.a.F$a.invokeSuspend(SimpleActor.kt)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt)
at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@5ee4ae26, java.util.concurrent.Executors$AutoShutdownDelegatedExecutorService@7f588a72]

Image
Steps to Reproduce

Play music in mini player
skip then crash.

Expected Behavior

Expected to skip song.

App Version

2.1.0

Android Version

N/A

Device Model

Windows 11

Custom ROM
  • I am using a custom ROM
Custom ROM Name (if applicable)

No response

Screenshots (optional)

No response

Log / Error Details

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the crash on Windows 11 from the mini player while skipping a song, then inspect the DataStore stack trace around FileStorage.kt, DataStoreImpl.kt, and SingleProcessCoordinator.kt. Trace the use of settings.preferences_pb and verify that skipping no longer crashes the app.

Written by the indexing model from the issue text.

Assessment

Tech stack
kotlin
Domain
desktop-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.