<?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>57045</bug_id>
          
          <creation_ts>2011-03-24 12:50:06 -0700</creation_ts>
          <short_desc>Eliminate Node::dispatchGenericEvent.</short_desc>
          <delta_ts>2011-03-24 19:34:53 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>
          
          <blocked>55515</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitri Glazkov (Google)">dglazkov</reporter>
          <assigned_to name="Dimitri Glazkov (Google)">dglazkov</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>eae</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>373005</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-24 12:50:06 -0700</bug_when>
    <thetext>Eliminate Node::dispatchGenericEvent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373006</commentid>
    <comment_count>1</comment_count>
      <attachid>86814</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-24 12:52:06 -0700</bug_when>
    <thetext>Created attachment 86814
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373010</commentid>
    <comment_count>2</comment_count>
      <attachid>86816</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-24 13:01:12 -0700</bug_when>
    <thetext>Created attachment 86816
Removed unnecessary extra ref and stale comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373176</commentid>
    <comment_count>3</comment_count>
      <attachid>86816</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-24 16:31:25 -0700</bug_when>
    <thetext>Comment on attachment 86816
Removed unnecessary extra ref and stale comment.

commit queue should do it, for safety.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373224</commentid>
    <comment_count>4</comment_count>
      <attachid>86816</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-24 17:21:39 -0700</bug_when>
    <thetext>Comment on attachment 86816
Removed unnecessary extra ref and stale comment.

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

Wow, this is a really great thing to do. Who on earth every understood the difference between dispatchGenericEvent and dispatchEvent!?

&gt; Source/WebCore/dom/Node.cpp:2699
&gt; +    RefPtr&lt;FrameView&gt; view = document()-&gt;view();

Since this is never used, I think this should be named protectView instead of just view. I also think it makes sense to put this with the other protect before doing any work with the event.

&gt; Source/WebCore/svg/SVGElementInstance.cpp:142
&gt;      SVGElement* element = shadowTreeElement();
&gt;      if (!element)
&gt;          return false;
&gt;  
&gt; -    RefPtr&lt;FrameView&gt; view = element-&gt;document()-&gt;view();
&gt; -    return element-&gt;dispatchGenericEvent(event.release());
&gt; +    return element-&gt;dispatchEvent(event);

I can’t resist pointing out the way I like to write these:

    SVGElement* element = shadowTreeElement();
    return element &amp;&amp; element-&gt;dispatchEvent(event);

But I will set commit-queue+ anyway, because it probably is clearer the way it’s written here anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373272</commentid>
    <comment_count>5</comment_count>
      <attachid>86816</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-24 19:34:47 -0700</bug_when>
    <thetext>Comment on attachment 86816
Removed unnecessary extra ref and stale comment.

Clearing flags on attachment: 86816

Committed r81932: &lt;http://trac.webkit.org/changeset/81932&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373273</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-24 19:34:53 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86814</attachid>
            <date>2011-03-24 12:52:06 -0700</date>
            <delta_ts>2011-03-24 13:01:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-57045-20110324125205.patch</filename>
            <type>text/plain</type>
            <size>5978</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODE4ODcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3M2Y4Y2NkMTU2YjBkYzRi
