Fix tsm_screen_resize()#12
Merged
Merged
Conversation
This was referenced Jan 14, 2026
Closed
38d97ed to
381e807
Compare
There was some problems with resizing: When resizing to a smaller number of rows, even if the current number of rows would fit, the first were removed. When resizing to a bigger number of rows, it's better to get more lines from the scrollback buffer, to be more consistent. Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
kdj0c
pushed a commit
to kdj0c/libtsm
that referenced
this pull request
Mar 31, 2026
This is a tentative to fix the following crash: #0 0x00007f0a572da874 in calc_line_len (line=0x231) at ../libtsm/src/tsm/tsm-selection.c:188 kmscon#1 copy_line (line=0x231, buf=buf@entry=0x5614ec13aa7b "", start=0, len=256) at ../libtsm/src/tsm/tsm-selection.c:207 kmscon#2 0x00007f0a572dad65 in copy_lines (con=0x5614eb42c730, start=<optimized out>, end=<optimized out>, buf=0x5614ec139160 "iled on output DP-2\n00:13:24.870 [wlr] [backend/drm/atomic.c:83] connector DP-2: Atomic commit failed: Device or resource busy\n00:13:24.870 [sway/desktop/output.c:307] Page-flip failed on output DP-2\n"..., pos=6427) at ../libtsm/src/tsm/tsm-selection.c:459 kmscon#3 tsm_screen_selection_copy (con=0x5614eb42c730, out=out@entry=0x5614eb3f2618) at ../libtsm/src/tsm/tsm-selection.c:520 kmscon#4 0x00005614bb685484 in copy_selection (term=<optimized out>) at ../kmscon/src/kmscon_terminal.c:608 kmscon#5 handle_pointer_button (term=0x5614eb3f24f0, ev=0x7ffc8c54e730) at ../kmscon/src/kmscon_terminal.c:666 kmscon#6 pointer_event (input=<optimized out>, ev=0x7ffc8c54e730, data=0x5614eb3f24f0) at ../kmscon/src/kmscon_terminal.c:711 kmscon#7 0x00005614bb688ce6 in shl_hook_call (hook=0x5614eb3f0290, parent=0x5614eb3f0220, arg=0x7ffc8c54e730) at ../kmscon/src/shl_hook.h:216 kmscon#8 shl_hook_call (hook=0x5614eb3f0290, parent=0x5614eb3f0220, arg=0x7ffc8c54e730) at ../kmscon/src/shl_hook.h:200 kmscon#9 pointer_dev_send_button (button=button@entry=0 '\000', pressed=<optimized out>, dbl_click=<optimized out>, dev=0x5614eb7d9270) at ../kmscon/src/uterm_input_pointer.c:60 kmscon#10 0x00005614bb68fa67 in pointer_dev_button (dev=<optimized out>, code=272, value=0) at ../kmscon/src/uterm_input_pointer.c:188 kmscon#11 notify_event (dev=<optimized out>, type=<optimized out>, code=272, value=0) at ../kmscon/src/uterm_input.c:61 kmscon#12 input_data_dev (data=<optimized out>, mask=<optimized out>, fd=<optimized out>) at ../kmscon/src/uterm_input.c:104 kmscon#13 0x00005614bb68be80 in ev_eloop_dispatch (loop=loop@entry=0x5614eb3ed830, timeout=timeout@entry=-1) at ../kmscon/src/eloop.c:830 kmscon#14 0x00005614bb68c53b in ev_eloop_run (loop=0x5614eb3ed830, timeout=-1) at ../kmscon/src/eloop.c:884 kmscon#15 0x00005614bb67b8d6 in main (argc=<optimized out>, argv=<optimized out>) at ../kmscon/src/kmscon_main.c:616 Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
kdj0c
pushed a commit
to kdj0c/libtsm
that referenced
this pull request
Mar 31, 2026
This is a tentative to fix the following crash: #0 0x00007f0a572da874 in calc_line_len (line=0x231) at ../libtsm/src/tsm/tsm-selection.c:188 kmscon#1 copy_line (line=0x231, buf=buf@entry=0x5614ec13aa7b "", start=0, len=256) at ../libtsm/src/tsm/tsm-selection.c:207 kmscon#2 0x00007f0a572dad65 in copy_lines (con=0x5614eb42c730, start=<optimized out>, end=<optimized out>, buf=0x5614ec139160 "iled on output DP-2\n00:13:24.870 [wlr] [backend/drm/atomic.c:83] connector DP-2: Atomic commit failed: Device or resource busy\n00:13:24.870 [sway/desktop/output.c:307] Page-flip failed on output DP-2\n"..., pos=6427) at ../libtsm/src/tsm/tsm-selection.c:459 kmscon#3 tsm_screen_selection_copy (con=0x5614eb42c730, out=out@entry=0x5614eb3f2618) at ../libtsm/src/tsm/tsm-selection.c:520 kmscon#4 0x00005614bb685484 in copy_selection (term=<optimized out>) at ../kmscon/src/kmscon_terminal.c:608 kmscon#5 handle_pointer_button (term=0x5614eb3f24f0, ev=0x7ffc8c54e730) at ../kmscon/src/kmscon_terminal.c:666 kmscon#6 pointer_event (input=<optimized out>, ev=0x7ffc8c54e730, data=0x5614eb3f24f0) at ../kmscon/src/kmscon_terminal.c:711 kmscon#7 0x00005614bb688ce6 in shl_hook_call (hook=0x5614eb3f0290, parent=0x5614eb3f0220, arg=0x7ffc8c54e730) at ../kmscon/src/shl_hook.h:216 kmscon#8 shl_hook_call (hook=0x5614eb3f0290, parent=0x5614eb3f0220, arg=0x7ffc8c54e730) at ../kmscon/src/shl_hook.h:200 kmscon#9 pointer_dev_send_button (button=button@entry=0 '\000', pressed=<optimized out>, dbl_click=<optimized out>, dev=0x5614eb7d9270) at ../kmscon/src/uterm_input_pointer.c:60 kmscon#10 0x00005614bb68fa67 in pointer_dev_button (dev=<optimized out>, code=272, value=0) at ../kmscon/src/uterm_input_pointer.c:188 kmscon#11 notify_event (dev=<optimized out>, type=<optimized out>, code=272, value=0) at ../kmscon/src/uterm_input.c:61 kmscon#12 input_data_dev (data=<optimized out>, mask=<optimized out>, fd=<optimized out>) at ../kmscon/src/uterm_input.c:104 kmscon#13 0x00005614bb68be80 in ev_eloop_dispatch (loop=loop@entry=0x5614eb3ed830, timeout=timeout@entry=-1) at ../kmscon/src/eloop.c:830 kmscon#14 0x00005614bb68c53b in ev_eloop_run (loop=0x5614eb3ed830, timeout=-1) at ../kmscon/src/eloop.c:884 kmscon#15 0x00005614bb67b8d6 in main (argc=<optimized out>, argv=<optimized out>) at ../kmscon/src/kmscon_main.c:616 Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
There was some problems with resizing:
When resizing to a smaller number of rows, even if the current number of rows would fit, the first were removed.
When resizing to a bigger number of rows, it's better to get more lines from the scrollback buffer, to be more consistent.
Fix #10