<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>94889</bug_id>
          
          <creation_ts>2012-08-23 18:53:39 -0700</creation_ts>
          <short_desc>Remove the now-unneeded invalidations in RenderTable::removeCaption</short_desc>
          <delta_ts>2012-08-30 07:48:02 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tables</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Julien Chaffraix">jchaffraix</reporter>
          <assigned_to name="Julien Chaffraix">jchaffraix</assigned_to>
          <cc>eric</cc>
    
    <cc>hyatt</cc>
    
    <cc>inferno</cc>
    
    <cc>robert</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>703649</commentid>
    <comment_count>0</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-08-23 18:53:39 -0700</bug_when>
    <thetext>Following bug 94842, we moved the post-removal invalidation to RenderTable&apos;s children.

While doing so, the invalidation code in RenderTable::removeCaption appeared to be some old code that was introduced when we didn&apos;t support several captions in the same table (see for example bug 58249). It should be safe to remove it now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703653</commentid>
    <comment_count>1</comment_count>
      <attachid>160308</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-08-23 19:04:41 -0700</bug_when>
    <thetext>Created attachment 160308
Proposed code removal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703715</commentid>
    <comment_count>2</comment_count>
      <attachid>160308</attachid>
    <who name="Abhishek Arya">inferno</who>
    <bug_when>2012-08-23 21:19:47 -0700</bug_when>
    <thetext>Comment on attachment 160308
Proposed code removal.

View in context: https://bugs.webkit.org/attachment.cgi?id=160308&amp;action=review

&gt; Source/WebCore/rendering/RenderTable.cpp:-209
&gt; -        node()-&gt;setNeedsStyleRecalc();

Can you please explain in a little more detail why this change is not necessary now ?

&gt; Source/WebCore/rendering/RenderTable.cpp:-211
&gt; -    setNeedsSectionRecalc();

Good change to remove setNeedsSectionRecalc() here, but this is incomplete without removing the m_captions manipulation in recalcsections. recalcsections shouldn&apos;t be worrying about captions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703734</commentid>
    <comment_count>3</comment_count>
    <who name="Abhishek Arya">inferno</who>
    <bug_when>2012-08-23 21:56:37 -0700</bug_when>
    <thetext>actually we need RenderTableCaption::insertedIntoTree and RenderTableCaption::removedFromTree. insertedIntoTree is pretty important since currently m_captions is only set in ::addChild</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>705259</commentid>
    <comment_count>4</comment_count>
      <attachid>160308</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-08-27 07:34:28 -0700</bug_when>
    <thetext>Comment on attachment 160308
Proposed code removal.

View in context: https://bugs.webkit.org/attachment.cgi?id=160308&amp;action=review

&gt;&gt; Source/WebCore/rendering/RenderTable.cpp:-209
&gt;&gt; -        node()-&gt;setNeedsStyleRecalc();
&gt; 
&gt; Can you please explain in a little more detail why this change is not necessary now ?

Sure.

First having rendering force a style recalc is a violation of how style recalc flows (it flows from CSS / JavaScript updates and forces the render tree to update) and should be considered carefully. Here I see no indication that our style may change due to the caption removal.

Mostly, this code was added to solve bug 58249. The idea was to re-attach most of the table child following a caption removal. This call was never justified and was done to ensure that table children were properly re-attached on table caption removal. As we don&apos;t re-attach the table children on table removal, it is now dead code.

&gt;&gt; Source/WebCore/rendering/RenderTable.cpp:-211
&gt;&gt; -
&gt;&gt; -    setNeedsSectionRecalc();
&gt; 
&gt; Good change to remove setNeedsSectionRecalc() here, but this is incomplete without removing the m_captions manipulation in recalcsections. recalcsections shouldn&apos;t be worrying about captions.

Fair enough, I would have qualified as orthogonal but it&apos;s likely better to just sanitize this logic while at it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>705368</commentid>
    <comment_count>5</comment_count>
    <who name="Abhishek Arya">inferno</who>
    <bug_when>2012-08-27 10:17:32 -0700</bug_when>
    <thetext>Ok, can you please rebaseline the patch after https://bugs.webkit.org/show_bug.cgi?id=95090 is landed.

