mirror of
https://github.com/irssi/irssi.git
synced 2025-04-26 21:11:19 -05:00
Merge branch '2-out-of-bounds-read-of-one-byte-with-x1b-48-in-truecolor-builds' into 'security'
check for end of string in ansi 48 See merge request !1
This commit is contained in:
commit
7daa7a6aa9
@ -956,6 +956,7 @@ static const char *get_ansi_color(THEME_REC *theme, const char *str,
|
|||||||
str++;
|
str++;
|
||||||
for (num2 = 0; i_isdigit(*str); str++)
|
for (num2 = 0; i_isdigit(*str); str++)
|
||||||
num2 = num2*10 + (*str-'0');
|
num2 = num2*10 + (*str-'0');
|
||||||
|
if (*str == '\0') return start;
|
||||||
|
|
||||||
switch (num2) {
|
switch (num2) {
|
||||||
case 2:
|
case 2:
|
||||||
@ -973,6 +974,8 @@ static const char *get_ansi_color(THEME_REC *theme, const char *str,
|
|||||||
for (; i_isdigit(*str); str++)
|
for (; i_isdigit(*str); str++)
|
||||||
num2 = (num2&~0xff) |
|
num2 = (num2&~0xff) |
|
||||||
(((num2&0xff) * 10 + (*str-'0'))&0xff);
|
(((num2&0xff) * 10 + (*str-'0'))&0xff);
|
||||||
|
|
||||||
|
if (*str == '\0') return start;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i == -1) break;
|
if (i == -1) break;
|
||||||
@ -1001,6 +1004,7 @@ static const char *get_ansi_color(THEME_REC *theme, const char *str,
|
|||||||
str++;
|
str++;
|
||||||
for (num2 = 0; i_isdigit(*str); str++)
|
for (num2 = 0; i_isdigit(*str); str++)
|
||||||
num2 = num2*10 + (*str-'0');
|
num2 = num2*10 + (*str-'0');
|
||||||
|
if (*str == '\0') return start;
|
||||||
|
|
||||||
if (num == 38) {
|
if (num == 38) {
|
||||||
flags &= ~GUI_PRINT_FLAG_COLOR_24_FG;
|
flags &= ~GUI_PRINT_FLAG_COLOR_24_FG;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user