mirror of
https://github.com/librespot-org/librespot.git
synced 2026-04-27 08:15:50 +03:00
[GH-ISSUE #182] librespot panicks on one song, but will eventually play it. #124
Labels
No labels
A-Alsa
SpotifyAPI
Tokio 1.0
audio
bug
can't reproduce
compilation
dependencies
duplicate
enhancement
good first issue
help wanted
high priority
imported
imported
invalid
new api
pull-request
question
reverse engineering
wiki
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/librespot#124
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @cortegedusage on GitHub (Mar 5, 2018).
Original GitHub issue: https://github.com/librespot-org/librespot/issues/182
Listening to a playlist I noticed librespot crashing on a certain song.
I can reproduce it everytime, now the strange thing is,
sometimes it will play.
I'm running librespot on volumio2 with the plugin from balbuze.
So when it crashes it restarts when after a crash I select the device again, it wil play...
I got the following error when running librespot from the command line with verbose output.
hope it does make sense.
INFO:librespot::player: Loaded Track "Death Don't Have No Mercy" by Rev. Gary Da vis from Harlem Street Singer (Remastered)
thread '' panicked at 'index out of bounds: the len is 2 but the index is 2', /checkout/src/liballoc/vec.rs:1551:10
note: Some details are omitted, run with
RUST_BACKTRACE=fullfor a verbose bac ktrace.stack backtrace:
0: std::sys::unix::backtrace::tracing:👿:unwind_backtrace
at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: std::sys_common::backtrace::print
at /checkout/src/libstd/sys_common/backtrace.rs:68
at /checkout/src/libstd/sys_common/backtrace.rs:57
2: std::panicking::default_hook::{{closure}}
at /checkout/src/libstd/panicking.rs:381
3: std::panicking::default_hook
at /checkout/src/libstd/panicking.rs:397
4: std::panicking::rust_panic_with_hook
at /checkout/src/libstd/panicking.rs:577
5: std::panicking::begin_panic
at /checkout/src/libstd/panicking.rs:538
6: std::panicking::begin_panic_fmt
at /checkout/src/libstd/panicking.rs:522
7: rust_begin_unwind
at /checkout/src/libstd/panicking.rs:498
8: core::panicking::panic_fmt
at /checkout/src/libcore/panicking.rs:71
9: core::panicking::panic_bounds_check
at /checkout/src/libcore/panicking.rs:58
10: librespot::player::PlayerInternal::handle_command
11: librespot::player::PlayerInternal::run
thread 'main' panicked at 'called
Result::unwrap()on anErrvalue: "SendError(..)"', /checkout/src/libcore/result.rs:916:5stack backtrace:
0: std::sys::unix::backtrace::tracing:👿:unwind_backtrace
at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: std::sys_common::backtrace::print
at /checkout/src/libstd/sys_common/backtrace.rs:68
at /checkout/src/libstd/sys_common/backtrace.rs:57
2: std::panicking::default_hook::{{closure}}
at /checkout/src/libstd/panicking.rs:381
3: std::panicking::default_hook
at /checkout/src/libstd/panicking.rs:397
4: std::panicking::rust_panic_with_hook
at /checkout/src/libstd/panicking.rs:577
5: std::panicking::begin_panic
at /checkout/src/libstd/panicking.rs:538
6: std::panicking::begin_panic_fmt
at /checkout/src/libstd/panicking.rs:522
7: rust_begin_unwind
at /checkout/src/libstd/panicking.rs:498
8: core::panicking::panic_fmt
at /checkout/src/libcore/panicking.rs:71
9: core::result::unwrap_failed
10: librespot::player::Player::load
11: librespot::spirc::SpircTask::load_track
12: <librespot::spirc::SpircTask as futures::future::Future>::poll
13: <librespot::Main as futures::future::Future>::poll
14: futures::task_impl::std::set
15: <scoped_tls::ScopedKey>::set
16: tokio_core::reactor::Core::run
17: librespot::main
18: std::rt::lang_start::{{closure}}
19: std::panicking::try::do_call
at /checkout/src/libstd/rt.rs:59
at /checkout/src/libstd/panicking.rs:480
20: __rust_maybe_catch_panic
at /checkout/src/libpanic_unwind/lib.rs:101
21: std::rt::lang_start_internal
at /checkout/src/libstd/panicking.rs:459
at /checkout/src/libstd/panic.rs:365
at /checkout/src/libstd/rt.rs:58
22: main
23: __libc_start_main
ERROR:librespot::player: Player thread panicked!
A quick search didn't gave me anyting.
So hope you could help.
many thanks!
@plietar commented on GitHub (Mar 6, 2018):
This seems to be a release build, so functions have been inlined and are missing from the stacktraces.
Could you rebuild librespot in debug mode (just omit the
--releaseargument when calling cargo).Thanks
@ashthespy commented on GitHub (Mar 6, 2018):
@cortegedusage @plietar
The error is from my additions to get get metadata out via udp for Volumio.
The error is because this track (
7DtrCdyysCDj5BlVKcassv) doesn't have a600x600image that I am trying to access (at index 2).Will make it more robust.
@cortegedusage commented on GitHub (Mar 6, 2018):
ah
@plietar I didn't realise the additions from @ashthespy weren't implemented in this repo.
Should I remove this thread?
@ashthespy Thanks for your quick reply. Looking forward for a fix,
and both thanks for your hard work, I'm a heavy user both at home and at work.
cheers
@ashthespy commented on GitHub (Mar 6, 2018):
@cortegedusage I'd say yes, close it here, can track the issue either at the volumio plugin repo, or the fork.
@cortegedusage commented on GitHub (Mar 7, 2018):
closing this,
wrong repo.
Will report in volspotconnect2 repo