ah! i now remember the style recalc hack. i remember adding it when we only supported one table caption and when it is getting removed, we trigger style recalc so that other captions can be set to m_caption.

Robert, u ok with removing this ? Seems like you didn&apos;t remove it when you added the multiple captions support. Any reason not to remove it ? I hope there is no usecase we are missing here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>705439</commentid>
    <comment_count>6</comment_count>
    <who name="Robert Hogan">robert</who>
    <bug_when>2012-08-27 11:31:17 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Ok, can you please rebaseline the patch after https://bugs.webkit.org/show_bug.cgi?id=95090 is landed.
&gt; 
&gt; ah! i now remember the style recalc hack. i remember adding it when we only supported one table caption and when it is getting removed, we trigger style recalc so that other captions can be set to m_caption.
&gt; 
&gt; Robert, u ok with removing this ? Seems like you didn&apos;t remove it when you added the multiple captions support. Any reason not to remove it ? I hope there is no usecase we are missing here.

I can&apos;t think of any good reason for keeping it!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>705993</commentid>
    <comment_count>7</comment_count>
      <attachid>160882</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-08-27 19:11:01 -0700</bug_when>
    <thetext>Created attachment 160882
Proposed change: removed setNeedsStylRecalc per discussion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>707003</commentid>
    <comment_count>8</comment_count>
      <attachid>160882</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-28 19:24:12 -0700</bug_when>
    <thetext>Comment on attachment 160882
Proposed change: removed setNeedsStylRecalc per discussion.

Rejecting attachment 160882 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

Last 500 characters of output:
_by_email
    return self._reviewer_only(self.account_by_email(email))
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/common/config/committers.py&quot;, line 687, in account_by_email
    return self._email_to_account_map().get(email.lower()) if email else None
  File &quot;/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/common/config/committers.py&quot;, line 580, in _email_to_account_map
    assert(email not in self._accounts_by_email)  # We should never have duplicate emails.
AssertionError

Full output: http://queues.webkit.org/results/13682017</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>708613</commentid>
    <comment_count>9</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-08-30 07:48:02 -0700</bug_when>
    <thetext>Committed r127139: &lt;http://trac.webkit.org/changeset/127139&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160308</attachid>
            <date>2012-08-23 19:04:41 -0700</date>
            <delta_ts>2012-08-27 19:10:58 -0700</delta_ts>
            <desc>Proposed code removal.</desc>
            <filename>bug-94889-20120823190438.patch</filename>
            <type>text/plain</type>
            <size>2038</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2NDk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWVlZjQyYmMyZWQ3OGVi
