Fossil SCM
Optimized validation of the FOSSIL_COLOR environment variable.
Commit
c5f1e0daea483f3cd9d19552e8910641281ef232bbc41d64bf326e6ffd08d66e
Parent
fbfa6daeca9be89…
1 file changed
+4
-1
+4
-1
| --- src/main.c | ||
| +++ src/main.c | ||
| @@ -695,11 +695,14 @@ | ||
| 695 | 695 | if( g.colorOutput==COLOR_VT_UNSET ) g.colorOutput = COLOR_VT_NEVER; |
| 696 | 696 | }else{ |
| 697 | 697 | int i, fValid = 1; |
| 698 | 698 | /* Rudimentary sanity check: only allow digits and semicolon. */ |
| 699 | 699 | for( i=0; zEnvVar[i]; i++ ){ |
| 700 | - if( !strchr("0123456789;",zEnvVar[i]) ) fValid = 0; | |
| 700 | + if( !strchr("0123456789;",zEnvVar[i]) ){ | |
| 701 | + fValid = 0; | |
| 702 | + break; | |
| 703 | + } | |
| 701 | 704 | } |
| 702 | 705 | if( fValid ) g.cliColor = mprintf("\033[%sm",zEnvVar); |
| 703 | 706 | } |
| 704 | 707 | fossil_path_free(zEnvVar); |
| 705 | 708 | } |
| 706 | 709 |
| --- src/main.c | |
| +++ src/main.c | |
| @@ -695,11 +695,14 @@ | |
| 695 | if( g.colorOutput==COLOR_VT_UNSET ) g.colorOutput = COLOR_VT_NEVER; |
| 696 | }else{ |
| 697 | int i, fValid = 1; |
| 698 | /* Rudimentary sanity check: only allow digits and semicolon. */ |
| 699 | for( i=0; zEnvVar[i]; i++ ){ |
| 700 | if( !strchr("0123456789;",zEnvVar[i]) ) fValid = 0; |
| 701 | } |
| 702 | if( fValid ) g.cliColor = mprintf("\033[%sm",zEnvVar); |
| 703 | } |
| 704 | fossil_path_free(zEnvVar); |
| 705 | } |
| 706 |
| --- src/main.c | |
| +++ src/main.c | |
| @@ -695,11 +695,14 @@ | |
| 695 | if( g.colorOutput==COLOR_VT_UNSET ) g.colorOutput = COLOR_VT_NEVER; |
| 696 | }else{ |
| 697 | int i, fValid = 1; |
| 698 | /* Rudimentary sanity check: only allow digits and semicolon. */ |
| 699 | for( i=0; zEnvVar[i]; i++ ){ |
| 700 | if( !strchr("0123456789;",zEnvVar[i]) ){ |
| 701 | fValid = 0; |
| 702 | break; |
| 703 | } |
| 704 | } |
| 705 | if( fValid ) g.cliColor = mprintf("\033[%sm",zEnvVar); |
| 706 | } |
| 707 | fossil_path_free(zEnvVar); |
| 708 | } |
| 709 |