summaryrefslogtreecommitdiff
path: root/lib/interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/interface.c')
-rw-r--r--lib/interface.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/interface.c b/lib/interface.c
index f459215..f698318 100644
--- a/lib/interface.c
+++ b/lib/interface.c
@@ -7,6 +7,8 @@
#include "parser.h"
#include "pile.h"
+int quit;
+
void supprime(char * ch) {
for (; *ch; ch++) {
*ch = *(ch + 1);
@@ -26,12 +28,13 @@ void inserer(char * ch, char c) {
void ifloop(void) {
int cread, i, insert = 0;
- int gotesc = 0, quit = 0;
+ int gotesc = 0;
char buffer[BUFSIZ] = "";
int position = 0;
printf("> ");
-
+
+ quit = 0;
while (!quit) {
cread = fgetc(input);
@@ -96,6 +99,7 @@ void ifloop(void) {
printf("\n");
clearterm();
parse_line(buffer);
+ if (quit) break;
initterm();
position = 0;
buffer[0] = 0;