} }
void operator +=(std::string command) {
+ if (HIST_ENTRY *entry = history_get(where_history()))
+ if (command == entry->line)
+ return;
add_history(command.c_str());
++histlines_;
}
CYOutputRun("");
- struct sigaction action;
- sigemptyset(&action.sa_mask);
- action.sa_handler = &sigint;
- action.sa_flags = 0;
- sigaction(SIGINT, &action, NULL);
-
for (;;) {
+ struct sigaction action;
+ sigemptyset(&action.sa_mask);
+ action.sa_handler = &sigint;
+ action.sa_flags = 0;
+ sigaction(SIGINT, &action, NULL);
+
if (setjmp(ctrlc_) != 0) {
mode_ = Working;
*out_ << std::endl;