Bash integration: Dont fail if the user enabled failglob in their bashrc

BASH is by *far* the most buggy and least featureful of the three shells.
Fix #6119
This commit is contained in:
Kovid Goyal 2023-03-19 21:05:29 +05:30
parent 47d7e812a3
commit 5f9b520ca0
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -245,7 +245,11 @@ _ksi_main() {
if [[ -n "${_ksi_prompt[ps2]}" ]]; then if [[ -n "${_ksi_prompt[ps2]}" ]]; then
_ksi_prompt[ps2]="${_ksi_prompt[start_mark]}${_ksi_prompt[ps2]}${_ksi_prompt[end_mark]}" _ksi_prompt[ps2]="${_ksi_prompt[start_mark]}${_ksi_prompt[ps2]}${_ksi_prompt[end_mark]}"
fi fi
# BASH aborts the entire script when doing unset with failglob set, somebody should report this upstream
oldval=$(builtin shopt -p failglob)
builtin shopt -u failglob
builtin unset _ksi_prompt[start_mark] _ksi_prompt[end_mark] _ksi_prompt[start_suffix_mark] _ksi_prompt[end_suffix_mark] _ksi_prompt[start_secondary_mark] _ksi_prompt[end_secondary_mark] builtin unset _ksi_prompt[start_mark] _ksi_prompt[end_mark] _ksi_prompt[start_suffix_mark] _ksi_prompt[end_suffix_mark] _ksi_prompt[start_secondary_mark] _ksi_prompt[end_secondary_mark]
builtin eval "$oldval"
# install our prompt command, using an array if it is unset or already an array, # install our prompt command, using an array if it is unset or already an array,
# otherwise append a string. We check if _ksi_prompt_command exists as some shell # otherwise append a string. We check if _ksi_prompt_command exists as some shell