1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 15:27:35 +00:00

LibLine: Change get_line to return a Result<String, Error>

This fixes a bunch of FIXME's in LibLine.
Also handles the case where read() would read zero bytes in vt_dsr() and
effectively block forever by erroring out.

Fixes #2370
This commit is contained in:
AnotherTest 2020-05-25 16:57:07 +04:30 committed by Andreas Kling
parent 1e30ef239b
commit bc9013f706
7 changed files with 87 additions and 22 deletions

View file

@ -113,7 +113,12 @@ int run(Function<void(const char*, size_t)> fn)
Line::Editor editor;
editor.initialize();
for (;;) {
auto line = editor.get_line("> ");
auto line_result = editor.get_line("> ");
if (line_result.is_error())
break;
auto& line = line_result.value();
if (line == ".wait") {
loop.exec();
} else {