forked from lix-project/lix
Merge branch 'fix/issue-1757' of git://github.com/dtzWill/nix
This commit is contained in:
commit
6a0dd63508
|
@ -186,7 +186,16 @@ bool NixRepl::getLine(string & input, const std::string &prompt)
|
|||
{
|
||||
char * s = linenoise(prompt.c_str());
|
||||
Finally doFree([&]() { free(s); });
|
||||
if (!s) return false;
|
||||
if (!s) {
|
||||
switch (auto type = linenoiseKeyType()) {
|
||||
case 1: // ctrl-C
|
||||
return true;
|
||||
case 2: // ctrl-D
|
||||
return false;
|
||||
default:
|
||||
throw Error(format("Unexpected linenoise keytype: %1%") % type);
|
||||
}
|
||||
}
|
||||
input += s;
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue