nix search: explicitly handle empty search string, fixes #1893

This is important since this is given as an example.
Other patterns containing "empty search string" will still
be handled differently on different platforms ("asdf|")
but that's less of an issue.
This commit is contained in:
Will Dietz 2018-02-25 16:38:13 -06:00
parent 3cac8734ac
commit 009cf9cd23

View file

@ -78,6 +78,11 @@ struct CmdSearch : SourceExprCommand, MixJSON
{
settings.readOnlyMode = true;
// Empty search string should match all packages
// Use "^" here instead of ".*" due to differences in resulting highlighting
// (see #1893 -- libc++ claims empty search string is not in POSIX grammar)
if (re.empty()) re = "^";
std::regex regex(re, std::regex::extended | std::regex::icase);
auto state = getEvalState();