SHA256
1
0
forked from pool/tcsh
tcsh/tcsh-6.18.03-colorls.dif

62 lines
2.0 KiB
Plaintext
Raw Normal View History

---
tw.color.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
--- tw.color.c
+++ tw.color.c 2021-11-11 11:00:40.989284076 +0000
@@ -85,6 +85,7 @@ static Variable variables[] = {
VAR(NOS, "hl", "44;37"), /* Reg file extra hard links, obsolete? */
VAR(NOS, "mh", "44;37"), /* Reg file extra hard links */
VAR(NOS, "ca", "30;41"), /* File with capability */
+ VAR(NOS, "cl", ""), /* CLRTOEOL */
};
#define nvariables (sizeof(variables)/sizeof(variables[0]))
@@ -324,7 +325,7 @@ parseLS_COLORS(const Char *value)
size_t i, len;
const Char *v; /* pointer in value */
char *c; /* pointer in colors */
- Extension *volatile e; /* pointer in extensions */
+ static Extension *volatile e; /* pointer in extensions */
jmp_buf_t osetexit;
size_t omark;
@@ -381,16 +382,14 @@ parseLS_COLORS(const Char *value)
if ((Char)variables[i].variable[0] == (v[0] & CHAR) &&
(Char)variables[i].variable[1] == (v[1] & CHAR))
break;
+ v += 3;
if (i < nvariables) {
- v += 3;
getstring(&c, &v, &variables[i].color, ':');
if (i == VSym)
color_as_referent = strcasecmp(
variables[VSym].color.s, "target") == 0;
continue;
}
- else
- stderror(ERR_BADCOLORVAR, v[0], v[1]);
}
break;
}
@@ -449,12 +448,13 @@ print_color(const Char *fname, size_t le
break;
}
if (i == nvariables) {
- for (i = 0; i < nextensions; i++)
- if (len >= extensions[i].extension.len
- && strncmp(last - extensions[i].extension.len,
- extensions[i].extension.s,
- extensions[i].extension.len) == 0) {
- colorp = &extensions[i].color;
+ int j;
+ for (j = 0; j < nextensions; j++)
+ if (len >= extensions[j].extension.len
+ && strncmp(last - extensions[j].extension.len,
+ extensions[j].extension.s,
+ extensions[j].extension.len) == 0) {
+ colorp = &extensions[j].color;
break;
}
}