Compare commits

..

No commits in common. "eb62e9ad72cab1e484700dfc0757281a50d37f19" and "b5ef86d092f85d35326cb473582ac09dd44a968e" have entirely different histories.

2 changed files with 8 additions and 10 deletions

View File

@ -211,16 +211,14 @@ fn Token Lexer.next_token(&lex)
while (ascii::is_alnum_m(lex.peep())) { while (ascii::is_alnum_m(lex.peep())) {
if (lex.advance() == 0) { t.type = INVALID; break; } if (lex.advance() == 0) { t.type = INVALID; break; }
} }
usz h_len = lex.off - hex_start; if (lex.off - hex_start != 8) {
if (h_len != 8 && h_len != 6) { io::eprintfn("CSS lexing error at %d:%d: the only suppported color format is #RRGGBBAA", t.line, t.col);
io::eprintfn("CSS lexing error at %d:%d: the only suppported color formats are #RRGGBBAA or #RRGGBB", t.line, t.col);
t.type = INVALID; t.type = INVALID;
break; break;
} }
char[10] hex_str = (char[])"0x"; char[10] hex_str = (char[])"0x";
hex_str[2:h_len] = lex.text[hex_start:h_len]; hex_str[2..] = lex.text[hex_start..lex.off-1];
if (h_len == 6) hex_str[8..9] = "ff"[..];
uint? color_hex = ((String)hex_str[..]).to_uint(); uint? color_hex = ((String)hex_str[..]).to_uint();
if (catch color_hex) { if (catch color_hex) {
t.type = INVALID; t.type = INVALID;

View File

@ -1,5 +1,5 @@
div { div {
bg: #282828; bg: #282828ff;
fg: #fbf1c7ff; fg: #fbf1c7ff;
primary: #cc241dff; primary: #cc241dff;
secondary: #6c19ca8f; secondary: #6c19ca8f;