tcsh/tcsh-6.17.03-colorls.dif
2011-11-17 10:34:10 +00:00

57 lines
1.7 KiB
Plaintext

--- tw.color.c
+++ tw.color.c 2010-12-10 16:07:59.000000000 +0000
@@ -89,6 +89,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 */
};
enum FileType {
@@ -177,7 +178,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;
@@ -240,13 +241,10 @@ parseLS_COLORS(const Char *value)
if ((Char)variables[i].variable[0] == (v[0] & CHAR) &&
(Char)variables[i].variable[1] == (v[1] & CHAR))
break;
- if (i < nvariables) {
- v += 3;
+ v += 3;
+ if (i < nvariables)
getstring(&c, &v, &variables[i].color, ':');
- continue;
- }
- else
- stderror(ERR_BADCOLORVAR, v[0], v[1]);
+ continue;
}
break;
}
@@ -301,12 +303,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) {
- color = &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) {
+ color = &extensions[j].color;
break;
}
}