From 134ea56bac17a42cf71742807a50f4ca4ac72474 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bert=20M=C3=BCnnich?= Date: Sat, 28 Nov 2015 16:41:21 +0100 Subject: 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. --- main.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/main.c b/main.c index 870d104..026f0e7 100644 --- a/main.c +++ b/main.c @@ -3,9 +3,12 @@ #include "rc.h" #include +#include #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) -- cgit v1.2.3