summaryrefslogtreecommitdiff
path: root/src/Dalos-cli.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Dalos-cli.cc')
-rw-r--r--src/Dalos-cli.cc19
1 files changed, 6 insertions, 13 deletions
diff --git a/src/Dalos-cli.cc b/src/Dalos-cli.cc
index fedec88..89069bf 100644
--- a/src/Dalos-cli.cc
+++ b/src/Dalos-cli.cc
@@ -1,10 +1,10 @@
#include <getopt.h>
-#include <readline/readline.h>
-#include <readline/history.h>
#include <Main.h>
#include <TaskMan.h>
#include <LuaTask.h>
#include <Input.h>
+#include <BStdIO.h>
+#include "BReadline.h"
using namespace Balau;
@@ -92,24 +92,17 @@ void MainTask::Do() {
if (!interactive)
return;
- char prompt[3] = "> ", * line_read = NULL;
+ String line_read;
+ Readline rl("Dalos-cli", new StdIN());
for (;;) {
- if (line_read)
- free(line_read);
+ line_read = rl.gets();
- line_read = readline(prompt);
-
- if (!line_read) {
+ if (rl.gotEOF()) {
Printer::print("\n");
break;
}
- if (!*line_read)
- continue;
-
- add_history(line_read);
-
LuaExecString luaExecString(line_read);
luaExecString.exec(luaMainTask);
}