summaryrefslogtreecommitdiffstats
path: root/lexer
diff options
context:
space:
mode:
authorDave Davenport <qball@gmpclient.org>2017-04-05 21:27:35 +0200
committerDave Davenport <qball@gmpclient.org>2017-04-05 21:27:35 +0200
commit387093a67367b6a0b4c6e0117ac664369bd615f4 (patch)
tree3fcbe772a79e66d7bb648704e9df2ce8f0ac4cea /lexer
parent557241ba942ff89f7471691337cfd37c60b158ce (diff)
Fix EM always being real
Diffstat (limited to 'lexer')
-rw-r--r--lexer/theme-lexer.l12
1 files changed, 6 insertions, 6 deletions
diff --git a/lexer/theme-lexer.l b/lexer/theme-lexer.l
index 2d3f1e0c..a4d3b8e1 100644
--- a/lexer/theme-lexer.l
+++ b/lexer/theme-lexer.l
@@ -315,8 +315,8 @@ if ( queue == NULL ){
<SECTION>":" { g_queue_push_head ( queue, GINT_TO_POINTER (YY_START) ); BEGIN(PROPERTIES); return PSEP; }
<PROPERTIES>";" { BEGIN(GPOINTER_TO_INT ( g_queue_pop_head ( queue ))); return PCLOSE;}
<PROPERTIES>(true|false) { yylval->bval= g_strcmp0(yytext, "true") == 0; return T_BOOLEAN;}
-<PROPERTIES>{PNNUMBER}+ { yylval->ival = (int)g_ascii_strtoll(yytext, NULL, 10); return T_INT;}
-<PROPERTIES>{PNNUMBER}+\.{NUMBER}+ { yylval->fval = g_ascii_strtod(yytext, NULL); return T_DOUBLE;}
+<PROPERTIES>{PNNUMBER} { yylval->ival = (int)g_ascii_strtoll(yytext, NULL, 10); return T_INT;}
+<PROPERTIES>{PNNUMBER}\.{NUMBER}+ { yylval->fval = g_ascii_strtod(yytext, NULL); return T_DOUBLE;}
<PROPERTIES>\"{STRING}\" { yytext[yyleng-1] = '\0'; yylval->sval = g_strdup(&yytext[1]); return T_STRING;}
<PROPERTIES>@{WORD} {
yylval->sval = g_strdup(yytext);
@@ -335,25 +335,25 @@ if ( queue == NULL ){
yylval->distance.style = SOLID;
return T_PIXEL;
}
-<PROPERTIES>{PNNUMBER}+{PX}{WHITESPACE}{LS_DASH} {
+<PROPERTIES>{PNNUMBER}{PX}{WHITESPACE}{LS_DASH} {
yylval->distance.distance = (double)g_ascii_strtoll(yytext, NULL, 10);
yylval->distance.type = PW_PX;
yylval->distance.style = DASH;
return T_PIXEL;
}
-<PROPERTIES>{PNNUMBER}+{EM}{WHITESPACE}{LS_DASH} {
+<PROPERTIES>{REAL}{EM}{WHITESPACE}{LS_DASH} {
yylval->distance.distance = (double)g_ascii_strtoll(yytext, NULL, 10);
yylval->distance.type = PW_PX;
yylval->distance.style = DASH;
return T_PIXEL;
}
-<PROPERTIES>{PNNUMBER}+{PX}{WHITESPACE}{LS_SOLID} {
+<PROPERTIES>{PNNUMBER}{PX}{WHITESPACE}{LS_SOLID} {
yylval->distance.distance = (double)g_ascii_strtoll(yytext, NULL, 10);
yylval->distance.type = PW_PX;
yylval->distance.style = SOLID;
return T_PIXEL;
}
-<PROPERTIES>{PNNUMBER}+{EM}{WHITESPACE}{LS_SOLID} {
+<PROPERTIES>{REAL}{EM}{WHITESPACE}{LS_SOLID} {
yylval->distance.distance = (double)g_ascii_strtoll(yytext, NULL, 10);
yylval->distance.type = PW_PX;
yylval->distance.style = SOLID;