-
Notifications
You must be signed in to change notification settings - Fork 15
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
ecode crashes with ctrl-v since eepp commit 3985d81 - Fix build #428
Comments
The problem seems to be from an earlier commit, maybe 2a88bac. With commit 577f2e3 there seems to be no issue. |
Hi, thanks for reporting it. Can you share the complete stack-trace? Since it's not crashing for me. Edit: also if you could clarify if this happened editing an specific language (and if using an specific LSP) or whatever information you can give me that could be useful. |
Which OS? Which arch? Using nightly builds or building locally? Almost no information! |
The language used is Plain Text. This is the stack trace:
I have no idea why the 'Thread 1 "ecode" received signal SIGABRT,' occurs; the only action performed is pasting using the mouse and clicking on Edit / Paste. |
You build locally or use the nightly builds from https://github.com/SpartanJ/eepp/releases/tag/nightly? Can you try the AppImage on https://github.com/SpartanJ/eepp/releases/tag/nightly? |
I build locally from git. The image from https://github.com/SpartanJ/eepp/releases/tag/nightly has not yet crashed so seems to work OK. |
Sadly, that's not the stack-trace, I need to see the calls stack to understand where it was produced. In gdb that's usually seen with the
I recommend a few things: So in short let's try to: $ user@eepp> rm -r ./obj
$ user@eepp> cd projects/linux/ecode
$ user@eepp> ./build.app.sh --with-debug-symbols in |
Thx for the info. I first tried a build using the script without --with-debug-symbols to see how it works. Once it had build I tested the result and to my surprise I could not reproduce the problem. I then embedded the script into a pkgbuild file and had a build system create a package from it. Again to my surpise the resulting ecode did reproduce the problem. Both times the same code is used, so the problem must be caused, or at least triggered, by soimething our package build system. |
@artix-artist That's really weird. Can you point me out where is the pkcbuild recipe? Maybe I can spot something, and also I would like to try it. |
@SpartanJ A pkgbuild file can be cloned or downloaded from the Arch User Repository: https://aur.archlinux.org/packages/ecode |
When doing some testing and checking I got this stack trace, maybe it helps:
|
Awesome, that's because yesterday I enabled to print the stack-traces, I was about to tell you. |
I found the factor that triggers the crash: When ecode is built with CXXFLAGS containing -D_GLIBCXX_ASSERTIONS the resulting code will be able to reproduce the crash. This flag/variable enables run-time bounds checking for C++ strings and containers, and this check gets triggered when pressing ctrl-v and maybe an empty clipboard. |
Yes, with the stack-trace the problem is obvious, I just pushed a fix. Basically it should crash if the paste contents are actually empty! Because it's trying to access to Fix here. |
Ah, good to hear an old bug has been fixed :-) |
Since eepp 'commit 3985d81 - Fix build', ecode crashes when pasting text using ctrl-v.
The error shown is:
/usr/include/c++/14.2.1/bits/basic_string.h:1364: constexpr std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_reference std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::back() const [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>; const_reference = const char32_t&]: Assertion '!empty()' failed.
The text was updated successfully, but these errors were encountered: