-r prints the correct framerate now
[swftools.git] / src / parser.lex
index d5d81d6..38f24dc 100644 (file)
@@ -88,8 +88,8 @@ static void store(enum type_t type, int line, int column, char*text, int length)
            }
            prefix = 0;
        break;
-       case LABEL:
-           string_set2(&tmp, text, length-1);
+       case RAWDATA:
+           string_set2(&tmp, text+1/*:*/, length-5/*.end*/);
            token.text = (char*)mem_putstring(&strings, tmp);
        break;
        case COMMAND:
@@ -185,11 +185,11 @@ RVALUE     \"{STRING}\"|([^ \n\r\t]+)
 {NAME}{S}*-=               {s(ASSIGNMENT);prefix="<minus>";c();BEGIN(R);}
 {NAME}{S}*=                {s(ASSIGNMENT);c();BEGIN(R);}
 <R>{ /* values which appear only on the right-hand side of assignments, like: x=50% */
-    [^ \n\t\r]*                    {s(IDENTIFIER);c();BEGIN(0);}
+    [^ :\n\t\r]*                   {s(IDENTIFIER);c();BEGIN(0);}
 }
 \.include{S}.*\n                   {handleInclude(yytext, yyleng);}
 \.{NAME}                   {s(COMMAND);c();}
-{NAME}{S}*:                 {s(LABEL);c();}
+:([^.]|\.[^e]|\.e[^n]|\.en[^d]|[ \n\r\t])*\.end            {s(RAWDATA);c();}
 {NAME}                      {s(IDENTIFIER);c();}
 "["                        {c();BEGIN(BINARY);}
 {S}                        {c();}