lyswhut/lx-music-desktop · error · Error
toggle_source_failed
Error message
toggle_source_failed
What it means
Error "toggle_source_failed" thrown in lyswhut/lx-music-desktop.
Source
Thrown at src/renderer/core/music/utils.ts:265
isFromCache: boolean
}> => {
if (!await window.lx.apiInitPromise[0]) throw new Error('source init failed')
let musicInfo: LX.Music.MusicInfoOnline | null = null
let itemQuality: LX.Quality | null = null
// eslint-disable-next-line no-cond-assign
while (musicInfo = (musicInfos.shift()!)) {
if (retryedSource.includes(musicInfo.source)) continue
retryedSource.push(musicInfo.source)
if (!assertApiSupport(musicInfo.source)) continue
itemQuality = quality ?? getPlayQuality(appSetting['player.playQuality'], musicInfo)
if (!musicInfo.meta._qualitys[itemQuality]) continue
console.log('try toggle to: ', musicInfo.source, musicInfo.name, musicInfo.singer, musicInfo.interval)
onToggleSource(musicInfo)
break
}
if (!musicInfo || !itemQuality) throw new Error(window.i18n.t('toggle_source_failed'))
const cachedUrl = await getStoreMusicUrl(musicInfo, itemQuality)
if (cachedUrl && !isRefresh) return { url: cachedUrl, musicInfo, quality: itemQuality, isFromCache: true }
let reqPromise
try {
reqPromise = musicSdk[musicInfo.source].getMusicUrl(toOldMusicInfo(musicInfo), itemQuality).promise
} catch (err: any) {
reqPromise = Promise.reject(err)
}
// retryedSource.includes(musicInfo.source)
// eslint-disable-next-line @typescript-eslint/promise-function-async
return reqPromise.then(({ url, type }: { url: string, type: LX.Quality }) => {
return { musicInfo, url, quality: type, isFromCache: false }
// eslint-disable-next-line @typescript-eslint/promise-function-async
}).catch((err: any) => {
if (err.message == requestMsg.tooManyRequests) throw err
console.log(err)View on GitHub (pinned to 9c364b482e)
When it happens
Trigger: Thrown at src/renderer/core/music/utils.ts:265 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of lyswhut/lx-music-desktop@9c364b482e (2026-08-12).
Data as JSON: /api/errors/2212e498b08eafee.
Report an issue: GitHub.