[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

eric at webkit.org eric at webkit.org
Wed Dec 22 11:09:35 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 10b6e808652f9a100e988b89de4b538a2530f624
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Jul 14 01:11:54 2010 +0000

    2010-07-13  Eric Seidel  <eric at webkit.org>
    
            Reviewed by Adam Barth.
    
            Fix my misreading of "clear to the last marker" in the HTML5 spec
            https://bugs.webkit.org/show_bug.cgi?id=42199
    
            * html5lib/runner-expected-html5.txt:
    2010-07-13  Eric Seidel  <eric at webkit.org>
    
            Reviewed by Adam Barth.
    
            Fix my misreading of "clear to the last marker" in the HTML5 spec
            https://bugs.webkit.org/show_bug.cgi?id=42199
    
            * html/HTMLFormattingElementList.cpp:
            (WebCore::HTMLFormattingElementList::clearToLastMarker):
            * html/HTMLFormattingElementList.h:
            * html/HTMLTreeBuilder.cpp:
            (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
            (WebCore::HTMLTreeBuilder::processEndOfFile):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63274 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index a9cb932..9d0658a 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,12 @@
+2010-07-13  Eric Seidel  <eric at webkit.org>
+
+        Reviewed by Adam Barth.
+
+        Fix my misreading of "clear to the last marker" in the HTML5 spec
+        https://bugs.webkit.org/show_bug.cgi?id=42199
+
+        * html5lib/runner-expected-html5.txt:
+
 2010-07-13  Oliver Hunt  <oliver at apple.com>
 
         Reviewed by Gavin Barraclough.
diff --git a/LayoutTests/html5lib/runner-expected-html5.txt b/LayoutTests/html5lib/runner-expected-html5.txt
index 9895f96..4ede9cd 100644
--- a/LayoutTests/html5lib/runner-expected-html5.txt
+++ b/LayoutTests/html5lib/runner-expected-html5.txt
@@ -7,51 +7,8 @@ CONSOLE MESSAGE: line 2: PASS
 CONSOLE MESSAGE: line 2: FOO<span>BAR</span>BAZ
 Content-Type: text/plain
 resources/tests1.dat:
-30
 78
 80
-103
-
-Test 30 of 113 in resources/tests1.dat failed. Input:
-<a><table><td><a><table></table><a></tr><a></table><b>X</b>C<a>Y
-Got:
-| <html>
-|   <head>
-|   <body>
-|     <a>
-|       <a>
-|       <table>
-|         <tbody>
-|           <tr>
-|             <td>
-|               <a>
-|                 <table>
-|               <a>
-|       <a>
-|         <b>
-|           "X"
-|         "C"
-|       <a>
-|         "Y"
-Expected:
-| <html>
-|   <head>
-|   <body>
-|     <a>
-|       <a>
-|       <table>
-|         <tbody>
-|           <tr>
-|             <td>
-|               <a>
-|                 <table>
-|               <a>
-|     <a>
-|       <b>
-|         "X"
-|       "C"
-|     <a>
-|       "Y"
 
 Test 78 of 113 in resources/tests1.dat failed. Input:
 <a href="blah">aba<table><a href="foo">br<tr><td></td></tr>x</table>aoe
@@ -65,12 +22,14 @@ Got:
 |       <a>
 |         href="foo"
 |         "br"
+|       <a>
 |       "x"
 |       <table>
 |         <tbody>
 |           <tr>
 |             <td>
-|     "aoe"
+|     <a>
+|       "aoe"
 Expected:
 | <html>
 |   <head>
@@ -101,6 +60,7 @@ Got:
 |     <a>
 |       href="blah"
 |       "aba"
+|     <a>
 |     "x"
 |     <table>
 |       <tbody>
@@ -109,7 +69,8 @@ Got:
 |             <a>
 |               href="foo"
 |               "br"
-|     "aoe"
+|     <a>
+|       "aoe"
 Expected:
 | <html>
 |   <head>
@@ -130,37 +91,6 @@ Expected:
 |     <a>
 |       href="blah"
 |       "aoe"
-
-Test 103 of 113 in resources/tests1.dat failed. Input:
-<a><table><td><a><table></table><a></tr><a></table><a>
-Got:
-| <html>
-|   <head>
-|   <body>
-|     <a>
-|       <a>
-|       <table>
-|         <tbody>
-|           <tr>
-|             <td>
-|               <a>
-|                 <table>
-|               <a>
-|       <a>
-Expected:
-| <html>
-|   <head>
-|   <body>
-|     <a>
-|       <a>
-|       <table>
-|         <tbody>
-|           <tr>
-|             <td>
-|               <a>
-|                 <table>
-|               <a>
-|     <a>
 resources/tests2.dat: PASS
 
 resources/tests3.dat: PASS
@@ -291,13 +221,15 @@ Got:
 |   <head>
 |   <body>
 |     <b>
+|     <b>
 |     "bbb"
 |     <table>
 |       <tbody>
 |         <tr>
 |           <td>
 |             "aaa"
-|     "ccc"
+|     <b>
+|       "ccc"
 Expected:
 | <html>
 |   <head>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 9650911..3170f38 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,17 @@
+2010-07-13  Eric Seidel  <eric at webkit.org>
+
+        Reviewed by Adam Barth.
+
+        Fix my misreading of "clear to the last marker" in the HTML5 spec
+        https://bugs.webkit.org/show_bug.cgi?id=42199
+
+        * html/HTMLFormattingElementList.cpp:
+        (WebCore::HTMLFormattingElementList::clearToLastMarker):
+        * html/HTMLFormattingElementList.h:
+        * html/HTMLTreeBuilder.cpp:
+        (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
+        (WebCore::HTMLTreeBuilder::processEndOfFile):
+
 2010-07-13  Oliver Hunt  <oliver at apple.com>
 
         Reviewed by Gavin Barraclough.
diff --git a/WebCore/html/HTMLFormattingElementList.cpp b/WebCore/html/HTMLFormattingElementList.cpp
index d71cc8c..316b0bf 100644
--- a/WebCore/html/HTMLFormattingElementList.cpp
+++ b/WebCore/html/HTMLFormattingElementList.cpp
@@ -121,8 +121,13 @@ void HTMLFormattingElementList::appendMarker()
 
 void HTMLFormattingElementList::clearToLastMarker()
 {
-    while (m_entries.size() && !m_entries.last().isMarker())
+    // http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#clear-the-list-of-active-formatting-elements-up-to-the-last-marker
+    while (m_entries.size()) {
+        bool shouldStop = m_entries.last().isMarker();
         m_entries.removeLast();
+        if (shouldStop)
+            break;
+    }
 }
 
 #ifndef NDEBUG
diff --git a/WebCore/html/HTMLFormattingElementList.h b/WebCore/html/HTMLFormattingElementList.h
index 6b41da4..16e2f62 100644
--- a/WebCore/html/HTMLFormattingElementList.h
+++ b/WebCore/html/HTMLFormattingElementList.h
@@ -114,6 +114,7 @@ public:
     void insertAt(Element*, const Bookmark&);
 
     void appendMarker();
+    // clearToLastMarker also clears the marker (per the HTML5 spec).
     void clearToLastMarker();
 
     const Entry& at(size_t i) const { return m_entries[i]; }
diff --git a/WebCore/html/HTMLTreeBuilder.cpp b/WebCore/html/HTMLTreeBuilder.cpp
index 8051b3e..fd61ed0 100644
--- a/WebCore/html/HTMLTreeBuilder.cpp
+++ b/WebCore/html/HTMLTreeBuilder.cpp
@@ -1561,7 +1561,7 @@ bool HTMLTreeBuilder::processBodyEndTagForInBody(AtomicHTMLToken& token)
         parseError(token);
         return false;
     }
-    notImplemented();
+    notImplemented(); // Emit a more specific parse error based on stack contents.
     setInsertionMode(AfterBodyMode);
     return true;
 }
@@ -2604,7 +2604,7 @@ void HTMLTreeBuilder::processEndOfFile(AtomicHTMLToken& token)
     case InBodyMode:
     case InCellMode:
         ASSERT(insertionMode() == InBodyMode || insertionMode() == InCellMode);
-        notImplemented();
+        notImplemented(); // Emit parse error based on what elemtns are still open.
         break;
     case AfterBodyMode:
     case AfterAfterBodyMode:

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list