@@ -171,6 +171,8 @@ typedef enum
171
171
TPS_InPort ,
172
172
TPS_InHostFirstAN ,
173
173
TPS_InHost ,
174
+ TPS_InHostAsciiWord ,
175
+ TPS_InHostNumWord ,
174
176
TPS_InEmail ,
175
177
TPS_InFileFirst ,
176
178
TPS_InFileTwiddle ,
@@ -1443,7 +1445,7 @@ static const TParserStateActionItem actionTPS_InHostDomainSecond[] = {
1443
1445
};
1444
1446
1445
1447
static const TParserStateActionItem actionTPS_InHostDomain [] = {
1446
- {p_isEOF , 0 , A_BINGO | A_CLRALL , TPS_Base , HOST , NULL },
1448
+ {p_isEOF , 0 , A_BINGO | A_CLRALL , TPS_InHostAsciiWord , HOST , SpecialHyphen },
1447
1449
{p_isasclet , 0 , A_NEXT , TPS_InHostDomain , 0 , NULL },
1448
1450
{p_isdigit , 0 , A_PUSH , TPS_InHost , 0 , NULL },
1449
1451
{p_iseqC , ':' , A_PUSH , TPS_InPortFirst , 0 , NULL },
@@ -1454,7 +1456,22 @@ static const TParserStateActionItem actionTPS_InHostDomain[] = {
1454
1456
{p_isdigit , 0 , A_POP , TPS_Null , 0 , NULL },
1455
1457
{p_isstophost , 0 , A_BINGO | A_CLRALL , TPS_InURLPathStart , HOST , NULL },
1456
1458
{p_iseqC , '/' , A_PUSH , TPS_InFURL , 0 , NULL },
1457
- {NULL , 0 , A_BINGO | A_CLRALL , TPS_Base , HOST , NULL }
1459
+ {NULL , 0 , A_BINGO | A_CLRALL , TPS_InHostAsciiWord , HOST , SpecialHyphen }
1460
+ };
1461
+
1462
+ static const TParserStateActionItem actionTPS_InHostAsciiWord [] = {
1463
+ {p_isEOF , 0 , A_BINGO , TPS_Base , ASCIIWORD , NULL },
1464
+ {p_isasclet , 0 , A_NEXT , TPS_Null , 0 , NULL },
1465
+ {p_isdigit , 0 , A_NEXT , TPS_InHostNumWord , 0 , NULL },
1466
+ {p_isalpha , 0 , A_NEXT , TPS_InWord , 0 , NULL },
1467
+ {p_isspecial , 0 , A_NEXT , TPS_InWord , 0 , NULL },
1468
+ {NULL , 0 , A_BINGO , TPS_Base , ASCIIWORD , NULL }
1469
+ };
1470
+
1471
+ static const TParserStateActionItem actionTPS_InHostNumWord [] = {
1472
+ {p_isEOF , 0 , A_BINGO , TPS_Base , NUMWORD , NULL },
1473
+ {p_isalnum , 0 , A_NEXT , TPS_InHostNumWord , 0 , NULL },
1474
+ {NULL , 0 , A_BINGO , TPS_Base , NUMWORD , NULL }
1458
1475
};
1459
1476
1460
1477
static const TParserStateActionItem actionTPS_InPortFirst [] = {
@@ -1782,6 +1799,8 @@ static const TParserStateAction Actions[] = {
1782
1799
TPARSERSTATEACTION (TPS_InPort ),
1783
1800
TPARSERSTATEACTION (TPS_InHostFirstAN ),
1784
1801
TPARSERSTATEACTION (TPS_InHost ),
1802
+ TPARSERSTATEACTION (TPS_InHostAsciiWord ),
1803
+ TPARSERSTATEACTION (TPS_InHostNumWord ),
1785
1804
TPARSERSTATEACTION (TPS_InEmail ),
1786
1805
TPARSERSTATEACTION (TPS_InFileFirst ),
1787
1806
TPARSERSTATEACTION (TPS_InFileTwiddle ),
0 commit comments