MTQzZmRmMDc0ZmUzODFiNjIzZDIwYjU2MC4uODE2MWE5MGU5MDI2NDY5MzFjMjNkOGJhYWJjNzM4
MDQ5YzZmNDZhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA4LTIzICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB0
aGUgbm93LXVubmVlZGVkIGludmFsaWRhdGlvbnMgaW4gUmVuZGVyVGFibGU6OnJlbW92ZUNhcHRp
b24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk0ODg5
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9sbG93
aW5nIGJ1ZyA5NDg0MiwgdGhlIGludmFsaWRhdGlvbiBjb2RlIHdhcyBwdXNoZWQgZG93biB0byBS
ZW5kZXJUYWJsZQorICAgICAgICBjaGlsZHJlbi4gVGhpcyBtYWRlIGFwcGFyZW50IHRoYXQgdGhl
IGNhcHRpb24gaW52YWxpZGF0aW9uIGNvZGUgd2FzIG9sZCBhbmQKKyAgICAgICAgYmVsb25nZWQg
dG8gYSB0aW1lIHdoZXJlIHdlIGRpZG4ndCBzdXBwb3J0IG11bHRpcGxlIGNhcHRpb24uCisKKyAg
ICAgICAgUmVmYWN0b3JpbmcgY292ZXJlZCBieSB0aGUgZXhpc3RpbmcgdGFibGUgdGVzdHMuCisK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGFibGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyVGFibGU6OnJlbW92ZUNhcHRpb24pOgorICAgICAgICBSZW1vdmVkIHRoZSBjYWxsIHRv
IHJlY2FsY1N0eWxlKCkgYW5kIHNldE5lZWRzU2VjdGlvbnNSZWNhbGMoKSBhcyB3ZSBkb24ndCBu
ZWVkCisgICAgICAgIHRvIHNob3cgYW5kIGNvbGxlY3Qgb3VyIG9ubHkgY2FwdGlvbiB3aGVuIGl0
IGlzIHJlbW92ZWQuIFRoZSBtdWx0aXBsZSBjYXB0aW9ucyBjb2RlCisgICAgICAgIGFscmVhZHkg
a2VlcCB0cmFja3Mgb2YgdGhlIGNhcHRpb25zIGFuZCBpbnZhbGlkYXRlIGFzIG5lZWRlZC4KKwog
MjAxMi0wOC0yMyAgRG9taW5pYyBNYXp6b25pICA8ZG1henpvbmlAZ29vZ2xlLmNvbT4KIAogICAg
ICAgICBBWDogRm9jdXNhYmxlIGVsZW1lbnRzIHdpdGhvdXQgYSByb2xlIHNob3VsZCBub3QgYmUg
aWdub3JlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZS5jcHAKaW5kZXggYjVj
MzA4MzczZGYzNmQ2YjI4NzZjOWFjNTM5ZTdlZDAwZDk2ZTRjNy4uZGE3MDM5YWZlZTk1ZDlmYWEz
Yjg0NTA3ZmE1ZGRkYjdhZDc0YjFhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
VGFibGUuY3BwCkBAIC0yMDIsMTMgKzIwMiw2IEBAIHZvaWQgUmVuZGVyVGFibGU6OnJlbW92ZUNh
cHRpb24oY29uc3QgUmVuZGVyVGFibGVDYXB0aW9uKiBvbGRDYXB0aW9uKQogICAgIHNpemVfdCBp
bmRleCA9IG1fY2FwdGlvbnMuZmluZChvbGRDYXB0aW9uKTsKICAgICBBU1NFUlQoaW5kZXggIT0g
bm90Rm91bmQpOwogICAgIG1fY2FwdGlvbnMucmVtb3ZlKGluZGV4KTsKLQotICAgIC8vIEZJWE1F
OiBUaGUgcmVzdCBvZiB0aGlzIGZ1bmN0aW9uIGlzIHByb2JhYmx5IG5vdCBuZWVkZWQgc2luY2Ug
d2UgaGF2ZSAKLSAgICAvLyBpbXBsZW1lbnRlZCBwcm9wZXIgbXVsdGlwbGUgY2FwdGlvbnMgc3Vw
cG9ydCAoc2VlIGJ1ZyA1ODI0OSkuCi0gICAgaWYgKG5vZGUoKSkKLSAgICAgICAgbm9kZSgpLT5z
ZXROZWVkc1N0eWxlUmVjYWxjKCk7Ci0KLSAgICBzZXROZWVkc1NlY3Rpb25SZWNhbGMoKTsKIH0K
IAogdm9pZCBSZW5kZXJUYWJsZTo6Y29tcHV0ZUxvZ2ljYWxXaWR0aCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160882</attachid>
            <date>2012-08-27 19:11:01 -0700</date>
            <delta_ts>2012-08-28 19:24:12 -0700</delta_ts>
            <desc>Proposed change: removed setNeedsStylRecalc per discussion.</desc>
            <filename>bug-94889-20120827191053.patch</filename>
            <type>text/plain</type>
            <size>1868</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2ODM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDk2M2U2OGE0MzNjZTYw
YjcwNWEzY2YyMGY3NWYxMTFhMjA4ZGQ1NS4uZTIxNzZhZDQ3ZGQyYzY5YWRjNTVlOTNkODZlYTBk
NTIyZjcyZGU2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA4LTI3ICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB0
aGUgbm93LXVubmVlZGVkIGludmFsaWRhdGlvbnMgaW4gUmVuZGVyVGFibGU6OnJlbW92ZUNhcHRp
b24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk0ODg5
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9sbG93
aW5nIGJ1ZyA5NDg0MiBhbmQgOTUwOTAsIHRoZSBpbnZhbGlkYXRpb24gY29kZSB3YXMgcHVzaGVk
IGRvd24gdG8KKyAgICAgICAgUmVuZGVyVGFibGVDYXB0aW9uLiBUaGlzIG1hZGUgYXBwYXJlbnQg
dGhhdCB3ZSBkaWQgc29tZSBpbnZhbGlkYXRpb25zIHRoYXQKKyAgICAgICAgd2VyZSBub3QgbmVl
ZGVkLgorCisgICAgICAgIFJlZmFjdG9yaW5nIGNvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGFibGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyVGFibGU6OnJlbW92ZUNhcHRpb24pOgorICAgICAgICBSZW1vdmVkIHNldE5lZWRzUmVj
YWxjU3R5bGUoKSBhcyBpdCdzIHVubmVlZGVkIG5vdy4gSXQgd2FzIHByb2JhYmx5IG5lZWRlZCBi
YWNrIHdoZW4KKyAgICAgICAgd2UgZGlkbid0IHN1cHBvcnQgbXVsdGlwbGUgY2FwdGlvbnMgKHNl
ZSBidWcgNTgyNDkpIGJ1dCB0aGUgbmVlZCB3YXMgbmV2ZXIgZG9jdW1lbnRlZAorICAgICAgICBz
byB5b3UgY291bGQgd29uZGVyIGlmIGl0IHdhcyByZWFsbHkgbmVlZGVkIGluIHRoZSBmaXJzdCBw
bGFjZS4KKwogMjAxMi0wOC0yNyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAg
ICAgICAgVW5yZXZpZXdlZCBhdHRlbXB0ZWQgYnVpbGQgZml4IGZvciBNYWMuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlLmNwcAppbmRleCA3Mzg1OTM2ZmNkMWE5NzY0ZmJmZWQ1
ODVkNTBlNzFiNjQxOGFkYjhiLi45MzQxOGJkNDI1NTExNWU5Y2FlODZlZGRiNWQyYzIwMzRhNGY0
YzY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZS5jcHAKQEAgLTIxMCwx
MSArMjEwLDYgQEAgdm9pZCBSZW5kZXJUYWJsZTo6cmVtb3ZlQ2FwdGlvbihjb25zdCBSZW5kZXJU
YWJsZUNhcHRpb24qIG9sZENhcHRpb24pCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fY2FwdGlv
bnMucmVtb3ZlKGluZGV4KTsKLQotICAgIC8vIEZJWE1FOiBUaGUgcmVzdCBvZiB0aGlzIGZ1bmN0
aW9uIGlzIHByb2JhYmx5IG5vdCBuZWVkZWQgc2luY2Ugd2UgaGF2ZSAKLSAgICAvLyBpbXBsZW1l
bnRlZCBwcm9wZXIgbXVsdGlwbGUgY2FwdGlvbnMgc3VwcG9ydCAoc2VlIGJ1ZyA1ODI0OSkuCi0g
ICAgaWYgKG5vZGUoKSkKLSAgICAgICAgbm9kZSgpLT5zZXROZWVkc1N0eWxlUmVjYWxjKCk7CiB9
CiAKIHZvaWQgUmVuZGVyVGFibGU6OmNvbXB1dGVMb2dpY2FsV2lkdGgoKQo=
</data>
<flag name="review"
          id="171536"
          type_id="1"
          status="+"
          setter="inferno"
    />
    <flag name="commit-queue"
          id="171798"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>