Skip to content

terminfo parser cannot handle ncurses 6.4's screen.xterm-256color #51110

Closed
@maleadt

Description

@maleadt

As noticed on Arch Linux, in a screen session:

ERROR: DimensionMismatch: arrays could not be broadcast to a common size; got a dimension with lengths 75 and 76
Stacktrace:
  [1] _bcs1
    @ Base ./broadcast.jl:519 [inlined]
  [2] _bcs
    @ Base ./broadcast.jl:513 [inlined]
  [3] broadcast_shape
    @ Base ./broadcast.jl:507 [inlined]
  [4] combine_axes
    @ Base ./broadcast.jl:488 [inlined]
  [5] instantiate
    @ Base ./broadcast.jl:302 [inlined]
  [6] materialize
    @ Base ./broadcast.jl:867 [inlined]
  [7] extendedterminfo(data::IOStream; NumInt::Type{UInt32})
    @ Base ./terminfo.jl:145
  [8] read(data::IOStream, ::Type{Base.TermInfoRaw})
    @ Base ./terminfo.jl:110
  [9] #436
    @ Base ./io.jl:486 [inlined]
 [10] open(f::Base.var"#436#437"{Base.TermInfoRaw}, args::String; kwargs::@Kwargs{})
    @ Base ./io.jl:396
 [11] open
    @ Base ./io.jl:393 [inlined]
 [12] read
    @ Base ./io.jl:486 [inlined]
 [13] load_terminfo(term::String)
    @ Base ./terminfo.jl:241
 [14] (::Base.var"#1047#1049"{Bool, Symbol, Bool})(REPL::Module)
    @ Base ./client.jl:417
 [15] #invokelatest#2
    @ Base ./essentials.jl:892 [inlined]
 [16] invokelatest
    @ Base ./essentials.jl:889 [inlined]
 [17] run_main_repl(interactive::Bool, quiet::Bool, banner::Symbol, history_file::Bool, color_set::Bool)
    @ Base ./client.jl:415
 [18] exec_options(opts::Base.JLOptions)
    @ Base ./client.jl:332
 [19] _start()
    @ Base ./client.jl:552

MWE:

TERM=screen.xterm-256color julia +dev

... or:

read(open("/lib/terminfo/s/screen.xterm-256color"), Base.TermInfoRaw)

screen.xterm-256color.zip

x-ref: #50797 (cc @tecosaur)

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedIndicates that a maintainer wants help on an issue or pull requestregressionRegression in behavior compared to a previous version

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions