-
Notifications
You must be signed in to change notification settings - Fork 627
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
librespot crashes - main thread panic #103
Comments
Comment by kingosticks I would suggest you run RUST_BACKTRACE=1 and provide the backtrace. |
Comment by pwitka2 Here is a backtrace, but app crashes in different place: |
Comment by kingosticks Raspotify seem to have decided to strip the binary. That's not helpful. |
Following a conversation with the dev of raspotify he was going to release a new version based on this fork. I'd wait for that and try again. |
Just checked he's already done it: https://github.com/dtcooper/raspotify/releases/tag/0.10 |
This issue is still present, I had it this morning. It's like he said, it crops up after no music has been playing for a while (and potentially internet has disconnected/reconnected). I'll run with a backtrace later and see if i can get a trace. |
@kingosticks @ComlOnline here is a backtrace for this issue. I triggered it by playing a song through librespot, then disconnecting the internet and waiting for the buffered music to finish playing. What looks to happen is at the end of the song, the track load is called, and since it is disconnected, the session is dropped, and this is not handled. Full trace below:
|
I can add this happens when connection to the Internet is dropped (router up, but DSL dies). Would it be at least possible that the process:
really dies on crash, so If it's fixed, we need to wait for next release of |
From
This method will not catch panics from polling the future f. If the future panics then it's the responsibility of the caller to catch that panic and handle it as appropriate. Is that done in session.rs? If so, where? If not, where should it be done and what should it do? |
I'm not sure where this is implemented exactly, as I haven't looked at the code that handles this, but it's my understanding that the session logic is due for a rewrite to enable handling of things like reconnection, as it has been mentioned several times in the past, most recently by @plietar in Gitter on Feb 8:
Hence, I've created #134 to track suggestions/improvements that can be made to the existing session logic, or in a rewrite of it. |
Since this is just a re-connection issue I'm going to close in favour of #134 |
Issue by pwitka2
Monday Jan 22, 2018 at 20:10 GMT
Originally opened as plietar/librespot#273
librespot crashes with such error message:
INFO:librespot::player: Track "Sweet Pea" loaded
thread 'main' panicked at 'Box', core/src/session.rs:83:42
note: Run with
RUST_BACKTRACE=1
for a backtrace.It happened after long idle (paused) time.
I have raspbian wheezy
raspotify 0.9.1~librespot.20171005T125424Z.8971d3a
The text was updated successfully, but these errors were encountered: