Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • termion termion
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 67
    • Issues 67
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 24
    • Merge requests 24
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • redox-os
  • termiontermion
  • Issues
  • #175

Closed
Open
Created Jan 23, 2020 by Henri Lunnikivi@hegza

Reproducible crash on mouse-dragging from termion window to top of screen

Platform: Lenovo X220, Arch Linux, Awesome window manager, urxvt -terminal.

Tested with applications depending on termion: void, smith.

Reproduction:

  1. Start holding a mouse button anywhere in the terminal hosting a termion application.
  2. Touch top of the entire screen, while holding a mouse button.
  3. -> Application exits with exit code 101, which is rustc for "panic". Applications do not get a panic-backtrace.

More info:

  • Original issue I filed in void.
  • Other edges of screen do not cause the issue. It seems to be specifically the point where y=0.
  • Based on my investigation, the crash happens in void after calling either std::io::Write::flush() or after setting std_out = something, where std_out is of some compound termion type, like MouseTerminal<RawTerminal<AlternateScreen<Stdout>>>. Application crashes consistently, and very mysteriously at the point where the function that calls the above is supposed to return.
  • This is the function in void, that causes a crash as it returns.
Edited Feb 06, 2020 by Henri Lunnikivi
Assignee
Assign to
Time tracking