SHA256
1
0
forked from pool/readline
readline/readline82-009

74 lines
2.2 KiB
Plaintext

READLINE PATCH REPORT
=====================
Readline-Release: 8.2
Patch-ID: readline82-009
Bug-Reported-by: Stefan H. Holek <stefan@epy.co.at>
Bug-Reference-ID: <50F8DA45-B7F3-4DE1-AB94-19AE42649CDC@epy.co.at>
Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-10/msg00021.html
Bug-Description:
Fix issue where the directory name portion of the word to be completed (the
part that is passed to opendir()) requires both tilde expansion and dequoting.
Readline only performed tilde expansion in this case, so filename completion
would fail.
Patch (apply with `patch -p0'):
*** ../readline-8.2-patched/complete.c 2022-04-05 10:47:06.000000000 -0400
--- complete.c 2022-10-26 15:08:51.000000000 -0400
***************
*** 2527,2531 ****
xfree (dirname);
dirname = temp;
! tilde_dirname = 1;
}
--- 2527,2532 ----
xfree (dirname);
dirname = temp;
! if (*dirname != '~')
! tilde_dirname = 1; /* indicate successful tilde expansion */
}
***************
*** 2546,2554 ****
users_dirname = savestring (dirname);
}
! else if (tilde_dirname == 0 && rl_completion_found_quote && rl_filename_dequoting_function)
{
! /* delete single and double quotes */
xfree (dirname);
! dirname = savestring (users_dirname);
}
directory = opendir (dirname);
--- 2547,2560 ----
users_dirname = savestring (dirname);
}
! else if (rl_completion_found_quote && rl_filename_dequoting_function)
{
! /* We already ran users_dirname through the dequoting function.
! If tilde_dirname == 1, we successfully performed tilde expansion
! on dirname. Now we need to reconcile those results. We either
! just copy the already-dequoted users_dirname or tilde expand it
! if we tilde-expanded dirname. */
! temp = tilde_dirname ? tilde_expand (users_dirname) : savestring (users_dirname);
xfree (dirname);
! dirname = temp;
}
directory = opendir (dirname);
*** ../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
! 8
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 9