rc

[fork] interactive rc shell
Log | Files | Refs | README | LICENSE

commit 134ea56bac17a42cf71742807a50f4ca4ac72474
parent b234c5153b5f12b82dceefd04865213554a875da
Author: Bert Münnich <ber.t@posteo.de>
Date:   Sat, 28 Nov 2015 16:41:21 +0100

Set LC_CTYPE after reading ~/.rcrc

rc does not handle umlauts correctly, if locale environment variables are first
set in ~/.rcrc. It is necessary to update the environment before calling
setlocale(3) because it would otherwise not see the variable values assigned in
~/.rcrc.

Diffstat:
Mmain.c | 5+++++
1 file changed, 5 insertions(+), 0 deletions(-)

diff --git a/main.c b/main.c @@ -3,9 +3,12 @@ #include "rc.h" #include <errno.h> +#include <locale.h> #include "input.h" +extern char **environ; + bool dashdee, dashee, dasheye, dashell, dashen; bool dashpee, dashoh, dashess, dashvee, dashex; bool interactive; @@ -120,6 +123,8 @@ quitopts: close(fd); } } + environ = makeenv(); + setlocale(LC_CTYPE, ""); if (dashsee[0] != NULL || dashess) { /* input from -c or -s? */ if (*argv != NULL)