aboutsummaryrefslogtreecommitdiff
path: root/engines/director
diff options
context:
space:
mode:
authorEugene Sandulenko2016-08-07 08:08:00 +0200
committerEugene Sandulenko2016-08-07 22:32:59 +0200
commit8b5a6adfa81d0c1f2cb44497077e7ee99a2f6943 (patch)
tree4d45e7ed464599a4f1e30409b5de2f89b04ff402 /engines/director
parent8467a3c0fc01b877412348b861e91f0b5461d3ac (diff)
downloadscummvm-rg350-8b5a6adfa81d0c1f2cb44497077e7ee99a2f6943.tar.gz
scummvm-rg350-8b5a6adfa81d0c1f2cb44497077e7ee99a2f6943.tar.bz2
scummvm-rg350-8b5a6adfa81d0c1f2cb44497077e7ee99a2f6943.zip
DIRECTOR: Lingo: Fixed string parsing
Diffstat (limited to 'engines/director')
-rw-r--r--engines/director/lingo/lingo-lex.cpp48
-rw-r--r--engines/director/lingo/lingo-lex.l2
2 files changed, 25 insertions, 25 deletions
diff --git a/engines/director/lingo/lingo-lex.cpp b/engines/director/lingo/lingo-lex.cpp
index 873aa84565..7a940dab2d 100644
--- a/engines/director/lingo/lingo-lex.cpp
+++ b/engines/director/lingo/lingo-lex.cpp
@@ -433,21 +433,21 @@ static yyconst flex_int32_t yy_ec[256] =
static yyconst flex_int32_t yy_meta[61] =
{ 0,
- 1, 2, 3, 4, 2, 1, 1, 1, 1, 1,
- 5, 1, 1, 1, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 5, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6
+ 1, 2, 3, 3, 2, 1, 1, 1, 1, 1,
+ 4, 1, 1, 1, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 4, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5
} ;
static yyconst flex_int16_t yy_base[202] =
{ 0,
- 0, 59, 187, 469, 63, 67, 71, 75, 169, 469,
+ 0, 59, 187, 465, 63, 67, 71, 75, 169, 465,
152, 140, 52, 68, 130, 56, 0, 56, 57, 67,
72, 68, 68, 69, 112, 70, 104, 111, 80, 118,
- 130, 143, 175, 180, 189, 469, 193, 167, 197, 80,
- 136, 469, 469, 0, 93, 90, 469, 469, 469, 0,
+ 130, 143, 175, 180, 189, 465, 193, 167, 197, 80,
+ 136, 465, 465, 0, 93, 90, 465, 465, 465, 0,
104, 82, 176, 108, 112, 165, 187, 190, 117, 133,
0, 175, 180, 192, 190, 183, 184, 183, 188, 0,
202, 0, 207, 204, 193, 198, 200, 205, 221, 220,
@@ -459,13 +459,13 @@ static yyconst flex_int16_t yy_base[202] =
303, 0, 0, 0, 0, 283, 304, 311, 308, 308,
0, 0, 311, 325, 315, 322, 0, 0, 0, 321,
330, 316, 317, 169, 0, 0, 327, 328, 212, 329,
- 324, 0, 330, 469, 325, 0, 334, 340, 0, 332,
+ 324, 0, 330, 465, 325, 0, 334, 340, 0, 332,
331, 348, 342, 252, 0, 347, 382, 353, 348, 0,
369, 358, 0, 359, 0, 0, 0, 393, 0, 373,
- 368, 0, 377, 0, 369, 381, 469, 0, 372, 0,
- 404, 376, 409, 0, 414, 469, 444, 446, 452, 457,
+ 368, 0, 377, 0, 369, 381, 465, 0, 372, 0,
+ 404, 376, 409, 0, 414, 465, 444, 446, 451, 455,
- 462
+ 459
} ;
static yyconst flex_int16_t yy_def[202] =
@@ -495,7 +495,7 @@ static yyconst flex_int16_t yy_def[202] =
196
} ;
-static yyconst flex_int16_t yy_nxt[530] =
+static yyconst flex_int16_t yy_nxt[526] =
{ 0,
4, 5, 6, 7, 8, 9, 10, 11, 12, 4,
13, 14, 10, 15, 16, 17, 18, 19, 20, 21,
@@ -545,19 +545,19 @@ static yyconst flex_int16_t yy_nxt[530] =
193, 183, 184, 193, 185, 196, 187, 189, 196, 196,
186, 188, 190, 196, 191, 196, 192, 196, 180, 194,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
- 196, 196, 196, 186, 41, 41, 196, 41, 41, 41,
- 50, 50, 87, 87, 196, 196, 87, 87, 164, 196,
- 196, 196, 164, 195, 196, 196, 196, 195, 3, 196,
+ 196, 196, 196, 186, 41, 41, 196, 41, 41, 50,
+ 50, 87, 87, 196, 87, 87, 164, 196, 196, 164,
+ 195, 196, 196, 195, 3, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
- 196, 196, 196, 196, 196, 196, 196, 196, 196
+ 196, 196, 196, 196, 196
} ;
-static yyconst flex_int16_t yy_chk[530] =
+static yyconst flex_int16_t yy_chk[526] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -607,16 +607,16 @@ static yyconst flex_int16_t yy_chk[530] =
193, 171, 172, 193, 174, 195, 180, 183, 195, 0,
178, 181, 185, 0, 186, 0, 189, 0, 167, 192,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 178, 197, 197, 0, 197, 197, 197,
- 198, 198, 199, 199, 0, 0, 199, 199, 200, 0,
- 0, 0, 200, 201, 0, 0, 0, 201, 196, 196,
+ 0, 0, 0, 178, 197, 197, 0, 197, 197, 198,
+ 198, 199, 199, 0, 199, 199, 200, 0, 0, 200,
+ 201, 0, 0, 201, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
- 196, 196, 196, 196, 196, 196, 196, 196, 196
+ 196, 196, 196, 196, 196
} ;
static yy_state_type yy_last_accepting_state;
@@ -938,7 +938,7 @@ yy_match:
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
- while ( yy_base[yy_current_state] != 469 );
+ while ( yy_base[yy_current_state] != 465 );
yy_find_action:
yy_act = yy_accept[yy_current_state];
diff --git a/engines/director/lingo/lingo-lex.l b/engines/director/lingo/lingo-lex.l
index cc3b48b593..005d78b455 100644
--- a/engines/director/lingo/lingo-lex.l
+++ b/engines/director/lingo/lingo-lex.l
@@ -61,7 +61,7 @@ static void countnl() {
identifier [_[:alpha:]][_[:alnum:]]*
constfloat [[:digit:]]+\.[[:digit:]]*
constinteger [[:digit:]]+
-conststring \"[^\"\n]*\"
+conststring \"[^\"\r\n]*\"
operator [-+*/%=^:,()><&]
newline [ \t]*[\n\r]
whitespace [\t ]