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
tarnish crashes when built using Toltec’s toolchain #96
Comments
Well that's interesting, I wasn't seeing that on my device. This could be related to the issue. Looking at my code, I don't expect it to fail if it fails to detect a charger, but I'd like to be sure. @matteodelabre what does
I do have a couple places that read from the settings file, I might need to look into moving it to a single instance as it could be a timing issue between the threads. |
It reports |
@matteodelabre Are you using the cable that came with the device? |
Yes I am. I also tested with other cables and it does not seem to make a difference. |
Interesting. It's reporting as |
@matteodelabre would you be able to test against the v2.1 branch to see if this behaviour is still exhibited? |
Did a quick bisect and it seems like you fixed the issue with commit cabf05a. Now it runs perfectly even when compiled with Toltec’s toolchain. Thanks! |
@matteodelabre Perfect! |
Describe the bug
When built using Toltec’s
qt:v1.1
image, tarnish crashes with the following output:To Reproduce
docker container run -it --rm ghcr.io/toltec-dev/qt:v1.1
curl -L https://github.com/Eeems/oxide/archive/v2.0-beta.zip -o oxide.zip apt-get -yqq update && apt-get -yqq install unzip unzip oxide.zip
tarnish
.Expected behavior
No crash.
Screenshots
—
Version Information:
Additional context
When building in debug mode (by passing
CONFIG+=debug
to qmake), the crash disappears. When building in release with debug symbols mode (withCONFIG+=release CONFIG+=force_debug_info
), the crash comes back, and we can investigate further with gdb.The problem may be thread-related, as
terminate called without an active exception
is the message given by the C++ standard library when a thread object that was not joined or detached gets destructed. But it could be something else.When tracing the crash with gdb, it happens somewhere in the constructor of AppsAPI, but not always at the same line depending on whether you have an existing
.config/Eeems/tarnish.conf
file, which could indicate a race condition somewhere.I’m unfortunately not able to switch threads with Entware’s gdb package to further investigate.
The only outstanding difference that I can see between the reMarkable-provided toolchain and the Toltec qt image is that the former contains gcc v7.3.0 and the later v8.3.0.
The text was updated successfully, but these errors were encountered: