This looks like a bug in readline 8.0

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff76637da in _rl_update_final () at ../display.c:2972
2972      botline_length = VIS_LLEN(_rl_vis_botlin) - woff;


Once the macros are expanded this is attempting to deference the NULL
pointer line_state_visible->lbreaks. This pointer is initialized in
rl_display, but in the password entry case the standard rl_display is
overridden and it is never initialized.

This was ok in version 7.0 as full_lines is set to zero and VIS_LLEN was
not called.
Relevant diff below.

_rl_update_final ()

2968
full_lines = 1;
}
_rl_move_vert (_rl_vis_botlin);
• woff = W_OFFSET(_rl_vis_botlin, wrap_offset);
• botline_length = VIS_LLEN(_rl_vis_botlin) - woff;
/* If we've wrapped lines, remove the final xterm line-wrap flag. */
• if (full_lines && _rl_term_autowrap && (VIS_LLEN(_rl_vis_botlin) ==
_rl_screenwidth))
• if (full_lines && _rl_term_autowrap && botline_length == _rl_screenwidth)

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to