better handling of bad @imports

git-svn-id: svn://10.0.0.236/trunk@32811 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
peterl%netscape.com 1999-05-26 23:53:16 +00:00
parent 6402470144
commit 9f25668214
3 changed files with 60 additions and 3 deletions

View File

@ -679,7 +679,26 @@ PRBool CSSParserImpl::ParseImportRule(PRInt32& aErrorCode)
}
// invalid @import
if ((eCSSToken_Symbol != mToken.mType) || (';' != mToken.mSymbol)) {
SkipUntil(aErrorCode, ';');
// Skip over trailing cruft
for (;;) {
if (!GetToken(aErrorCode, PR_TRUE)) {
return PR_FALSE;
}
if (eCSSToken_Symbol == mToken.mType) {
PRUnichar symbol = mToken.mSymbol;
if (symbol == ';') {
break;
}
if (symbol == '{') {
SkipUntil(aErrorCode, '}');
break;
} else if (symbol == '(') {
SkipUntil(aErrorCode, ')');
} else if (symbol == '[') {
SkipUntil(aErrorCode, ']');
}
}
}
}
// mInHead = PR_FALSE; // an invalid @import doesn't block other @imports (I think) awaiting clarification

View File

@ -679,7 +679,26 @@ PRBool CSSParserImpl::ParseImportRule(PRInt32& aErrorCode)
}
// invalid @import
if ((eCSSToken_Symbol != mToken.mType) || (';' != mToken.mSymbol)) {
SkipUntil(aErrorCode, ';');
// Skip over trailing cruft
for (;;) {
if (!GetToken(aErrorCode, PR_TRUE)) {
return PR_FALSE;
}
if (eCSSToken_Symbol == mToken.mType) {
PRUnichar symbol = mToken.mSymbol;
if (symbol == ';') {
break;
}
if (symbol == '{') {
SkipUntil(aErrorCode, '}');
break;
} else if (symbol == '(') {
SkipUntil(aErrorCode, ')');
} else if (symbol == '[') {
SkipUntil(aErrorCode, ']');
}
}
}
}
// mInHead = PR_FALSE; // an invalid @import doesn't block other @imports (I think) awaiting clarification

View File

@ -679,7 +679,26 @@ PRBool CSSParserImpl::ParseImportRule(PRInt32& aErrorCode)
}
// invalid @import
if ((eCSSToken_Symbol != mToken.mType) || (';' != mToken.mSymbol)) {
SkipUntil(aErrorCode, ';');
// Skip over trailing cruft
for (;;) {
if (!GetToken(aErrorCode, PR_TRUE)) {
return PR_FALSE;
}
if (eCSSToken_Symbol == mToken.mType) {
PRUnichar symbol = mToken.mSymbol;
if (symbol == ';') {
break;
}
if (symbol == '{') {
SkipUntil(aErrorCode, '}');
break;
} else if (symbol == '(') {
SkipUntil(aErrorCode, ')');
} else if (symbol == '[') {
SkipUntil(aErrorCode, ']');
}
}
}
}
// mInHead = PR_FALSE; // an invalid @import doesn't block other @imports (I think) awaiting clarification