Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Factory:zSystems
readline
readline82-010
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File readline82-010 of Package readline
READLINE PATCH REPORT ===================== Readline-Release: 8.2 Patch-ID: readline82-010 Bug-Reported-by: Martin Castillo <castilma@uni-bremen.de> Bug-Reference-ID: <2d42153b-cf65-caba-dff1-cd3bc6268c7e@uni-bremen.de> Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2023-01/msg00000.html Bug-Description: Fix the case where text to be completed from the line buffer (quoted) is compared to the common prefix of the possible matches (unquoted) and the quoting makes the former appear to be longer than the latter. Readline assumes the match doesn't add any characters to the word and doesn't display multiple matches. Patch (apply with `patch -p0'): *** ../readline-8.2-patched/complete.c Tue Apr 5 10:47:06 2022 --- complete.c Sat Jan 7 14:19:45 2023 *************** *** 2032,2038 **** text = rl_copy_text (start, end); matches = gen_completion_matches (text, start, end, our_func, found_quote, quote_char); /* nontrivial_lcd is set if the common prefix adds something to the word being completed. */ ! nontrivial_lcd = matches && compare_match (text, matches[0]) != 0; if (what_to_do == '!' || what_to_do == '@') tlen = strlen (text); --- 2038,2060 ---- text = rl_copy_text (start, end); matches = gen_completion_matches (text, start, end, our_func, found_quote, quote_char); + /* If TEXT contains quote characters, it will be dequoted as part of + generating the matches, and the matches will not contain any quote + characters. We need to dequote TEXT before performing the comparison. + Since compare_match performs the dequoting, and we only want to do it + once, we don't call compare_matches after dequoting TEXT; we call + strcmp directly. */ /* nontrivial_lcd is set if the common prefix adds something to the word being completed. */ ! if (rl_filename_completion_desired && rl_filename_quoting_desired && ! rl_completion_found_quote && rl_filename_dequoting_function) ! { ! char *t; ! t = (*rl_filename_dequoting_function) (text, rl_completion_quote_character); ! xfree (text); ! text = t; ! nontrivial_lcd = matches && strcmp (text, matches[0]) != 0; ! } ! else ! nontrivial_lcd = matches && strcmp (text, matches[0]) != 0; if (what_to_do == '!' || what_to_do == '@') tlen = strlen (text); *** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500 --- patchlevel 2014-03-21 08:28:40.000000000 -0400 *************** *** 1,3 **** # Do not edit -- exists only for use by patch ! 9 --- 1,3 ---- # Do not edit -- exists only for use by patch ! 10
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor