mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 489871 - CSS comments should not be allowed in presentation attribute values. r=dbaron a=roc
--HG-- extra : rebase_source : 7a41fca1422a024934839ebe0c50cc479223915f
This commit is contained in:
parent
90ea2dcdc2
commit
d796beb26c
4
layout/reftests/svg/cssComment-in-attribute-01-ref.svg
Normal file
4
layout/reftests/svg/cssComment-in-attribute-01-ref.svg
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<title>Reference that css comment in attribute is not allowed</title>
|
||||||
|
<rect width="100%" height="100%" fill="black"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 170 B |
4
layout/reftests/svg/cssComment-in-attribute-01.svg
Normal file
4
layout/reftests/svg/cssComment-in-attribute-01.svg
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<title>Testcase that css comment in attribute is not allowed</title>
|
||||||
|
<rect width="100%" height="100%" fill="/* blah */ red"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 178 B |
@ -20,6 +20,7 @@ include moz-only/reftest.list
|
|||||||
include svg-integration/reftest.list
|
include svg-integration/reftest.list
|
||||||
|
|
||||||
== altGlyph-01.svg altGlyph-01-ref.svg
|
== altGlyph-01.svg altGlyph-01-ref.svg
|
||||||
|
== cssComment-in-attribute-01.svg cssComment-in-attribute-01-ref.svg
|
||||||
== clip-01.svg pass.svg
|
== clip-01.svg pass.svg
|
||||||
== clip-02a.svg clip-02-ref.svg
|
== clip-02a.svg clip-02-ref.svg
|
||||||
== clip-02b.svg clip-02-ref.svg
|
== clip-02b.svg clip-02-ref.svg
|
||||||
|
@ -263,9 +263,7 @@ nsCSSScanner::nsCSSScanner()
|
|||||||
: mInputStream(nsnull)
|
: mInputStream(nsnull)
|
||||||
, mReadPointer(nsnull)
|
, mReadPointer(nsnull)
|
||||||
, mLowLevelError(NS_OK)
|
, mLowLevelError(NS_OK)
|
||||||
#ifdef MOZ_SVG
|
|
||||||
, mSVGMode(PR_FALSE)
|
, mSVGMode(PR_FALSE)
|
||||||
#endif
|
|
||||||
#ifdef CSS_REPORT_PARSE_ERRORS
|
#ifdef CSS_REPORT_PARSE_ERRORS
|
||||||
, mError(mErrorBuf, NS_ARRAY_LENGTH(mErrorBuf), 0)
|
, mError(mErrorBuf, NS_ARRAY_LENGTH(mErrorBuf), 0)
|
||||||
#endif
|
#endif
|
||||||
@ -783,7 +781,7 @@ nsCSSScanner::Next(nsCSSToken& aToken)
|
|||||||
EatWhiteSpace();
|
EatWhiteSpace();
|
||||||
return PR_TRUE;
|
return PR_TRUE;
|
||||||
}
|
}
|
||||||
if (ch == '/') {
|
if (ch == '/' && !IsSVGMode()) {
|
||||||
PRInt32 nextChar = Peek();
|
PRInt32 nextChar = Peek();
|
||||||
if (nextChar == '*') {
|
if (nextChar == '*') {
|
||||||
(void) Read();
|
(void) Read();
|
||||||
@ -1163,7 +1161,6 @@ nsCSSScanner::ParseNumber(PRInt32 c, nsCSSToken& aToken)
|
|||||||
}
|
}
|
||||||
|
|
||||||
PRBool gotE = PR_FALSE;
|
PRBool gotE = PR_FALSE;
|
||||||
#ifdef MOZ_SVG
|
|
||||||
if (IsSVGMode() && (c == 'e' || c == 'E')) {
|
if (IsSVGMode() && (c == 'e' || c == 'E')) {
|
||||||
PRInt32 nextChar = Peek();
|
PRInt32 nextChar = Peek();
|
||||||
PRInt32 expSignChar = 0;
|
PRInt32 expSignChar = 0;
|
||||||
@ -1190,7 +1187,6 @@ nsCSSScanner::ParseNumber(PRInt32 c, nsCSSToken& aToken)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
nsCSSTokenType type = eCSSToken_Number;
|
nsCSSTokenType type = eCSSToken_Number;
|
||||||
|
|
||||||
|
@ -148,7 +148,6 @@ class nsCSSScanner {
|
|||||||
static PRBool InitGlobals();
|
static PRBool InitGlobals();
|
||||||
static void ReleaseGlobals();
|
static void ReleaseGlobals();
|
||||||
|
|
||||||
#ifdef MOZ_SVG
|
|
||||||
// Set whether or not we are processing SVG
|
// Set whether or not we are processing SVG
|
||||||
void SetSVGMode(PRBool aSVGMode) {
|
void SetSVGMode(PRBool aSVGMode) {
|
||||||
NS_ASSERTION(aSVGMode == PR_TRUE || aSVGMode == PR_FALSE,
|
NS_ASSERTION(aSVGMode == PR_TRUE || aSVGMode == PR_FALSE,
|
||||||
@ -159,7 +158,6 @@ class nsCSSScanner {
|
|||||||
return mSVGMode;
|
return mSVGMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
#ifdef CSS_REPORT_PARSE_ERRORS
|
#ifdef CSS_REPORT_PARSE_ERRORS
|
||||||
void AddToError(const nsSubstring& aErrorText);
|
void AddToError(const nsSubstring& aErrorText);
|
||||||
void OutputError();
|
void OutputError();
|
||||||
@ -238,10 +236,8 @@ protected:
|
|||||||
nsresult mLowLevelError;
|
nsresult mLowLevelError;
|
||||||
|
|
||||||
PRUint32 mLineNumber;
|
PRUint32 mLineNumber;
|
||||||
#ifdef MOZ_SVG
|
|
||||||
// True if we are in SVG mode; false in "normal" CSS
|
// True if we are in SVG mode; false in "normal" CSS
|
||||||
PRPackedBool mSVGMode;
|
PRPackedBool mSVGMode;
|
||||||
#endif
|
|
||||||
#ifdef CSS_REPORT_PARSE_ERRORS
|
#ifdef CSS_REPORT_PARSE_ERRORS
|
||||||
nsXPIDLCString mFileName;
|
nsXPIDLCString mFileName;
|
||||||
nsCOMPtr<nsIURI> mURI; // Cached so we know to not refetch mFileName
|
nsCOMPtr<nsIURI> mURI; // Cached so we know to not refetch mFileName
|
||||||
|
Loading…
Reference in New Issue
Block a user