ZWNkMTE5MzNjM2IyZmNlYWFmMDU4ZGY3Li4wMTliMWZiY2Q2MmYyOTZkN2RjNzI1MDFhNGRlN2Ex
ZDIxNGJmZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDMtMjQgIERpbWl0
cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbGltaW5hdGUgTm9kZTo6ZGlzcGF0Y2hHZW5l
cmljRXZlbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01NzA0NQorCisgICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLCBjb3ZlcmVkIGJ5IGV4aXN0
aW5nIHRlc3RzLgorCisgICAgICAgICogZG9tL05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Tm9kZTo6ZGlzcGF0Y2hFdmVudCk6IENvbWJpbmVkIHdpdGggdGhlIGJvZHkgb2YgZGlzcGF0Y2hH
ZW5lcmljRXZlbnQuCisgICAgICAgICogZG9tL05vZGUuaDoKKyAgICAgICAgKiBwYWdlL0RPTVdp
bmRvdy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmRpc3BhdGNoTG9hZEV2ZW50
KTogQ2hhbmdlZCB0byB1c2UgZGlzcGF0Y2hFdmVudC4KKyAgICAgICAgKiBzdmcvU1ZHRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGVtZW50OjpzZW5kU1ZHTG9hZEV2ZW50SWZQ
b3NzaWJsZSk6IERpdHRvLgorICAgICAgICAqIHN2Zy9TVkdFbGVtZW50SW5zdGFuY2UuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1ZHRWxlbWVudEluc3RhbmNlOjpkaXNwYXRjaEV2ZW50KTogRGl0
dG8uIFRoZSBjb2RlIGhlcmUgc3RpbGwKKyAgICAgICAgICAgIHdvcmtzIHRoYW5rcyB0byBTVkct
YXdhcmUgcmV0YXJnZXRpbmcgaW4gTm9kZS4KKwogMjAxMS0wMy0yNCAgRW5yaWNhIENhc3VjY2kg
IDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL05vZGUuY3BwCmluZGV4IGJkZTE3NGQxYWYzMTMxNTE4MTFhYThhZWUxOTJkMWZlNDhmY2M0
M2IuLmEyNmIzZjdhNGE3MzU2NGFiOGU2MjZmODBmZWExZjg3NWU1MmJkMmMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9k
ZS5jcHAKQEAgLTI2NjAsMTcgKzI2NjAsNiBAQCB2b2lkIE5vZGU6OmdldEV2ZW50QW5jZXN0b3Jz
KFZlY3RvcjxFdmVudENvbnRleHQ+JiBhbmNlc3RvcnMsIEV2ZW50VGFyZ2V0KiBvcmlnaQogICAg
IH0KIH0KIAotYm9vbCBOb2RlOjpkaXNwYXRjaEV2ZW50KFBhc3NSZWZQdHI8RXZlbnQ+IHBycEV2
ZW50KQotewotICAgIFJlZlB0cjxFdmVudFRhcmdldD4gcHJvdGVjdCA9IHRoaXM7Ci0gICAgUmVm
UHRyPEV2ZW50PiBldmVudCA9IHBycEV2ZW50OwotCi0gICAgZXZlbnQtPnNldFRhcmdldChldmVu
dFRhcmdldFJlc3BlY3RpbmdTVkdUYXJnZXRSdWxlcyh0aGlzKSk7Ci0KLSAgICBSZWZQdHI8RnJh
bWVWaWV3PiB2aWV3ID0gZG9jdW1lbnQoKS0+dmlldygpOwotICAgIHJldHVybiBkaXNwYXRjaEdl
bmVyaWNFdmVudChldmVudC5yZWxlYXNlKCkpOwotfQotCiB2b2lkIE5vZGU6OmRpc3BhdGNoU2Nv
cGVkRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCiB7CiAgICAgLy8gV2UgbmVlZCB0byBz
ZXQgdGhlIHRhcmdldCBoZXJlIGJlY2F1c2UgaXQgY2FuIGdvIGF3YXkgYnkgdGhlIHRpbWUgd2Ug
YWN0dWFsbHkgZmlyZSB0aGUgZXZlbnQuCkBAIC0yNzAwLDkgKzI2ODksMTQgQEAgc3RhdGljIEV2
ZW50RGlzcGF0Y2hCZWhhdmlvciBkZXRlcm1pbmVEaXNwYXRjaEJlaGF2aW9yKEV2ZW50KiBldmVu
dCkKICAgICByZXR1cm4gUmV0YXJnZXRFdmVudDsKIH0KIAotYm9vbCBOb2RlOjpkaXNwYXRjaEdl
bmVyaWNFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBwcnBFdmVudCkKK2Jvb2wgTm9kZTo6ZGlzcGF0
Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBwcnBFdmVudCkKIHsKLSAgICBSZWZQdHI8RXZlbnQ+
IGV2ZW50KHBycEV2ZW50KTsKKyAgICBSZWZQdHI8RXZlbnRUYXJnZXQ+IHByb3RlY3QgPSB0aGlz
OworICAgIFJlZlB0cjxFdmVudD4gZXZlbnQgPSBwcnBFdmVudDsKKworICAgIGV2ZW50LT5zZXRU
YXJnZXQoZXZlbnRUYXJnZXRSZXNwZWN0aW5nU1ZHVGFyZ2V0UnVsZXModGhpcykpOworCisgICAg
UmVmUHRyPEZyYW1lVmlldz4gdmlldyA9IGRvY3VtZW50KCktPnZpZXcoKTsKIAogICAgIEFTU0VS
VCghZXZlbnREaXNwYXRjaEZvcmJpZGRlbigpKTsKICAgICBBU1NFUlQoZXZlbnQtPnRhcmdldCgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTm9kZS5oCmluZGV4IGUzODk1YTY4ZTBiZjkwZGNkNjU1NjkyZDU3ODIyOGYwMzQ1ZmJh
NTQuLjA4N2QwMmZiMzhmODQ5MDRhYjUyYTgyZjJjMDI2YWMyNmEzMTlhNDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUu
aApAQCAtNTM0LDcgKzUzNCw2IEBAIHB1YmxpYzoKICAgICBib29sIGRpc3BhdGNoRXZlbnQoUGFz
c1JlZlB0cjxFdmVudD4pOwogICAgIHZvaWQgZGlzcGF0Y2hTY29wZWRFdmVudChQYXNzUmVmUHRy
PEV2ZW50Pik7CiAKLSAgICBib29sIGRpc3BhdGNoR2VuZXJpY0V2ZW50KFBhc3NSZWZQdHI8RXZl
bnQ+KTsKICAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlTG9jYWxFdmVudHMoRXZlbnQqKTsKIAogICAg
IHZvaWQgZGlzcGF0Y2hTdWJ0cmVlTW9kaWZpZWRFdmVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5k
b3cuY3BwCmluZGV4IDlkYTIzMDRmYWM4NTBmMmIwOGMwNjI3YzdjYTZlNThlM2U5MmZjMTQuLmE4
ZWY2YzQ3YTViNTFkMGU5NGI5ZmRjMjQ2ZTkyYzI4YTcxMDgyYmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVdpbmRvdy5jcHAKQEAgLTE1NjksMTEgKzE1NjksOCBAQCB2b2lkIERPTVdpbmRvdzo6ZGlzcGF0
Y2hMb2FkRXZlbnQoKQogICAgIC8vIFRoaXMgaXMgYSBET00gZXh0ZW5zaW9uIGFuZCBpcyBpbmRl
cGVuZGVudCBvZiBidWJibGluZy9jYXB0dXJpbmcgcnVsZXMgb2YKICAgICAvLyB0aGUgRE9NLgog
ICAgIEVsZW1lbnQqIG93bmVyRWxlbWVudCA9IG1fZnJhbWUgPyBtX2ZyYW1lLT5vd25lckVsZW1l
bnQoKSA6IDA7Ci0gICAgaWYgKG93bmVyRWxlbWVudCkgewotICAgICAgICBSZWZQdHI8RXZlbnQ+
IG93bmVyRXZlbnQgPSBFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5sb2FkRXZlbnQsIGZhbHNl
LCBmYWxzZSk7Ci0gICAgICAgIG93bmVyRXZlbnQtPnNldFRhcmdldChvd25lckVsZW1lbnQpOwot
ICAgICAgICBvd25lckVsZW1lbnQtPmRpc3BhdGNoR2VuZXJpY0V2ZW50KG93bmVyRXZlbnQucmVs
ZWFzZSgpKTsKLSAgICB9CisgICAgaWYgKG93bmVyRWxlbWVudCkKKyAgICAgICAgb3duZXJFbGVt
ZW50LT5kaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmxvYWRFdmVudCwg
ZmFsc2UsIGZhbHNlKSk7CiAKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmxvYWRFdmVu
dEZpcmVkKGZyYW1lKCksIHVybCgpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcAppbmRl
eCBjYjM2Njg3NjFiYzlkY2U1YjY1N2IwYjdiZDE0ZTVkMTRkNzY1MDQwLi4wNDRmNDM5YmJkNGU2
NzY1OWE2OTVlN2QwZTI5OTA2NWM1ODc0Y2Y3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3Bw
CkBAIC0zMTYsMTEgKzMxNiw4IEBAIHZvaWQgU1ZHRWxlbWVudDo6c2VuZFNWR0xvYWRFdmVudElm
UG9zc2libGUoYm9vbCBzZW5kUGFyZW50TG9hZEV2ZW50cykKICAgICAgICAgUmVmUHRyPE5vZGU+
IHBhcmVudDsKICAgICAgICAgaWYgKHNlbmRQYXJlbnRMb2FkRXZlbnRzKQogICAgICAgICAgICAg
cGFyZW50ID0gY3VycmVudFRhcmdldC0+cGFyZW50Tm9kZSgpOyAvLyBzYXZlIHRoZSBuZXh0IHBh
cmVudCB0byBkaXNwYXRjaCB0b28gaW5jYXNlIGRpc3BhdGNoaW5nIHRoZSBldmVudCBjaGFuZ2Vz
IHRoZSB0cmVlCi0gICAgICAgIGlmIChoYXNMb2FkTGlzdGVuZXIoY3VycmVudFRhcmdldC5nZXQo
KSkpIHsKLSAgICAgICAgICAgIFJlZlB0cjxFdmVudD4gZXZlbnQgPSBFdmVudDo6Y3JlYXRlKGV2
ZW50TmFtZXMoKS5sb2FkRXZlbnQsIGZhbHNlLCBmYWxzZSk7Ci0gICAgICAgICAgICBldmVudC0+
c2V0VGFyZ2V0KGN1cnJlbnRUYXJnZXQpOwotICAgICAgICAgICAgY3VycmVudFRhcmdldC0+ZGlz
cGF0Y2hHZW5lcmljRXZlbnQoZXZlbnQucmVsZWFzZSgpKTsKLSAgICAgICAgfQorICAgICAgICBp
ZiAoaGFzTG9hZExpc3RlbmVyKGN1cnJlbnRUYXJnZXQuZ2V0KCkpKQorICAgICAgICAgICAgY3Vy
cmVudFRhcmdldC0+ZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5sb2Fk
RXZlbnQsIGZhbHNlLCBmYWxzZSkpOwogICAgICAgICBjdXJyZW50VGFyZ2V0ID0gKHBhcmVudCAm
JiBwYXJlbnQtPmlzU1ZHRWxlbWVudCgpKSA/IHN0YXRpY19wb2ludGVyX2Nhc3Q8U1ZHRWxlbWVu
dD4ocGFyZW50KSA6IFJlZlB0cjxTVkdFbGVtZW50PigpOwogICAgIH0KIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50SW5zdGFuY2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0VsZW1lbnRJbnN0YW5jZS5jcHAKaW5kZXggNWE2NTRkZGQwMTZkMGIyMDJhNzhk
NTI5NGVhNDVjYjE2NzA2NjFiNi4uNmI5YzA4NWNiNWUzYWNiNjU0YzgwMDJiOTYxZmYzZTc5OTZl
NWI3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnRJbnN0YW5jZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnRJbnN0YW5jZS5jcHAKQEAgLTEz
MywxOSArMTMzLDEzIEBAIHZvaWQgU1ZHRWxlbWVudEluc3RhbmNlOjpyZW1vdmVBbGxFdmVudExp
c3RlbmVycygpCiAgICAgbV9lbGVtZW50LT5yZW1vdmVBbGxFdmVudExpc3RlbmVycygpOwogfQog
Ci1ib29sIFNWR0VsZW1lbnRJbnN0YW5jZTo6ZGlzcGF0Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50
PiBwcnBFdmVudCkKK2Jvb2wgU1ZHRWxlbWVudEluc3RhbmNlOjpkaXNwYXRjaEV2ZW50KFBhc3NS
ZWZQdHI8RXZlbnQ+IGV2ZW50KQogewotICAgIFJlZlB0cjxFdmVudFRhcmdldD4gcHJvdGVjdCA9
IHRoaXM7Ci0gICAgUmVmUHRyPEV2ZW50PiBldmVudCA9IHBycEV2ZW50OwotCi0gICAgZXZlbnQt
PnNldFRhcmdldCh0aGlzKTsKLQogICAgIFNWR0VsZW1lbnQqIGVsZW1lbnQgPSBzaGFkb3dUcmVl
RWxlbWVudCgpOwogICAgIGlmICghZWxlbWVudCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0g
ICAgUmVmUHRyPEZyYW1lVmlldz4gdmlldyA9IGVsZW1lbnQtPmRvY3VtZW50KCktPnZpZXcoKTsK
LSAgICByZXR1cm4gZWxlbWVudC0+ZGlzcGF0Y2hHZW5lcmljRXZlbnQoZXZlbnQucmVsZWFzZSgp
KTsKKyAgICByZXR1cm4gZWxlbWVudC0+ZGlzcGF0Y2hFdmVudChldmVudCk7CiB9CiAKIEV2ZW50
VGFyZ2V0RGF0YSogU1ZHRWxlbWVudEluc3RhbmNlOjpldmVudFRhcmdldERhdGEoKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86816</attachid>
            <date>2011-03-24 13:01:12 -0700</date>
            <delta_ts>2011-03-24 19:34:47 -0700</delta_ts>
            <desc>Removed unnecessary extra ref and stale comment.</desc>
            <filename>bug-57045-20110324130111.patch</filename>
            <type>text/plain</type>
            <size>6613</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODE4ODcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3M2Y4Y2NkMTU2YjBkYzRi
