Closed Bug 345895 Opened 20 years ago Closed 16 years ago

Validing css causes entire X server to crash. Doesn't happen when using Konqueror.

Categories

(Firefox :: General, defect)

1.5.0.x Branch
x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: jnguy, Unassigned)

References

()

Details

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.4) Gecko/20060608 Ubuntu/dapper-security Firefox/1.5.0.4 Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.4) Gecko/20060608 Ubuntu/dapper-security Firefox/1.5.0.4 Going to the W3C validator server found at http://jigsaw.w3.org/css-validator/ and entering: <html lang="en"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <style type="text/css"> td { font-size: 12px; font-family: verdana, arial, geneva, sans-serif; } h2 { font-size: 18px; font-family: verdana, arial, geneva, sans-serif; } </style> <title> UCSD Department of Computer Science and Engineering - </title> <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> <meta content="en" http-equiv="content-language"> <meta content="text/css" http-equiv="content-style-type"> <meta content="no" http-equiv="imagetoolbar"> <meta content="Computer Science, engineering, ucsd, faculty, students, Jacobs School, San Diego, University" name="keywords"> <meta content="UCSD Department of Computer Science and Engineering" name="description"> <meta content="UCSD Department of Computer Science and Engineering" name="organization"> <meta content="" name="pageno"> <link media="screen" type="text/css" href="http://www-cse.ucsd.edu/css/global_style.css" rel="stylesheet"> <script type="text/javascript" language="JavaScript" src="http://www-cse.ucsd.edu/javascript/global_functions.js"> </script> </head><body style="background: #ffffff url(/images/IMG_bgimg.gif) no-repeat" rightmargin="0" leftmargin="0" topmargin="0" marginheight="0"marginwidth="0" alink="#006699" vlink="#006699" link="#006699"><a name="top"></a> <table bgcolor="#efefef" cellpadding="0" cellspacing="0" border="0" width="760"> <tr> <td valign="top" width="187"><a href="http://www.jacobsschool.ucsd.edu"><img border="0" width="187" height="47" src="/images/H_logo.gif" alt="UCSD Jacobs School"></a></td><td valign="top" width="573"><a href="http://www-cse.ucsd.edu/index.php"><img border="0" width="573" height="47" src="http://www-cse.ucsd.edu/images/H_header.gif" alt="Department of Computer Science and Engineering"></a></td> </tr> </table> <table cellpadding="0" cellspacing="0" border="0" width="760"> <tr> <td valign="top" width="82"><a onmouseout="Off('aboutcse')" onmouseover="On('aboutcse'); window.status='aboutcse'; return true" href="http://www-cse.ucsd.edu/aboutcse/aboutcse.html"><img border="0" width="82" height="54" src="/images/HN_aboutcse.gif" name="aboutcse" alt="aboutcse"></a></td><td valign="top" width="85"><a onmouseout="Off('csepeople')" onmouseover="On('csepeople'); window.status='csepeople'; return true" href="http://www-cse.ucsd.edu/csepeople/csepeoplehome.html"><img border="0" width="85" height="54" src="/images/HN_csepeople.gif" name="csepeople" alt="csepeople"></a></td><td valign="top" width="108"><a onmouseout="Off('faculty')" onmouseover="On('faculty'); window.status='faculty'; return true" href="http://www-cse.ucsd.edu/facresearch/facultyresearch.html"><img border="0" width="108" height="54" src="/images/HN_faculty.gif" name="faculty" alt="faculty"></a></td><td valign="top" width="109"><a onmouseout="Off('graduate')" onmouseover="On('graduate'); window.status='graduate'; return true" href="http://www-cse.ucsd.edu/gradedu/gradeduhome.html"><img border="0" width="109" height="54" src="/images/HN_graduate.gif" name="graduate" alt="graduate"></a></td><td valign="top" width="140"><a onmouseout="Off('undergraduate')" onmouseover="On('undergraduate'); window.status='undergraduate'; return true" href="http://www-cse.ucsd.edu/undergrad/undergradeduhome.html"><img border="0" width="140" height="54" src="/images/HN_undergraduate.gif" name="undergraduate" alt="undergraduate"></a></td><td valign="top" width="142"><a onmouseout="Off('deptadmin')" onmouseover="On('deptadmin'); window.status='deptadmin'; return true" href="http://www-cse.ucsd.edu/deptadmin/index.php"><img border="0" width="142" height="54" src="/images/HN_deptadmin.gif" name="deptadmin" alt="deptadmin"></a></td><td valign="top" width="94"><a onmouseout="Off('contactcse')" onmouseover="On('contactcse'); window.status='contactcse'; return true" href="http://www-cse.ucsd.edu/aboutcse/contactinfo.html"><img border="0" width="94" height="54" src="/images/HN_contactcse.gif" name="contactcse" alt="contactcse"></a></td> </tr> </table> <script>aboutcseon = new Image(82,54); aboutcseon.src = "/images/HNR_aboutcse.gif"; aboutcseoff = new Image(82,54); aboutcseoff.src = "/images/HN_aboutcse.gif"; csepeopleon = new Image(85,54); csepeopleon.src = "/images/HNR_csepeople.gif"; csepeopleoff = new Image(85,54); csepeopleoff.src = "/images/HN_csepeople.gif"; facultyon = new Image(108,54); facultyon.src = "/images/HNR_faculty.gif"; facultyoff = new Image(108,54); facultyoff.src = "/images/HN_faculty.gif"; graduateon = new Image(109,54); graduateon.src = "/images/HNR_graduate.gif"; graduateoff = new Image(109,54); graduateoff.src = "/images/HN_graduate.gif"; undergraduateon = new Image(140,54); undergraduateon.src = "/images/HNR_undergraduate.gif"; undergraduateoff = new Image(140,54); undergraduateoff.src = "/images/HN_undergraduate.gif"; deptadminon = new Image(142,54); deptadminon.src = "/images/HNR_deptadmin.gif"; deptadminoff = new Image(142,54); deptadminoff.src = "/images/HN_deptadmin.gif"; contactcseon = new Image(94,54); contactcseon.src = "/images/HNR_contactcse.gif"; contactcseoff = new Image(94,54); contactcseoff.src = "/images/HN_contactcse.gif"; </script> <table cellpadding="0" cellspacing="0" border="0" width="760"> <tr> <td bgcolor="#EFEFEF" valign="top" width="760"><img border="0" width="1" height="12" src="/images/space.gif"></td> </tr> </table><table cellpadding="0" cellspacing="0" border="0" width="760"><tr><td valign="top" height="1" width="12" bgcolor="#efefef"><img height="1" width="12" src="/images/space.gif"></td> <td> <style><!-- a.info { text-decoration: none; color: #4444cc; } a.info:hover { color: #4444cc; text-decoration: underline; } /* set table header to a fixed position. WinIE 6.x only */ /* In WinIE 6.x, any element with a position property set to relative and is a child of */ /* an element that has an overflow property set, the relative value translates into fixed. */ /* Ex: parent element DIV with a class of tableContainer has an overflow property set to auto */ thead.fixedHeader tr { } /* set THEAD element to have block level attributes. All other non-IE browsers */ /* this enables overflow to work on TBODY element. All other non-IE, non-Mozilla browsers */ html>body thead.fixedHeader tr { } /* make the TH elements pretty */ thead.fixedHeader th { border 1px groove; font-weight: bold; font-size: 1.2em; text-align: center; } /* define the table content to be scrollable */ /* set TBODY element to have block level attributes. All other non-IE browsers */ /* this enables overflow to work on TBODY element. All other non-IE, non-Mozilla browsers */ /* induced side effect is that child TDs no longer accept width: auto */ html>body tbody.scrollContent { width: 100%; } /* make TD elements pretty. Provide alternating classes for striping the table */ thead.fixedHeader th, tbody.scrollContent td { border-bottom: none; border-left: none; border-right: 1px solid #CCC; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol2, thead.fixedHeader th.majorCol3, tbody.scrollContent td.topRow { border-top: 1px inset #DDD; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol2, thead.fixedHeader th.majorCol3, thead.fixedHeader th.minorCol2, tbody.scrollContent td.minorCol2 { border-right: 1px inset #888888; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol2, thead.fixedHeader th.majorCol3, thead.fixedHeader th.minorCol0, tbody.scrollContent td.minorCol0 { border-left: 1px inset #888888; } tbody.scrollContent td.middleRow { border-top: 1px dotted #DDD; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol2, tbody.scrollContent td.majorCol0, tbody.scrollContent td.majorCol2 { background-color: #ffffff; } thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol3, tbody.scrollContent td.majorCol1, tbody.scrollContent td.majorCol3 { background-color: #efefef; } .displayNone { display: none; } .displayBlock { display: block; } li.printMessage { color: #0000cc; } li.printError { color: #cc0000; } --></style> <script> <!-- function classChange(element,newclass) { element.className = newclass; } function toggleDisplay(el) { element = document.getElementById(el); if( element.className == "displayBlock" ){ classChange(element, "displayNone"); } else { classChange(element, "displayBlock"); } } --> </script><table cellpadding='4' border='1' width = 100%><tr><td><a href="menu.php">Login</a></td><td><a href='index.php'>Home</a></td><td><a href='history.php'>Historical view</a></td></tr></table><br><h2 align='center'>Initial Course Scheduling</h2> <ul><li class='printError'>You must be logged in to view/edit initial planning.</li></ul><table> <form method='post' action = 'menu.php'> <tr><td> Username:</td><td><input type='text' name='handle' size='20'></td></tr> <br> <td> Password:</td><td><input type='password' name='passwd' size='10'></td> <br> <input type='hidden' name='rememberMe' value='true'> <tr><td align = right colspan = 2><input type='submit' value='Login'></td></tr> </form> </table></td><td bgcolor="#efefef" height="12" width="12"><img height="1" width="12" src="/images/space.gif"></td> </tr> <tr><td bgcolor="#efefef" colspan="3" height="12" width="760"><img height="12" width="760" src="/images/space.gif"></td> </tr> </table> </body></html> Seems to cause the entire Xserver to crash. At first, I assumed that it was X.org, but trying it with konqueror resulted in no crash. jnguy@stetson:~$ Xorg -version X Window System Version 7.0.0 Release Date: 21 December 2005 X Protocol Version 11, Revision 0, Release 7.0 Build Operating System:Linux 2.6.12 i686 Current Operating System: Linux stetson.ucsd.edu 2.6.15-23-386 #1 PREEMPT Tue May 23 13:49:40 UTC 2006 i686 Build Date: 16 March 2006 Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. Module Loader present However, it does not appear to happen when using another computer either. Reproducible: Always Steps to Reproduce: 1. Go to http://jigsaw.w3.org/css-validator/ 2. enter <html lang="en"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <style type="text/css"> td { font-size: 12px; font-family: verdana, arial, geneva, sans-serif; } h2 { font-size: 18px; font-family: verdana, arial, geneva, sans-serif; } </style> <title> UCSD Department of Computer Science and Engineering - </title> <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> <meta content="en" http-equiv="content-language"> <meta content="text/css" http-equiv="content-style-type"> <meta content="no" http-equiv="imagetoolbar"> <meta content="Computer Science, engineering, ucsd, faculty, students, Jacobs School, San Diego, University" name="keywords"> <meta content="UCSD Department of Computer Science and Engineering" name="description"> <meta content="UCSD Department of Computer Science and Engineering" name="organization"> <meta content="" name="pageno"> <link media="screen" type="text/css" href="http://www-cse.ucsd.edu/css/global_style.css" rel="stylesheet"> <script type="text/javascript" language="JavaScript" src="http://www-cse.ucsd.edu/javascript/global_functions.js"> </script> </head><body style="background: #ffffff url(/images/IMG_bgimg.gif) no-repeat" rightmargin="0" leftmargin="0" topmargin="0" marginheight="0"marginwidth="0" alink="#006699" vlink="#006699" link="#006699"><a name="top"></a> <table bgcolor="#efefef" cellpadding="0" cellspacing="0" border="0" width="760"> <tr> <td valign="top" width="187"><a href="http://www.jacobsschool.ucsd.edu"><img border="0" width="187" height="47" src="/images/H_logo.gif" alt="UCSD Jacobs School"></a></td><td valign="top" width="573"><a href="http://www-cse.ucsd.edu/index.php"><img border="0" width="573" height="47" src="http://www-cse.ucsd.edu/images/H_header.gif" alt="Department of Computer Science and Engineering"></a></td> </tr> </table> <table cellpadding="0" cellspacing="0" border="0" width="760"> <tr> <td valign="top" width="82"><a onmouseout="Off('aboutcse')" onmouseover="On('aboutcse'); window.status='aboutcse'; return true" href="http://www-cse.ucsd.edu/aboutcse/aboutcse.html"><img border="0" width="82" height="54" src="/images/HN_aboutcse.gif" name="aboutcse" alt="aboutcse"></a></td><td valign="top" width="85"><a onmouseout="Off('csepeople')" onmouseover="On('csepeople'); window.status='csepeople'; return true" href="http://www-cse.ucsd.edu/csepeople/csepeoplehome.html"><img border="0" width="85" height="54" src="/images/HN_csepeople.gif" name="csepeople" alt="csepeople"></a></td><td valign="top" width="108"><a onmouseout="Off('faculty')" onmouseover="On('faculty'); window.status='faculty'; return true" href="http://www-cse.ucsd.edu/facresearch/facultyresearch.html"><img border="0" width="108" height="54" src="/images/HN_faculty.gif" name="faculty" alt="faculty"></a></td><td valign="top" width="109"><a onmouseout="Off('graduate')" onmouseover="On('graduate'); window.status='graduate'; return true" href="http://www-cse.ucsd.edu/gradedu/gradeduhome.html"><img border="0" width="109" height="54" src="/images/HN_graduate.gif" name="graduate" alt="graduate"></a></td><td valign="top" width="140"><a onmouseout="Off('undergraduate')" onmouseover="On('undergraduate'); window.status='undergraduate'; return true" href="http://www-cse.ucsd.edu/undergrad/undergradeduhome.html"><img border="0" width="140" height="54" src="/images/HN_undergraduate.gif" name="undergraduate" alt="undergraduate"></a></td><td valign="top" width="142"><a onmouseout="Off('deptadmin')" onmouseover="On('deptadmin'); window.status='deptadmin'; return true" href="http://www-cse.ucsd.edu/deptadmin/index.php"><img border="0" width="142" height="54" src="/images/HN_deptadmin.gif" name="deptadmin" alt="deptadmin"></a></td><td valign="top" width="94"><a onmouseout="Off('contactcse')" onmouseover="On('contactcse'); window.status='contactcse'; return true" href="http://www-cse.ucsd.edu/aboutcse/contactinfo.html"><img border="0" width="94" height="54" src="/images/HN_contactcse.gif" name="contactcse" alt="contactcse"></a></td> </tr> </table> <script>aboutcseon = new Image(82,54); aboutcseon.src = "/images/HNR_aboutcse.gif"; aboutcseoff = new Image(82,54); aboutcseoff.src = "/images/HN_aboutcse.gif"; csepeopleon = new Image(85,54); csepeopleon.src = "/images/HNR_csepeople.gif"; csepeopleoff = new Image(85,54); csepeopleoff.src = "/images/HN_csepeople.gif"; facultyon = new Image(108,54); facultyon.src = "/images/HNR_faculty.gif"; facultyoff = new Image(108,54); facultyoff.src = "/images/HN_faculty.gif"; graduateon = new Image(109,54); graduateon.src = "/images/HNR_graduate.gif"; graduateoff = new Image(109,54); graduateoff.src = "/images/HN_graduate.gif"; undergraduateon = new Image(140,54); undergraduateon.src = "/images/HNR_undergraduate.gif"; undergraduateoff = new Image(140,54); undergraduateoff.src = "/images/HN_undergraduate.gif"; deptadminon = new Image(142,54); deptadminon.src = "/images/HNR_deptadmin.gif"; deptadminoff = new Image(142,54); deptadminoff.src = "/images/HN_deptadmin.gif"; contactcseon = new Image(94,54); contactcseon.src = "/images/HNR_contactcse.gif"; contactcseoff = new Image(94,54); contactcseoff.src = "/images/HN_contactcse.gif"; </script> <table cellpadding="0" cellspacing="0" border="0" width="760"> <tr> <td bgcolor="#EFEFEF" valign="top" width="760"><img border="0" width="1" height="12" src="/images/space.gif"></td> </tr> </table><table cellpadding="0" cellspacing="0" border="0" width="760"><tr><td valign="top" height="1" width="12" bgcolor="#efefef"><img height="1" width="12" src="/images/space.gif"></td> <td> <style><!-- a.info { text-decoration: none; color: #4444cc; } a.info:hover { color: #4444cc; text-decoration: underline; } /* set table header to a fixed position. WinIE 6.x only */ /* In WinIE 6.x, any element with a position property set to relative and is a child of */ /* an element that has an overflow property set, the relative value translates into fixed. */ /* Ex: parent element DIV with a class of tableContainer has an overflow property set to auto */ thead.fixedHeader tr { } /* set THEAD element to have block level attributes. All other non-IE browsers */ /* this enables overflow to work on TBODY element. All other non-IE, non-Mozilla browsers */ html>body thead.fixedHeader tr { } /* make the TH elements pretty */ thead.fixedHeader th { border 1px groove; font-weight: bold; font-size: 1.2em; text-align: center; } /* define the table content to be scrollable */ /* set TBODY element to have block level attributes. All other non-IE browsers */ /* this enables overflow to work on TBODY element. All other non-IE, non-Mozilla browsers */ /* induced side effect is that child TDs no longer accept width: auto */ html>body tbody.scrollContent { width: 100%; } /* make TD elements pretty. Provide alternating classes for striping the table */ thead.fixedHeader th, tbody.scrollContent td { border-bottom: none; border-left: none; border-right: 1px solid #CCC; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol2, thead.fixedHeader th.majorCol3, tbody.scrollContent td.topRow { border-top: 1px inset #DDD; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol2, thead.fixedHeader th.majorCol3, thead.fixedHeader th.minorCol2, tbody.scrollContent td.minorCol2 { border-right: 1px inset #888888; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol2, thead.fixedHeader th.majorCol3, thead.fixedHeader th.minorCol0, tbody.scrollContent td.minorCol0 { border-left: 1px inset #888888; } tbody.scrollContent td.middleRow { border-top: 1px dotted #DDD; } thead.fixedHeader th.majorCol0, thead.fixedHeader th.majorCol2, tbody.scrollContent td.majorCol0, tbody.scrollContent td.majorCol2 { background-color: #ffffff; } thead.fixedHeader th.majorCol1, thead.fixedHeader th.majorCol3, tbody.scrollContent td.majorCol1, tbody.scrollContent td.majorCol3 { background-color: #efefef; } .displayNone { display: none; } .displayBlock { display: block; } li.printMessage { color: #0000cc; } li.printError { color: #cc0000; } --></style> <script> <!-- function classChange(element,newclass) { element.className = newclass; } function toggleDisplay(el) { element = document.getElementById(el); if( element.className == "displayBlock" ){ classChange(element, "displayNone"); } else { classChange(element, "displayBlock"); } } --> </script><table cellpadding='4' border='1' width = 100%><tr><td><a href="menu.php">Login</a></td><td><a href='index.php'>Home</a></td><td><a href='history.php'>Historical view</a></td></tr></table><br><h2 align='center'>Initial Course Scheduling</h2> <ul><li class='printError'>You must be logged in to view/edit initial planning.</li></ul><table> <form method='post' action = 'menu.php'> <tr><td> Username:</td><td><input type='text' name='handle' size='20'></td></tr> <br> <td> Password:</td><td><input type='password' name='passwd' size='10'></td> <br> <input type='hidden' name='rememberMe' value='true'> <tr><td align = right colspan = 2><input type='submit' value='Login'></td></tr> </form> </table></td><td bgcolor="#efefef" height="12" width="12"><img height="1" width="12" src="/images/space.gif"></td> </tr> <tr><td bgcolor="#efefef" colspan="3" height="12" width="760"><img height="12" width="760" src="/images/space.gif"></td> </tr> </table> </body></html> 3. click submit Actual Results: Xserver crashes Expected Results: CSS validator results Using Kubuntu Kernel 2.6.15-23
Do you crash in official mozilla.org builds? http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/
I'm using whatever is on the Ubuntu repository, so I would assume so.
The point is that Ubuntu patches their builds. So if this only occurs in Ubuntu's builds, and not ours, then it should be filed against Ubuntu.
Hm. Okay. In addition, on a RHEL4 machine, the address bar begins acting weird after the same test is performed.
Jack, you still haven't answered my question in comment 1. If you need more info., the easiest way to do this is just to download a tar.gz (pre-compiled binary) and do `tar xf <file>' then `./firefox/firefox -P'. This will launch the profile manger. Create a new profile to test this in and report back.
I followed your instructions and Xorg still crashed. This time, it took slightly longer, but it still crashed. Please let me know if there is anything else you need.
if your xserver crashes you need to visit your xserver vendor and follow their instructions for debugging crashes in their product. the xserver is like your os or your kernel, if it crashes, it's entirely the fault of the xserver/kernel. sure we could be nicer and try not to encourage it to crash, but it's the xserver/kernel's job not to crash no matter what input we or any other application give it.
Can this bug be closed INVALID then?
Version: unspecified → 1.5.0.x Branch
Doesn't crash for me using the Firefox that ships with Ubuntu 9.10.
Status: UNCONFIRMED → RESOLVED
Closed: 16 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.