Skip to content
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

ICH asserts #559

Closed
ninjalj opened this issue Dec 27, 2021 · 2 comments · Fixed by #560
Closed

ICH asserts #559

ninjalj opened this issue Dec 27, 2021 · 2 comments · Fixed by #560
Labels
bug Something isn't working crash(-like) Bug that results in severe state corruption, lock-ups with recovery, or outright termination VT: Backend Virtual Terminal Backend (libterminal API)

Comments

@ninjalj
Copy link
Contributor

ninjalj commented Dec 27, 2021

Contour Terminal version

0.3.0-unreleased-master-6cca21f2

Installer source

Github: source code cloned

Operating System

Gentoo

Architecture

x86-64

Other Software

No response

Steps to reproduce

Just invoke ICH, e.g:

printf "\e[@"

Expected Behavior

Not crashing.

Actual Behavior

contour: /home/lj/src/term/contour/src/terminal/Line.h:239: Cell& terminal::Line<Cell, Optimize>::useCellAt(terminal::ColumnOffset) [with Cell = terminal::Cell; bool Optimize = false; terminal::ColumnOffset = crispy::boxed<int, terminal::detail::tags::ColumnOffset>]: La declaración `_column < ColumnOffset::cast_from(buffer_.size())' no se cumple.

========================================================================
  An internal error caused the terminal to crash ;-( 😭
-------------------------------------------------------

Please report this to https://github.com/contour-terminal/contour/issues/

Contour version: 0.3.0-unreleased-master-6cca21f2

Stack Trace:
------------
/home/lj/src/term/contour/src/crispy/StackTrace.cpp:89
/home/lj/src/term/contour/src/crispy/StackTrace.cpp:217
/home/lj/src/term/contour/src/contour/ContourApp.cpp:104
/home/lj/src/term/contour/src/contour/ContourApp.cpp:118
0x7fd0e0d64bd0
0x7fd0e0d64b24
0x7fd0e0d4e557
0x7fd0e0d4e431
0x7fd0e0d5d242
/home/lj/src/term/contour/src/terminal/Line.h:242
/home/lj/src/term/contour/src/terminal/Grid.cpp:212
/home/lj/src/term/contour/src/terminal/Screen.h:454
/home/lj/src/term/contour/src/terminal/Screen.cpp:1362
/home/lj/src/term/contour/src/terminal/Screen.cpp:1352
/home/lj/src/term/contour/src/terminal/Sequencer.cpp:1480
/home/lj/src/term/contour/src/terminal/Sequencer.cpp:1302
/home/lj/src/term/contour/src/terminal/Sequencer.cpp:1293
/home/lj/src/term/contour/src/terminal/Sequencer.cpp:1057
/home/lj/src/term/contour/src/terminal/Parser-impl.h:355
/home/lj/src/term/contour/src/terminal/Parser-impl.h:321
/home/lj/src/term/contour/src/terminal/Screen.cpp:550
/home/lj/src/term/contour/src/terminal/Terminal.cpp:725
/home/lj/src/term/contour/src/terminal/Terminal.cpp:230
/home/lj/src/term/contour/src/terminal/Terminal.cpp:190
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/bits/invoke.h:73 (discriminator 4)
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/bits/invoke.h:96
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/functional:402
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/functional:485
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/bits/invoke.h:60
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/bits/invoke.h:96
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/thread:244
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/thread:252
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include/g++-v9/thread:195
0x7fd0e1124f54
0x7fd0e2052e9e
0x7fd0e0e2786f
========================================================================

Additional notes

At src/terminal/Screen.cpp:1362 the following line:

auto column2 = &at(_lineNo, margin_.horizontal.to + ColumnOffset(1));

makes column2 point just beyond the last column.

@ninjalj ninjalj added the feature-request User requested features label Dec 27, 2021
@christianparpart
Copy link
Member

Oh damn. Please checkout the 0.2.x branch.

For the master branch I am currently fixing the quirks. I am super sorry for the inconvenience.
I will be taking care of ICH ASAP.

Many thanks and happy holidays

@uspasojevic96 uspasojevic96 added bug Something isn't working frontend Contour Terminal Emulator (GUI frontend) platform: linux topics that directly address Linux platform (any distro) stability and removed feature-request User requested features labels Dec 27, 2021
@christianparpart christianparpart linked a pull request Dec 27, 2021 that will close this issue
@christianparpart
Copy link
Member

@ninjalj Thanks for your report. I apparently didn't have a test case for that (only for when margins were set). The master branch just recently got merged a major grid rewrite. So there are still some (but not many) known issues I am working on hard to eliminate.

Many thanks for your patience. ;)

@christianparpart christianparpart added VT: Backend Virtual Terminal Backend (libterminal API) and removed frontend Contour Terminal Emulator (GUI frontend) platform: linux topics that directly address Linux platform (any distro) labels Dec 27, 2021
@whisperity whisperity added the crash(-like) Bug that results in severe state corruption, lock-ups with recovery, or outright termination label Apr 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working crash(-like) Bug that results in severe state corruption, lock-ups with recovery, or outright termination VT: Backend Virtual Terminal Backend (libterminal API)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants