summaryrefslogtreecommitdiff
path: root/src/ls.c
diff options
context:
space:
mode:
authorYurij Goncharuk <lnkgyv@gmail.com>2014-08-21 23:44:56 +0100
committerPádraig Brady <P@draigBrady.com>2014-08-21 23:47:33 +0100
commit00d0c41d857a1c74169e43d1fba761cdd5279dba (patch)
tree8267ff16f2c664357417a861db44c4749a180114 /src/ls.c
parent837bf406df08ff7e0d3a9b63060c61012fdbb723 (diff)
downloadcoreutils-00d0c41d857a1c74169e43d1fba761cdd5279dba.tar.xz
maint: refactor ls QUOTING_STYLE env var handling
* src/ls.c (main): As per the FIXME comment, move the QUOTING_STYLE handling to a separate function.
Diffstat (limited to 'src/ls.c')
-rw-r--r--src/ls.c36
1 files changed, 22 insertions, 14 deletions
diff --git a/src/ls.c b/src/ls.c
index cd5996eb9..a45cfc174 100644
--- a/src/ls.c
+++ b/src/ls.c
@@ -284,6 +284,8 @@ static void queue_directory (char const *name, char const *realname,
static void sort_files (void);
static void parse_ls_color (void);
+static void getenv_quoting_style (void);
+
/* Initial size of hash table.
Most hierarchies are likely to be shallower than this. */
#define INITIAL_TABLE_SIZE 30
@@ -1577,20 +1579,7 @@ decode_switches (int argc, char **argv)
hide_patterns = NULL;
print_scontext = false;
- /* FIXME: put this in a function. */
- {
- char const *q_style = getenv ("QUOTING_STYLE");
- if (q_style)
- {
- int i = ARGMATCH (q_style, quoting_style_args, quoting_style_vals);
- if (0 <= i)
- set_quoting_style (NULL, quoting_style_vals[i]);
- else
- error (0, 0,
- _("ignoring invalid value of environment variable QUOTING_STYLE: %s"),
- quotearg (q_style));
- }
- }
+ getenv_quoting_style ();
line_length = 80;
{
@@ -2493,6 +2482,25 @@ parse_ls_color (void)
color_symlink_as_referent = true;
}
+/* Set the quoting style default if the environment variable
+ QUOTING_STYLE is set. */
+
+static void
+getenv_quoting_style (void)
+{
+ char const *q_style = getenv ("QUOTING_STYLE");
+ if (q_style)
+ {
+ int i = ARGMATCH (q_style, quoting_style_args, quoting_style_vals);
+ if (0 <= i)
+ set_quoting_style (NULL, quoting_style_vals[i]);
+ else
+ error (0, 0,
+ _("ignoring invalid value of environment variable QUOTING_STYLE: %s"),
+ quotearg (q_style));
+ }
+}
+
/* Set the exit status to report a failure. If SERIOUS, it is a
serious failure; otherwise, it is merely a minor problem. */