mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
patch 8.2.4841: empty string considered an error for expand()
Problem: Empty string considered an error for expand() when 'verbose' is set. (Christian Brabandt) Solution: Do not give an error for an empty result. (closes #10307)
This commit is contained in:
@@ -4924,7 +4924,7 @@ expand_filename(
|
||||
* Try to find a match at this position.
|
||||
*/
|
||||
repl = eval_vars(p, eap->arg, &srclen, &(eap->do_ecmd_lnum),
|
||||
errormsgp, &escaped);
|
||||
errormsgp, &escaped, TRUE);
|
||||
if (*errormsgp != NULL) // error detected
|
||||
return FAIL;
|
||||
if (repl == NULL) // no match found
|
||||
@@ -9045,8 +9045,9 @@ eval_vars(
|
||||
int *usedlen, // characters after src that are used
|
||||
linenr_T *lnump, // line number for :e command, or NULL
|
||||
char **errormsg, // pointer to error message
|
||||
int *escaped) // return value has escaped white space (can
|
||||
int *escaped, // return value has escaped white space (can
|
||||
// be NULL)
|
||||
int empty_is_error) // empty result is considered an error
|
||||
{
|
||||
int i;
|
||||
char_u *s;
|
||||
@@ -9348,7 +9349,7 @@ eval_vars(
|
||||
}
|
||||
}
|
||||
|
||||
if (resultlen == 0 || valid != VALID_HEAD + VALID_PATH)
|
||||
if (empty_is_error && (resultlen == 0 || valid != VALID_HEAD + VALID_PATH))
|
||||
{
|
||||
if (valid != VALID_HEAD + VALID_PATH)
|
||||
*errormsg = _(e_empty_file_name_for_percent_or_hash_only_works_with_ph);
|
||||
@@ -9389,7 +9390,7 @@ expand_sfile(char_u *arg)
|
||||
else
|
||||
{
|
||||
// replace "<sfile>" with the sourced file name, and do ":" stuff
|
||||
repl = eval_vars(p, result, &srclen, NULL, &errormsg, NULL);
|
||||
repl = eval_vars(p, result, &srclen, NULL, &errormsg, NULL, TRUE);
|
||||
if (errormsg != NULL)
|
||||
{
|
||||
if (*errormsg)
|
||||
|
Reference in New Issue
Block a user