summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordteske <dteske@FreeBSD.org>2016-01-27 06:25:59 +0000
committerdteske <dteske@FreeBSD.org>2016-01-27 06:25:59 +0000
commitfdf3aa0295fd6d0748cda6f97ab57852fba8051e (patch)
treec02bd3d56b3f27171f322d31c70ca91ffe67e3dc
parentab5817778ba6e3a18afecb75cb4a290e4f7efece (diff)
downloadFreeBSD-src-fdf3aa0295fd6d0748cda6f97ab57852fba8051e.zip
FreeBSD-src-fdf3aa0295fd6d0748cda6f97ab57852fba8051e.tar.gz
MFC r293868: Default to en_US.ISO8859-1 if no locale
-rw-r--r--lib/libdpv/dpv.c6
-rw-r--r--lib/libdpv/dpv.h3
2 files changed, 9 insertions, 0 deletions
diff --git a/lib/libdpv/dpv.c b/lib/libdpv/dpv.c
index 6a03922..d3506ca 100644
--- a/lib/libdpv/dpv.c
+++ b/lib/libdpv/dpv.c
@@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$");
#include <dialog.h>
#include <err.h>
#include <limits.h>
+#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -482,6 +483,11 @@ dpv(struct dpv_config *config, struct dpv_file_node *file_list)
/* Reads: label_size pbar_size pprompt aprompt dpv_nfiles */
/* Inits: dheight and dwidth */
+ /* Default localeconv(3) settings for dialog(3) status */
+ setlocale(LC_NUMERIC,
+ getenv("LC_ALL") == NULL && getenv("LC_NUMERIC") == NULL ?
+ LC_NUMERIC_DEFAULT : "");
+
if (!debug) {
/* Internally create the initial `--gauge' prompt text */
dprompt_recreate(file_list, (struct dpv_file_node *)NULL, 0);
diff --git a/lib/libdpv/dpv.h b/lib/libdpv/dpv.h
index dbcd59b..03768a7 100644
--- a/lib/libdpv/dpv.h
+++ b/lib/libdpv/dpv.h
@@ -38,6 +38,9 @@
#define FALSE 0
#endif
+/* localeconv(3) */
+#define LC_NUMERIC_DEFAULT "en_US.ISO8859-1"
+
/* Data to process */
extern long long dpv_overall_read;
OpenPOWER on IntegriCloud