Mercurial > mxe-octave
diff src/readline-0-009-fix-issue-where-directory-name-.patch @ 7042:142471155843
readline: update to 8.2 patch level 10
Add upstream patches for readline.
* dist-files.mk: Update list with new patches.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Wed, 17 Jan 2024 14:32:33 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/readline-0-009-fix-issue-where-directory-name-.patch Wed Jan 17 14:32:33 2024 +0100 @@ -0,0 +1,57 @@ +From 3853739c28a9777d30ff65e8448e8f1a2898f3f2 Mon Sep 17 00:00:00 2001 +From: Chet Ramey <chet.ramey@case.edu> +Date: Sun, 14 Jan 2024 15:20:44 -0500 +Subject: [PATCH 09/10] Readline-8.2 patch 9: fix issue where directory name + being completed needs both tilde expansion and dequoting + +--- + complete.c | 14 ++++++++++---- + patchlevel | 2 +- + 2 files changed, 11 insertions(+), 5 deletions(-) + +diff --git a/complete.c b/complete.c +index e5d224e..c9e0098 100644 +--- a/complete.c ++++ b/complete.c +@@ -2526,7 +2526,8 @@ rl_filename_completion_function (const char *text, int state) + temp = tilde_expand (dirname); + xfree (dirname); + dirname = temp; +- tilde_dirname = 1; ++ if (*dirname != '~') ++ tilde_dirname = 1; /* indicate successful tilde expansion */ + } + + /* We have saved the possibly-dequoted version of the directory name +@@ -2545,11 +2546,16 @@ rl_filename_completion_function (const char *text, int state) + xfree (users_dirname); + users_dirname = savestring (dirname); + } +- else if (tilde_dirname == 0 && rl_completion_found_quote && rl_filename_dequoting_function) ++ else if (rl_completion_found_quote && rl_filename_dequoting_function) + { +- /* delete single and double quotes */ ++ /* 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 = savestring (users_dirname); ++ dirname = temp; + } + directory = opendir (dirname); + +diff --git a/patchlevel b/patchlevel +index 6c10f12..c0ac809 100644 +--- a/patchlevel ++++ b/patchlevel +@@ -1,3 +1,3 @@ + # Do not edit -- exists only for use by patch + +-8 ++9 +-- +2.38.0.windows.1 +