mirror of
https://github.com/fish-shell/fish-shell.git
synced 2025-03-05 04:39:39 +08:00

Commit e40eba358 (Treat text following quoted command substitution as quoted) made parse_util_locate_cmdsubst_range() aware of quoted command substitutions, by skipping surrounding text via quote_end(). However, it was not quite right. We fail to properly parse two consecutive command substitutions in the same string, because we don't maintain the quoting context across calls to parse_util_locate_cmdsubst_range(). Let's track that bit in a parameter. This allows us to get rid of the quote_end() hack. Also apply this to the other place where we call parse_util_locate_cmdsubst_range() in a loop (highlighting). Fixes #8500