aboutsummaryrefslogtreecommitdiff
path: root/contrib/bc
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/bc')
-rw-r--r--contrib/bc/bc/main.c7
-rw-r--r--contrib/bc/bc/scan.l5
2 files changed, 8 insertions, 4 deletions
diff --git a/contrib/bc/bc/main.c b/contrib/bc/bc/main.c
index 0189e1904053..d2bbdfe29463 100644
--- a/contrib/bc/bc/main.c
+++ b/contrib/bc/bc/main.c
@@ -137,16 +137,19 @@ main (argc, argv)
char *env_value;
char *env_argv[30];
int env_argc;
+ extern FILE *rl_outstream;
/* Initialize many variables. */
compile_only = FALSE;
use_math = FALSE;
warn_not_std = FALSE;
std_only = FALSE;
- if (isatty(0) && isatty(1))
+ if (isatty(0) && isatty(1))
interactive = TRUE;
- else
+ else {
interactive = FALSE;
+ rl_outstream = stderr;
+ }
quiet = FALSE;
file_names = NULL;
diff --git a/contrib/bc/bc/scan.l b/contrib/bc/bc/scan.l
index 8b5b25dc142c..70c8df6a4167 100644
--- a/contrib/bc/bc/scan.l
+++ b/contrib/bc/bc/scan.l
@@ -63,6 +63,7 @@ static char *rl_start = (char *)NULL;
static char rl_len = 0;
/* Definitions for readline access. */
+extern FILE *rl_outstream;
extern FILE *rl_instream;
_PROTOTYPE(char *readline, (char *));
@@ -107,8 +108,8 @@ rl_input (buf, result, max)
if (rl_len != 1)
add_history (rl_line);
rl_line[rl_len-1] = '\n';
- printf ("\r");
- fflush (stdout);
+ fprintf (rl_outstream,"\r");
+ fflush (rl_outstream);
}
if (rl_len <= max)