ZWNkMTE5MzNjM2IyZmNlYWFmMDU4ZGY3Li4zNzFkMDhiM2EwMzgxZTUyYjRjYTgxMzM4ODFjYjhm
NzFjYWEzODRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDMtMjQgIERpbWl0
cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbGltaW5hdGUgTm9kZTo6ZGlzcGF0Y2hHZW5l
cmljRXZlbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01NzA0NQorCisgICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLCBjb3ZlcmVkIGJ5IGV4aXN0
aW5nIHRlc3RzLgorCisgICAgICAgICogZG9tL05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Tm9kZTo6ZGlzcGF0Y2hFdmVudCk6IENvbWJpbmVkIHdpdGggdGhlIGJvZHkgb2YgZGlzcGF0Y2hH
ZW5lcmljRXZlbnQsCisgICAgICAgICAgICByZW1vdmVkIHVubmVjZXNzYXJ5IGV4dHJhIHJlZnMg
YW5kIGEgc3RhbGUgY29tbWVudC4KKyAgICAgICAgKiBkb20vTm9kZS5oOgorICAgICAgICAqIHBh
Z2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6ZGlzcGF0Y2hM
b2FkRXZlbnQpOiBDaGFuZ2VkIHRvIHVzZSBkaXNwYXRjaEV2ZW50LgorICAgICAgICAqIHN2Zy9T
VkdFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0VsZW1lbnQ6OnNlbmRTVkdMb2Fk
RXZlbnRJZlBvc3NpYmxlKTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR0VsZW1lbnRJbnN0YW5j
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGVtZW50SW5zdGFuY2U6OmRpc3BhdGNoRXZl
bnQpOiBEaXR0by4gVGhlIGNvZGUgaGVyZSBzdGlsbAorICAgICAgICAgICAgd29ya3MgdGhhbmtz
IHRvIFNWRy1hd2FyZSByZXRhcmdldGluZyBpbiBOb2RlLgorCiAyMDExLTAzLTI0ICBFbnJpY2Eg
Q2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4g
QWRsZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vTm9kZS5jcHAKaW5kZXggYmRlMTc0ZDFhZjMxMzE1MTgxMWFhOGFlZTE5MmQx
ZmU0OGZjYzQzYi4uNmE4NzY4ZDE3MTYyM2I4NGQ0OTZlYTkxMTQyMzdmNTY4Yjg5NGYyNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Ob2RlLmNwcApAQCAtMjY2MCwxNyArMjY2MCw2IEBAIHZvaWQgTm9kZTo6Z2V0RXZlbnRB
bmNlc3RvcnMoVmVjdG9yPEV2ZW50Q29udGV4dD4mIGFuY2VzdG9ycywgRXZlbnRUYXJnZXQqIG9y
aWdpCiAgICAgfQogfQogCi1ib29sIE5vZGU6OmRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVu
dD4gcHJwRXZlbnQpCi17Ci0gICAgUmVmUHRyPEV2ZW50VGFyZ2V0PiBwcm90ZWN0ID0gdGhpczsK
LSAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50ID0gcHJwRXZlbnQ7Ci0KLSAgICBldmVudC0+c2V0VGFy
Z2V0KGV2ZW50VGFyZ2V0UmVzcGVjdGluZ1NWR1RhcmdldFJ1bGVzKHRoaXMpKTsKLQotICAgIFJl
ZlB0cjxGcmFtZVZpZXc+IHZpZXcgPSBkb2N1bWVudCgpLT52aWV3KCk7Ci0gICAgcmV0dXJuIGRp
c3BhdGNoR2VuZXJpY0V2ZW50KGV2ZW50LnJlbGVhc2UoKSk7Ci19Ci0KIHZvaWQgTm9kZTo6ZGlz
cGF0Y2hTY29wZWRFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBldmVudCkKIHsKICAgICAvLyBXZSBu
ZWVkIHRvIHNldCB0aGUgdGFyZ2V0IGhlcmUgYmVjYXVzZSBpdCBjYW4gZ28gYXdheSBieSB0aGUg
dGltZSB3ZSBhY3R1YWxseSBmaXJlIHRoZSBldmVudC4KQEAgLTI3MDAsMTggKzI2ODksMTkgQEAg
c3RhdGljIEV2ZW50RGlzcGF0Y2hCZWhhdmlvciBkZXRlcm1pbmVEaXNwYXRjaEJlaGF2aW9yKEV2
ZW50KiBldmVudCkKICAgICByZXR1cm4gUmV0YXJnZXRFdmVudDsKIH0KIAotYm9vbCBOb2RlOjpk
aXNwYXRjaEdlbmVyaWNFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBwcnBFdmVudCkKK2Jvb2wgTm9k
ZTo6ZGlzcGF0Y2hFdmVudChQYXNzUmVmUHRyPEV2ZW50PiBwcnBFdmVudCkKIHsKLSAgICBSZWZQ
dHI8RXZlbnQ+IGV2ZW50KHBycEV2ZW50KTsKKyAgICBSZWZQdHI8RXZlbnRUYXJnZXQ+IHByb3Rl
Y3QgPSB0aGlzOworICAgIFJlZlB0cjxFdmVudD4gZXZlbnQgPSBwcnBFdmVudDsKKworICAgIGV2
ZW50LT5zZXRUYXJnZXQoZXZlbnRUYXJnZXRSZXNwZWN0aW5nU1ZHVGFyZ2V0UnVsZXModGhpcykp
OworCisgICAgUmVmUHRyPEZyYW1lVmlldz4gdmlldyA9IGRvY3VtZW50KCktPnZpZXcoKTsKIAog
ICAgIEFTU0VSVCghZXZlbnREaXNwYXRjaEZvcmJpZGRlbigpKTsKICAgICBBU1NFUlQoZXZlbnQt
PnRhcmdldCgpKTsKICAgICBBU1NFUlQoIWV2ZW50LT50eXBlKCkuaXNOdWxsKCkpOyAvLyBKYXZh
U2NyaXB0IGNvZGUgY2FuIGNyZWF0ZSBhbiBldmVudCB3aXRoIGFuIGVtcHR5IG5hbWUsIGJ1dCBu
b3QgbnVsbC4KIAotICAgIC8vIE1ha2UgYSB2ZWN0b3Igb2YgYW5jZXN0b3JzIHRvIHNlbmQgdGhl
IGV2ZW50IHRvLgotICAgIC8vIElmIHRoZSBub2RlIGlzIG5vdCBpbiBhIGRvY3VtZW50IGp1c3Qg
c2VuZCB0aGUgZXZlbnQgdG8gaXQuCi0gICAgLy8gQmUgc3VyZSB0byByZWYgYWxsIG9mIG5vZGVz
IHNpbmNlIGV2ZW50IGhhbmRsZXJzIGNvdWxkIHJlc3VsdCBpbiB0aGUgbGFzdCByZWZlcmVuY2Ug
Z29pbmcgYXdheS4KLSAgICBSZWZQdHI8Tm9kZT4gdGhpc05vZGUodGhpcyk7CiAgICAgUmVmUHRy
PEV2ZW50VGFyZ2V0PiBvcmlnaW5hbFRhcmdldCA9IGV2ZW50LT50YXJnZXQoKTsKICAgICBWZWN0
b3I8RXZlbnRDb250ZXh0PiBhbmNlc3RvcnM7CiAgICAgZ2V0RXZlbnRBbmNlc3RvcnMoYW5jZXN0
b3JzLCBvcmlnaW5hbFRhcmdldC5nZXQoKSwgZGV0ZXJtaW5lRGlzcGF0Y2hCZWhhdmlvcihldmVu
dC5nZXQoKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Ob2RlLmgKaW5kZXggZTM4OTVhNjhlMGJmOTBkY2Q2NTU2OTJkNTc4MjI4
ZjAzNDVmYmE1NC4uMDg3ZDAyZmIzOGY4NDkwNGFiNTJhODJmMmMwMjZhYzI2YTMxOWE0MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vTm9kZS5oCkBAIC01MzQsNyArNTM0LDYgQEAgcHVibGljOgogICAgIGJvb2wgZGlzcGF0Y2hF
dmVudChQYXNzUmVmUHRyPEV2ZW50Pik7CiAgICAgdm9pZCBkaXNwYXRjaFNjb3BlZEV2ZW50KFBh
c3NSZWZQdHI8RXZlbnQ+KTsKIAotICAgIGJvb2wgZGlzcGF0Y2hHZW5lcmljRXZlbnQoUGFzc1Jl
ZlB0cjxFdmVudD4pOwogICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVMb2NhbEV2ZW50cyhFdmVudCop
OwogCiAgICAgdm9pZCBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50KCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RPTVdpbmRvdy5jcHAKaW5kZXggOWRhMjMwNGZhYzg1MGYyYjA4YzA2MjdjN2NhNmU1OGUzZTky
ZmMxNC4uYThlZjZjNDdhNWI1MWQwZTk0YjlmZGMyNDZlOTJjMjhhNzEwODJiZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmNwcApAQCAtMTU2OSwxMSArMTU2OSw4IEBAIHZvaWQgRE9NV2luZG93
OjpkaXNwYXRjaExvYWRFdmVudCgpCiAgICAgLy8gVGhpcyBpcyBhIERPTSBleHRlbnNpb24gYW5k
IGlzIGluZGVwZW5kZW50IG9mIGJ1YmJsaW5nL2NhcHR1cmluZyBydWxlcyBvZgogICAgIC8vIHRo
ZSBET00uCiAgICAgRWxlbWVudCogb3duZXJFbGVtZW50ID0gbV9mcmFtZSA/IG1fZnJhbWUtPm93
bmVyRWxlbWVudCgpIDogMDsKLSAgICBpZiAob3duZXJFbGVtZW50KSB7Ci0gICAgICAgIFJlZlB0
cjxFdmVudD4gb3duZXJFdmVudCA9IEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmxvYWRFdmVu
dCwgZmFsc2UsIGZhbHNlKTsKLSAgICAgICAgb3duZXJFdmVudC0+c2V0VGFyZ2V0KG93bmVyRWxl
bWVudCk7Ci0gICAgICAgIG93bmVyRWxlbWVudC0+ZGlzcGF0Y2hHZW5lcmljRXZlbnQob3duZXJF
dmVudC5yZWxlYXNlKCkpOwotICAgIH0KKyAgICBpZiAob3duZXJFbGVtZW50KQorICAgICAgICBv
d25lckVsZW1lbnQtPmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkubG9h
ZEV2ZW50LCBmYWxzZSwgZmFsc2UpKTsKIAogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
bG9hZEV2ZW50RmlyZWQoZnJhbWUoKSwgdXJsKCkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQu
Y3BwCmluZGV4IGNiMzY2ODc2MWJjOWRjZTViNjU3YjBiN2JkMTRlNWQxNGQ3NjUwNDAuLjA0NGY0
MzliYmQ0ZTY3NjU5YTY5NWU3ZDBlMjk5MDY1YzU4NzRjZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxl
bWVudC5jcHAKQEAgLTMxNiwxMSArMzE2LDggQEAgdm9pZCBTVkdFbGVtZW50OjpzZW5kU1ZHTG9h
ZEV2ZW50SWZQb3NzaWJsZShib29sIHNlbmRQYXJlbnRMb2FkRXZlbnRzKQogICAgICAgICBSZWZQ
dHI8Tm9kZT4gcGFyZW50OwogICAgICAgICBpZiAoc2VuZFBhcmVudExvYWRFdmVudHMpCiAgICAg
ICAgICAgICBwYXJlbnQgPSBjdXJyZW50VGFyZ2V0LT5wYXJlbnROb2RlKCk7IC8vIHNhdmUgdGhl
IG5leHQgcGFyZW50IHRvIGRpc3BhdGNoIHRvbyBpbmNhc2UgZGlzcGF0Y2hpbmcgdGhlIGV2ZW50
IGNoYW5nZXMgdGhlIHRyZWUKLSAgICAgICAgaWYgKGhhc0xvYWRMaXN0ZW5lcihjdXJyZW50VGFy
Z2V0LmdldCgpKSkgewotICAgICAgICAgICAgUmVmUHRyPEV2ZW50PiBldmVudCA9IEV2ZW50Ojpj
cmVhdGUoZXZlbnROYW1lcygpLmxvYWRFdmVudCwgZmFsc2UsIGZhbHNlKTsKLSAgICAgICAgICAg
IGV2ZW50LT5zZXRUYXJnZXQoY3VycmVudFRhcmdldCk7Ci0gICAgICAgICAgICBjdXJyZW50VGFy
Z2V0LT5kaXNwYXRjaEdlbmVyaWNFdmVudChldmVudC5yZWxlYXNlKCkpOwotICAgICAgICB9Cisg
ICAgICAgIGlmIChoYXNMb2FkTGlzdGVuZXIoY3VycmVudFRhcmdldC5nZXQoKSkpCisgICAgICAg
ICAgICBjdXJyZW50VGFyZ2V0LT5kaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1l
cygpLmxvYWRFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiAgICAgICAgIGN1cnJlbnRUYXJnZXQgPSAo
cGFyZW50ICYmIHBhcmVudC0+aXNTVkdFbGVtZW50KCkpID8gc3RhdGljX3BvaW50ZXJfY2FzdDxT
VkdFbGVtZW50PihwYXJlbnQpIDogUmVmUHRyPFNWR0VsZW1lbnQ+KCk7CiAgICAgfQogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnRJbnN0YW5jZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudEluc3RhbmNlLmNwcAppbmRleCA1YTY1NGRkZDAxNmQw
YjIwMmE3OGQ1Mjk0ZWE0NWNiMTY3MDY2MWI2Li42YjljMDg1Y2I1ZTNhY2I2NTRjODAwMmI5NjFm
ZjNlNzk5NmU1YjdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudElu
c3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudEluc3RhbmNlLmNw
cApAQCAtMTMzLDE5ICsxMzMsMTMgQEAgdm9pZCBTVkdFbGVtZW50SW5zdGFuY2U6OnJlbW92ZUFs
bEV2ZW50TGlzdGVuZXJzKCkKICAgICBtX2VsZW1lbnQtPnJlbW92ZUFsbEV2ZW50TGlzdGVuZXJz
KCk7CiB9CiAKLWJvb2wgU1ZHRWxlbWVudEluc3RhbmNlOjpkaXNwYXRjaEV2ZW50KFBhc3NSZWZQ
dHI8RXZlbnQ+IHBycEV2ZW50KQorYm9vbCBTVkdFbGVtZW50SW5zdGFuY2U6OmRpc3BhdGNoRXZl
bnQoUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCiB7Ci0gICAgUmVmUHRyPEV2ZW50VGFyZ2V0PiBw
cm90ZWN0ID0gdGhpczsKLSAgICBSZWZQdHI8RXZlbnQ+IGV2ZW50ID0gcHJwRXZlbnQ7Ci0KLSAg
ICBldmVudC0+c2V0VGFyZ2V0KHRoaXMpOwotCiAgICAgU1ZHRWxlbWVudCogZWxlbWVudCA9IHNo
YWRvd1RyZWVFbGVtZW50KCk7CiAgICAgaWYgKCFlbGVtZW50KQogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKLSAgICBSZWZQdHI8RnJhbWVWaWV3PiB2aWV3ID0gZWxlbWVudC0+ZG9jdW1lbnQoKS0+
dmlldygpOwotICAgIHJldHVybiBlbGVtZW50LT5kaXNwYXRjaEdlbmVyaWNFdmVudChldmVudC5y
ZWxlYXNlKCkpOworICAgIHJldHVybiBlbGVtZW50LT5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKIH0K
IAogRXZlbnRUYXJnZXREYXRhKiBTVkdFbGVtZW50SW5zdGFuY2U6OmV2ZW50VGFyZ2V0RGF0YSgp
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>