<?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>97372</bug_id>
          
          <creation_ts>2012-09-21 15:36:52 -0700</creation_ts>
          <short_desc>Remove bogus assertions from ChildListMutationScope</short_desc>
          <delta_ts>2012-09-21 18:27:36 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          <dependson>97352</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Klein">adamk</reporter>
          <assigned_to name="Adam Klein">adamk</assigned_to>
          <cc>esprehn</cc>
    
    <cc>ojan</cc>
    
    <cc>rafaelw</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>725892</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-09-21 15:36:52 -0700</bug_when>
    <thetext>Remove bogus assertions from ChildListMutationScope</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725899</commentid>
    <comment_count>1</comment_count>
      <attachid>165215</attachid>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-09-21 15:46:47 -0700</bug_when>
    <thetext>Created attachment 165215
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725900</commentid>
    <comment_count>2</comment_count>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-09-21 15:47:48 -0700</bug_when>
    <thetext>This patch is against 97352, so it&apos;s not ready for EWS yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725923</commentid>
    <comment_count>3</comment_count>
      <attachid>165215</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-09-21 16:06:22 -0700</bug_when>
    <thetext>Comment on attachment 165215
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        Some asserts (and their accompanying comment) were trying to enforce
&gt; +        proper usage of ChildListMutationScope from WebCore, but in the
&gt; +        presence of MutationEvents they could fail due to arbitrary script
&gt; +        execution.

Does this invalidate the assumption stated above the declaration of MutationAccumulator?
(I suppose that&apos;s the case given you&apos;re removing the comment).
In the presence of mutation events, can we end up delivering mutation records before the outmost scope closes?

If so, are we violating the specification in this regard?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725929</commentid>
    <comment_count>4</comment_count>
      <attachid>165215</attachid>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-09-21 16:10:52 -0700</bug_when>
    <thetext>Comment on attachment 165215
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:11
&gt;&gt; +        execution.
&gt; 
&gt; Does this invalidate the assumption stated above the declaration of MutationAccumulator?
&gt; (I suppose that&apos;s the case given you&apos;re removing the comment).
&gt; In the presence of mutation events, can we end up delivering mutation records before the outmost scope closes?
&gt; 
&gt; If so, are we violating the specification in this regard?

We don&apos;t deliver early, just enqueue early. Since the spec doesn&apos;t mention the existence of MutationEvents, it&apos;s hard to say whether we&apos;re violating the specification. But we&apos;re doing something sane (MutationObservers still report everything that happens), as documented in these test cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725936</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-09-21 16:15:03 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt;
&gt; We don&apos;t deliver early, just enqueue early. Since the spec doesn&apos;t mention the existence of MutationEvents, it&apos;s hard to say whether we&apos;re violating the specification. But we&apos;re doing something sane (MutationObservers still report everything that happens), as documented in these test cases.

Okay. Does our behavior match that of Gecko? I think it&apos;ll be nice to at least touch-base with Jonas/Olli to make sure they&apos;re okay with our behavior. Given that there are quite few js libraries still relying on mutation events (notably rich text editors), we need to make sure the way our behavior doesn&apos;t adversely affect websites that include those editors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725941</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-09-21 16:18:04 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4)
&gt; &gt;
&gt; &gt; We don&apos;t deliver early, just enqueue early. Since the spec doesn&apos;t mention the existence of MutationEvents, it&apos;s hard to say whether we&apos;re violating the specification. But we&apos;re doing something sane (MutationObservers still report everything that happens), as documented in these test cases.
&gt; 
&gt; Okay. Does our behavior match that of Gecko? I think it&apos;ll be nice to at least touch-base with Jonas/Olli to make sure they&apos;re okay with our behavior. Given that there are quite few js libraries still relying on mutation events (notably rich text editors), we need to make sure the way our behavior doesn&apos;t adversely affect websites that include those editors.

Not sure what you&apos;d want to ask. The particular records emitted seem not terribly important in this case, as long as they&apos;re an accurate portrayal of the current state of the DOM. Without a spec (which we&apos;re not going to get, because MutationEvents will not be specced in DOM4), I don&apos;t think exact interoperability is something we should strive for (since it wouldn&apos;t be written down anywhere other than in an email). It&apos;s just an implementation detail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725956</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-09-21 16:31:06 -0700</bug_when>
    <thetext>I just chatted with Jonas and confirmed that he doesn&apos;t really care about this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725984</commentid>
    <comment_count>8</comment_count>
      <attachid>165228</attachid>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-09-21 17:00:29 -0700</bug_when>
    <thetext>Created attachment 165228
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726021</commentid>
    <comment_count>9</comment_count>
      <attachid>165228</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-21 18:27:32 -0700</bug_when>
    <thetext>Comment on attachment 165228
Patch

Clearing flags on attachment: 165228

Committed r129288: &lt;http://trac.webkit.org/changeset/129288&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726022</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-21 18:27:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165215</attachid>
            <date>2012-09-21 15:46:47 -0700</date>
            <delta_ts>2012-09-21 17:00:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97372-20120921154611.patch</filename>
            <type>text/plain</type>
            <size>9254</size>
            <attacher name="Adam Klein">adamk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5MDI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzI2M2ZlZDZhMGMzM2Mw
YTE4ZmNhZGZjYWNjYjNkZTYyMTZlNjZjNC4uYzJjMTQ4N2Q5NDE0OTgwYWI3YzdjYThhZGNjMDc1
MGYxMzBjMGE3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMwIEBACiAyMDEyLTA5LTIxICBBZGFt
IEtsZWluICA8YWRhbWtAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFJlbW92ZSBib2d1cyBhc3Nl
cnRpb25zIGZyb20gQ2hpbGRMaXN0TXV0YXRpb25TY29wZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTczNzIKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTb21lIGFzc2VydHMgKGFuZCB0aGVpciBhY2NvbXBh
bnlpbmcgY29tbWVudCkgd2VyZSB0cnlpbmcgdG8gZW5mb3JjZQorICAgICAgICBwcm9wZXIgdXNh
Z2Ugb2YgQ2hpbGRMaXN0TXV0YXRpb25TY29wZSBmcm9tIFdlYkNvcmUsIGJ1dCBpbiB0aGUKKyAg
ICAgICAgcHJlc2VuY2Ugb2YgTXV0YXRpb25FdmVudHMgdGhleSBjb3VsZCBmYWlsIGR1ZSB0byBh
cmJpdHJhcnkgc2NyaXB0CisgICAgICAgIGV4ZWN1dGlvbi4KKworICAgICAgICBUaGlzIGNoYW5n
ZSBnZXRzIHJpZCBvZiB0aG9zZSBhc3NlcnRzIGFuZCBhZGRzIHRlc3RzIGV4ZXJjaXNpbmcKKyAg
ICAgICAgdGhlIChwcmUtZXhpc3RpbmcpIGNvZGVwYXRocyBmb3IgaGFuZGxpbmcgdGhlc2Ugb3V0
LW9mLW9yZGVyIGNhc2VzLgorICAgICAgICBXaXRob3V0IHRoaXMgcGF0Y2gsIHRoZXNlIHRlc3Rz
IEFTU0VSVCBpbiBkZWJ1ZyBidWlsZHMuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvbXV0YXRpb24v
YWRkZWQtb3V0LW9mLW9yZGVyLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvbXV0YXRpb24vcmVt
b3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbAorCisgICAgICAgICogZG9tL0NoaWxkTGlzdE11dGF0aW9u
U2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TXV0YXRpb25BY2N1bXVsYXRvcjo6Y2hpbGRB
ZGRlZCk6CisgICAgICAgIChXZWJDb3JlOjpNdXRhdGlvbkFjY3VtdWxhdG9yOjp3aWxsUmVtb3Zl
Q2hpbGQpOgorICAgICAgICAqIGRvbS9DaGlsZExpc3RNdXRhdGlvblNjb3BlLmg6CisgICAgICAg
IChXZWJDb3JlKToKKworMjAxMi0wOS0yMSAgQWRhbSBLbGVpbiAgPGFkYW1rQGNocm9taXVtLm9y
Zz4KKwogICAgICAgICBTaW1wbGlmeSBhbmQgb3B0aW1pemUgQ2hpbGRMaXN0TXV0YXRpb25TY29w
ZQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTczNTIK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUuY3BwCmluZGV4
IGQ5NWM0M2NhMDg2NGE0NWNiM2Q3MzAwMTMxYjM3YTU2MTQ1ZTcwZmIuLjljZmJhMjBhMWY4Mjdm
MzgwZjJiZDc1MzhlOWI1MzJiNmVmMGU4MDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9DaGlsZExpc3RNdXRhdGlvblNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hp
bGRMaXN0TXV0YXRpb25TY29wZS5jcHAKQEAgLTY2LDEwICs2NiwxMCBAQCBpbmxpbmUgYm9vbCBN
dXRhdGlvbkFjY3VtdWxhdG9yOjppc0FkZGVkTm9kZUluT3JkZXIoTm9kZSogY2hpbGQpCiAKIHZv
aWQgTXV0YXRpb25BY2N1bXVsYXRvcjo6Y2hpbGRBZGRlZChQYXNzUmVmUHRyPE5vZGU+IHBycENo
aWxkKQogeworICAgIEFTU0VSVChoYXNPYnNlcnZlcnMoKSk7CisKICAgICBSZWZQdHI8Tm9kZT4g
Y2hpbGQgPSBwcnBDaGlsZDsKIAotICAgIEFTU0VSVChoYXNPYnNlcnZlcnMoKSk7Ci0gICAgQVNT
RVJUKGlzQWRkZWROb2RlSW5PcmRlcihjaGlsZC5nZXQoKSkpOwogICAgIGlmICghaXNBZGRlZE5v
ZGVJbk9yZGVyKGNoaWxkLmdldCgpKSkKICAgICAgICAgZW5xdWV1ZU11dGF0aW9uUmVjb3JkKCk7
CiAKQEAgLTg5LDEwICs4OSwxMCBAQCBpbmxpbmUgYm9vbCBNdXRhdGlvbkFjY3VtdWxhdG9yOjpp
c1JlbW92ZWROb2RlSW5PcmRlcihOb2RlKiBjaGlsZCkKIAogdm9pZCBNdXRhdGlvbkFjY3VtdWxh
dG9yOjp3aWxsUmVtb3ZlQ2hpbGQoUGFzc1JlZlB0cjxOb2RlPiBwcnBDaGlsZCkKIHsKKyAgICBB
U1NFUlQoaGFzT2JzZXJ2ZXJzKCkpOworCiAgICAgUmVmUHRyPE5vZGU+IGNoaWxkID0gcHJwQ2hp
bGQ7CiAKLSAgICBBU1NFUlQoaGFzT2JzZXJ2ZXJzKCkpOwotICAgIEFTU0VSVChtX2FkZGVkTm9k
ZXMuaXNFbXB0eSgpICYmIGlzUmVtb3ZlZE5vZGVJbk9yZGVyKGNoaWxkLmdldCgpKSk7CiAgICAg
aWYgKCFtX2FkZGVkTm9kZXMuaXNFbXB0eSgpIHx8ICFpc1JlbW92ZWROb2RlSW5PcmRlcihjaGls
ZC5nZXQoKSkpCiAgICAgICAgIGVucXVldWVNdXRhdGlvblJlY29yZCgpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hpbGRMaXN0TXV0YXRpb25TY29wZS5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUuaAppbmRleCA5ZTYwMDA5OWYxNGQ1OGNm
MDE3Y2E1NDc3NjMyMTk3NDQ1YzhmYjM5Li5lMzRhNTA2YzUzZjgzYTcyYjhjMzdlMzY0NGMwMDYz
N2MwMTJhOWZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hpbGRMaXN0TXV0YXRp
b25TY29wZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGlsZExpc3RNdXRhdGlvblNjb3Bl
LmgKQEAgLTQ1LDExICs0NSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIE11dGF0aW9u
T2JzZXJ2ZXJJbnRlcmVzdEdyb3VwOwogCiAvLyBNdXRhdGlvbkFjY3VtdWxhdG9yIGlzIG5vdCBt
ZWFudCB0byBiZSB1c2VkIGRpcmVjdGx5OyBDaGlsZExpc3RNdXRhdGlvblNjb3BlIGlzIHRoZSBw
dWJsaWMgaW50ZXJmYWNlLgotLy8KLS8vIE11dGF0aW9uQWNjdW11bGF0b3IgZXhwZWN0cyB0aGF0
IGFsbCByZW1vdmFscyBmcm9tIGEgcGFyZW50IHRha2UgcGxhY2UgaW4gb3JkZXIKLS8vIGFuZCBw
cmVjZWRlIGFueSBhZGRpdGlvbnMuIElmIHRoaXMgaXMgdmlvbGF0ZWQgKGkuZS4gYmVjYXVzZSBv
ZiBjb2RlIGNoYW5nZXMgZWxzZXdoZXJlCi0vLyBpbiBXZWJDb3JlKSBpdCB3aWxsIGxpa2VseSBy
ZXN1bHQgaW4gYm90aCAoYSkgQVNTRVJUaW9ucyBmYWlsaW5nLCBhbmQgKGIpIG11dGF0aW9uIHJl
Y29yZHMKLS8vIGJlaW5nIGVucXVldWVkIGZvciBkZWxpdmVyeSBiZWZvcmUgdGhlIG91dGVyLW1v
c3Qgc2NvcGUgY2xvc2VzLgogY2xhc3MgTXV0YXRpb25BY2N1bXVsYXRvciB7CiAgICAgV1RGX01B
S0VfTk9OQ09QWUFCTEUoTXV0YXRpb25BY2N1bXVsYXRvcik7CiBwdWJsaWM6CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDA5
N2RkZDI1NjJlNjAxZDNhYWZkMDYwMjk0ZjE3OTZmYzE3NTQxMS4uYTU5ODAwNjU5OWMyOTRmMGU5
NzRjYzljMDY5ZTU1MTJlNDJhNTYzMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEyLTA5LTIx
ICBBZGFtIEtsZWluICA8YWRhbWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlbW92ZSBib2d1
cyBhc3NlcnRpb25zIGZyb20gQ2hpbGRMaXN0TXV0YXRpb25TY29wZQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTczNzIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvbXV0YXRpb24vYWRkZWQtb3V0
LW9mLW9yZGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9tdXRhdGlvbi9h
ZGRlZC1vdXQtb2Ytb3JkZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9tdXRhdGlvbi9y
ZW1vdmVkLW91dC1vZi1vcmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
bXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbDogQWRkZWQuCisKIDIwMTItMDktMTkg
IE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBDaHJvbWl1bSBn
YXJkZW5pbmcsIHJlbW92ZSBmbGFreSB0ZXN0cyB0aGF0IGRvbid0IGFwcGVhciB0bwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9hZGRlZC1vdXQtb2Ytb3JkZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9hZGRlZC1vdXQtb2Ytb3JkZXItZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRmZmJiYjMzZWZiY2VkNDM3MWZiMTcyYWYyNmZkNGMxMzk4
NDIwZWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L211dGF0aW9uL2FkZGVk
LW91dC1vZi1vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOSBAQAorVGVzdCBNdXRhdGlv
bkV2ZW50cyBpbnRlcmZlcmluZyB3aXRoIE11dGF0aW9uT2JzZXJ2ZXJzOiBhZGRpbmcgbm9kZXMg
J291dCBvZiBvcmRlcicKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgbXV0
YXRpb25zLmxlbmd0aCBpcyAzCitQQVNTIG11dGF0aW9uc1swXS5hZGRlZE5vZGVzLmxlbmd0aCBp
cyAwCitQQVNTIG11dGF0aW9uc1swXS5yZW1vdmVkTm9kZXMubGVuZ3RoIGlzIDEKK1BBU1MgbXV0
YXRpb25zWzBdLnJlbW92ZWROb2Rlc1swXS50YWdOYW1lIGlzICdTUEFOJworUEFTUyBtdXRhdGlv
bnNbMV0uYWRkZWROb2Rlcy5sZW5ndGggaXMgMQorUEFTUyBtdXRhdGlvbnNbMV0ucmVtb3ZlZE5v
ZGVzLmxlbmd0aCBpcyAwCitQQVNTIG11dGF0aW9uc1sxXS5hZGRlZE5vZGVzWzBdLnRhZ05hbWUg
aXMgJ0RJVicKK1BBU1MgbXV0YXRpb25zWzJdLmFkZGVkTm9kZXMubGVuZ3RoIGlzIDEKK1BBU1Mg
bXV0YXRpb25zWzJdLnJlbW92ZWROb2Rlcy5sZW5ndGggaXMgMAorUEFTUyBtdXRhdGlvbnNbMl0u
YWRkZWROb2Rlc1swXS5ub2RlVmFsdWUgaXMgJ2hlbGxvIHdvcmxkJworUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvbXV0YXRpb24vYWRkZWQtb3V0LW9mLW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L211dGF0aW9uL2FkZGVkLW91dC1vZi1vcmRlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA0M2U5YTQy
NDc2NjFhNTE0ZTNiOTU5OTIxN2VhN2EwM2MwYWI1OTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L211dGF0aW9uL2FkZGVkLW91dC1vZi1vcmRlci5odG1sCkBAIC0wLDAgKzEs
MzAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGRpdiBpZD0ic2FuZGJveCIgc3R5bGU9ImRpc3BsYXk6
bm9uZSI+PHNwYW4+PC9zcGFuPjwvZGl2PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRlc3QgTXV0
YXRpb25FdmVudHMgaW50ZXJmZXJpbmcgd2l0aCBNdXRhdGlvbk9ic2VydmVyczogYWRkaW5nIG5v
ZGVzICdvdXQgb2Ygb3JkZXInIik7Cit2YXIgc2FuZGJveCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdzYW5kYm94Jyk7Cit2YXIgaW5zZXJ0ZWQgPSBmYWxzZTsKK3NhbmRib3guYWRkRXZlbnRM
aXN0ZW5lcignRE9NTm9kZVJlbW92ZWQnLCBmdW5jdGlvbigpIHsKKyAgICBpZiAoIWluc2VydGVk
KSB7CisgICAgICAgIHNhbmRib3guYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgn
ZGl2JykpOworICAgICAgICBpbnNlcnRlZCA9IHRydWU7CisgICAgfQorfSk7Cit2YXIgb2JzZXJ2
ZXIgPSBuZXcgV2ViS2l0TXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe30pOworb2JzZXJ2ZXIu
b2JzZXJ2ZShzYW5kYm94LCB7Y2hpbGRMaXN0OiB0cnVlfSk7CitzYW5kYm94LnRleHRDb250ZW50
ID0gJ2hlbGxvIHdvcmxkJzsKKwordmFyIG11dGF0aW9ucyA9IG9ic2VydmVyLnRha2VSZWNvcmRz
KCk7CitzaG91bGRCZSgibXV0YXRpb25zLmxlbmd0aCIsICIzIik7CitzaG91bGRCZSgibXV0YXRp
b25zWzBdLmFkZGVkTm9kZXMubGVuZ3RoIiwgIjAiKTsKK3Nob3VsZEJlKCJtdXRhdGlvbnNbMF0u
cmVtb3ZlZE5vZGVzLmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgibXV0YXRpb25zWzBdLnJlbW92
ZWROb2Rlc1swXS50YWdOYW1lIiwgIidTUEFOJyIpOworc2hvdWxkQmUoIm11dGF0aW9uc1sxXS5h
ZGRlZE5vZGVzLmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgibXV0YXRpb25zWzFdLnJlbW92ZWRO
b2Rlcy5sZW5ndGgiLCAiMCIpOworc2hvdWxkQmUoIm11dGF0aW9uc1sxXS5hZGRlZE5vZGVzWzBd
LnRhZ05hbWUiLCAiJ0RJViciKTsKK3Nob3VsZEJlKCJtdXRhdGlvbnNbMl0uYWRkZWROb2Rlcy5s
ZW5ndGgiLCAiMSIpOworc2hvdWxkQmUoIm11dGF0aW9uc1syXS5yZW1vdmVkTm9kZXMubGVuZ3Ro
IiwgIjAiKTsKK3Nob3VsZEJlKCJtdXRhdGlvbnNbMl0uYWRkZWROb2Rlc1swXS5ub2RlVmFsdWUi
LCAiJ2hlbGxvIHdvcmxkJyIpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L211dGF0aW9uL3JlbW92ZWQtb3V0LW9mLW9yZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXItZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjU1ZGZjMDEyNmFkOGY0MTE5MmM3YTBkZGE4MjhmNGViZWRmYzJhYWYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L211dGF0aW9uL3JlbW92ZWQtb3V0LW9mLW9yZGVy
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE3IEBACitUZXN0IE11dGF0aW9uRXZlbnRzIGludGVy
ZmVyaW5nIHdpdGggTXV0YXRpb25PYnNlcnZlcnM6IHJlbW92aW5nIG5vZGVzICdvdXQgb2Ygb3Jk
ZXInCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIG11dGF0aW9ucy5sZW5n
dGggaXMgMgorUEFTUyBtdXRhdGlvbnNbMF0uYWRkZWROb2Rlcy5sZW5ndGggaXMgMQorUEFTUyBt
dXRhdGlvbnNbMF0ucmVtb3ZlZE5vZGVzLmxlbmd0aCBpcyAwCitQQVNTIG11dGF0aW9uc1swXS5h
ZGRlZE5vZGVzWzBdLnRhZ05hbWUgaXMgJ0InCitQQVNTIG11dGF0aW9uc1sxXS5hZGRlZE5vZGVz
Lmxlbmd0aCBpcyAxCitQQVNTIG11dGF0aW9uc1sxXS5yZW1vdmVkTm9kZXMubGVuZ3RoIGlzIDEK
K1BBU1MgbXV0YXRpb25zWzFdLnJlbW92ZWROb2Rlc1swXS50YWdOYW1lIGlzICdCJworUEFTUyBt
dXRhdGlvbnNbMV0uYWRkZWROb2Rlc1swXS50YWdOYW1lIGlzICdJJworUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MjNk
ZTc4YTZiZThiYjEzNzM3ZGVlYWRlNzhlYjk0MTJhOTRmMDMwCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9yZW1vdmVkLW91dC1vZi1vcmRlci5odG1sCkBAIC0w
LDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGRpdiBpZD0ic2FuZGJveCIgc3R5bGU9ImRp
c3BsYXk6bm9uZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVzdCBNdXRhdGlvbkV2
ZW50cyBpbnRlcmZlcmluZyB3aXRoIE11dGF0aW9uT2JzZXJ2ZXJzOiByZW1vdmluZyBub2RlcyAn
b3V0IG9mIG9yZGVyJyIpOwordmFyIHNhbmRib3ggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
c2FuZGJveCcpOwordmFyIHJlbW92ZWQgPSBmYWxzZTsKK3NhbmRib3guYWRkRXZlbnRMaXN0ZW5l
cignRE9NTm9kZUluc2VydGVkJywgZnVuY3Rpb24oKSB7CisgICAgaWYgKCFyZW1vdmVkKSB7Cisg
ICAgICAgIHNhbmRib3gucmVtb3ZlQ2hpbGQoc2FuZGJveC5maXJzdENoaWxkKTsKKyAgICAgICAg
cmVtb3ZlZCA9IHRydWU7CisgICAgfQorfSk7Cit2YXIgb2JzZXJ2ZXIgPSBuZXcgV2ViS2l0TXV0
YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe30pOworb2JzZXJ2ZXIub2JzZXJ2ZShzYW5kYm94LCB7
Y2hpbGRMaXN0OiB0cnVlfSk7CitzYW5kYm94LmlubmVySFRNTCA9ICc8Yj48L2I+PGk+PC9pPic7
CisKK3ZhciBtdXRhdGlvbnMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOworc2hvdWxkQmUoIm11
dGF0aW9ucy5sZW5ndGgiLCAiMiIpOworc2hvdWxkQmUoIm11dGF0aW9uc1swXS5hZGRlZE5vZGVz
Lmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgibXV0YXRpb25zWzBdLnJlbW92ZWROb2Rlcy5sZW5n
dGgiLCAiMCIpOworc2hvdWxkQmUoIm11dGF0aW9uc1swXS5hZGRlZE5vZGVzWzBdLnRhZ05hbWUi
LCAiJ0InIik7CitzaG91bGRCZSgibXV0YXRpb25zWzFdLmFkZGVkTm9kZXMubGVuZ3RoIiwgIjEi
KTsKK3Nob3VsZEJlKCJtdXRhdGlvbnNbMV0ucmVtb3ZlZE5vZGVzLmxlbmd0aCIsICIxIik7Citz
aG91bGRCZSgibXV0YXRpb25zWzFdLnJlbW92ZWROb2Rlc1swXS50YWdOYW1lIiwgIidCJyIpOwor
c2hvdWxkQmUoIm11dGF0aW9uc1sxXS5hZGRlZE5vZGVzWzBdLnRhZ05hbWUiLCAiJ0knIik7Cis8
L3NjcmlwdD4KKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165228</attachid>
            <date>2012-09-21 17:00:29 -0700</date>
            <delta_ts>2012-09-21 18:27:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97372-20120921165953.patch</filename>
            <type>text/plain</type>
            <size>9380</size>
            <attacher name="Adam Klein">adamk</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyYzM3MDQyNThkZjRjYTg1MmVmMDJhZThkY2Q3ZTRhYzJhNTEwNWJkLi5h
NTBjNjVlZGEwNWNjZWJmNWFkNDdmNDQyYWIzNTY5ZDM1ZGNhNGQ4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDUgKzEsMzAgQEAKIDIwMTItMDktMjEgIEFkYW0gS2xlaW4gIDxhZGFta0BjaHJvbWl1bS5vcmc+
CiAKKyAgICAgICAgUmVtb3ZlIGJvZ3VzIGFzc2VydGlvbnMgZnJvbSBDaGlsZExpc3RNdXRhdGlv
blNjb3BlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05
NzM3MgorCisgICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICBTb21l
IGFzc2VydHMgKGFuZCB0aGVpciBhY2NvbXBhbnlpbmcgY29tbWVudCkgd2VyZSB0cnlpbmcgdG8g
ZW5mb3JjZQorICAgICAgICBwcm9wZXIgdXNhZ2Ugb2YgQ2hpbGRMaXN0TXV0YXRpb25TY29wZSBm
cm9tIFdlYkNvcmUsIGJ1dCBpbiB0aGUKKyAgICAgICAgcHJlc2VuY2Ugb2YgTXV0YXRpb25FdmVu
dHMgdGhleSBjb3VsZCBmYWlsIGR1ZSB0byBhcmJpdHJhcnkgc2NyaXB0CisgICAgICAgIGV4ZWN1
dGlvbi4KKworICAgICAgICBUaGlzIGNoYW5nZSBnZXRzIHJpZCBvZiB0aG9zZSBhc3NlcnRzIGFu
ZCBhZGRzIHRlc3RzIGV4ZXJjaXNpbmcKKyAgICAgICAgdGhlIChwcmUtZXhpc3RpbmcpIGNvZGVw
YXRocyBmb3IgaGFuZGxpbmcgdGhlc2Ugb3V0LW9mLW9yZGVyIGNhc2VzLgorICAgICAgICBXaXRo
b3V0IHRoaXMgcGF0Y2gsIHRoZXNlIHRlc3RzIEFTU0VSVCBpbiBkZWJ1ZyBidWlsZHMuCisKKyAg
ICAgICAgVGVzdHM6IGZhc3QvbXV0YXRpb24vYWRkZWQtb3V0LW9mLW9yZGVyLmh0bWwKKyAgICAg
ICAgICAgICAgIGZhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbAorCisgICAg
ICAgICogZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q2hpbGRMaXN0TXV0YXRpb25BY2N1bXVsYXRvcjo6Y2hpbGRBZGRlZCk6CisgICAgICAgIChXZWJD
b3JlOjpDaGlsZExpc3RNdXRhdGlvbkFjY3VtdWxhdG9yOjp3aWxsUmVtb3ZlQ2hpbGQpOgorICAg
ICAgICAqIGRvbS9DaGlsZExpc3RNdXRhdGlvblNjb3BlLmg6CisgICAgICAgIChXZWJDb3JlKToK
KworMjAxMi0wOS0yMSAgQWRhbSBLbGVpbiAgPGFkYW1rQGNocm9taXVtLm9yZz4KKwogICAgICAg
ICBTaW1wbGlmeSBhbmQgb3B0aW1pemUgQ2hpbGRMaXN0TXV0YXRpb25TY29wZQogICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTczNTIKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUuY3BwCmluZGV4IGJkZmYyMDk0NGRi
MTgwYTM3YWQ0YjUwYmUyNjQ0ODkyNzY0MDUyZWIuLjQ0NzYyYmRhYWEzNjA5MGVmNGI1MTg2ODc0
NDUxYWVlMjY1YTExNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGlsZExpc3RN
dXRhdGlvblNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hpbGRMaXN0TXV0YXRp
b25TY29wZS5jcHAKQEAgLTg3LDEwICs4NywxMCBAQCBpbmxpbmUgYm9vbCBDaGlsZExpc3RNdXRh
dGlvbkFjY3VtdWxhdG9yOjppc0FkZGVkTm9kZUluT3JkZXIoTm9kZSogY2hpbGQpCiAKIHZvaWQg
Q2hpbGRMaXN0TXV0YXRpb25BY2N1bXVsYXRvcjo6Y2hpbGRBZGRlZChQYXNzUmVmUHRyPE5vZGU+
IHBycENoaWxkKQogeworICAgIEFTU0VSVChoYXNPYnNlcnZlcnMoKSk7CisKICAgICBSZWZQdHI8
Tm9kZT4gY2hpbGQgPSBwcnBDaGlsZDsKIAotICAgIEFTU0VSVChoYXNPYnNlcnZlcnMoKSk7Ci0g
ICAgQVNTRVJUKGlzQWRkZWROb2RlSW5PcmRlcihjaGlsZC5nZXQoKSkpOwogICAgIGlmICghaXNB
ZGRlZE5vZGVJbk9yZGVyKGNoaWxkLmdldCgpKSkKICAgICAgICAgZW5xdWV1ZU11dGF0aW9uUmVj
b3JkKCk7CiAKQEAgLTExMCwxMCArMTEwLDEwIEBAIGlubGluZSBib29sIENoaWxkTGlzdE11dGF0
aW9uQWNjdW11bGF0b3I6OmlzUmVtb3ZlZE5vZGVJbk9yZGVyKE5vZGUqIGNoaWxkKQogCiB2b2lk
IENoaWxkTGlzdE11dGF0aW9uQWNjdW11bGF0b3I6OndpbGxSZW1vdmVDaGlsZChQYXNzUmVmUHRy
PE5vZGU+IHBycENoaWxkKQogeworICAgIEFTU0VSVChoYXNPYnNlcnZlcnMoKSk7CisKICAgICBS
ZWZQdHI8Tm9kZT4gY2hpbGQgPSBwcnBDaGlsZDsKIAotICAgIEFTU0VSVChoYXNPYnNlcnZlcnMo
KSk7Ci0gICAgQVNTRVJUKG1fYWRkZWROb2Rlcy5pc0VtcHR5KCkgJiYgaXNSZW1vdmVkTm9kZUlu
T3JkZXIoY2hpbGQuZ2V0KCkpKTsKICAgICBpZiAoIW1fYWRkZWROb2Rlcy5pc0VtcHR5KCkgfHwg
IWlzUmVtb3ZlZE5vZGVJbk9yZGVyKGNoaWxkLmdldCgpKSkKICAgICAgICAgZW5xdWV1ZU11dGF0
aW9uUmVjb3JkKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGlsZExpc3RN
dXRhdGlvblNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hpbGRMaXN0TXV0YXRpb25TY29w
ZS5oCmluZGV4IDAwNTUxOWE1YjUyMzlhN2VlMTE5ZmRlMjcxNWNlYjIxZWY4YWIzMzcuLmE0N2Vl
NTVmOGZkM2E4NDQwYWU3NmZkOTU1MmVhNzU0OTJhYjZjNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9DaGlsZExpc3RNdXRhdGlvblNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUuaApAQCAtNDYsMTEgKzQ2LDYgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogY2xhc3MgTXV0YXRpb25PYnNlcnZlckludGVyZXN0R3JvdXA7CiAKIC8vIENo
aWxkTGlzdE11dGF0aW9uQWNjdW11bGF0b3IgaXMgbm90IG1lYW50IHRvIGJlIHVzZWQgZGlyZWN0
bHk7IENoaWxkTGlzdE11dGF0aW9uU2NvcGUgaXMgdGhlIHB1YmxpYyBpbnRlcmZhY2UuCi0vLwot
Ly8gQ2hpbGRMaXN0TXV0YXRpb25BY2N1bXVsYXRvciBleHBlY3RzIHRoYXQgYWxsIHJlbW92YWxz
IGZyb20gYSBwYXJlbnQgdGFrZSBwbGFjZSBpbiBvcmRlcgotLy8gYW5kIHByZWNlZGUgYW55IGFk
ZGl0aW9ucy4gSWYgdGhpcyBpcyB2aW9sYXRlZCAoaS5lLiBiZWNhdXNlIG9mIGNvZGUgY2hhbmdl
cyBlbHNld2hlcmUKLS8vIGluIFdlYkNvcmUpIGl0IHdpbGwgbGlrZWx5IHJlc3VsdCBpbiBib3Ro
IChhKSBBU1NFUlRpb25zIGZhaWxpbmcsIGFuZCAoYikgbXV0YXRpb24gcmVjb3JkcwotLy8gYmVp
bmcgZW5xdWV1ZWQgZm9yIGRlbGl2ZXJ5IGJlZm9yZSB0aGUgb3V0ZXItbW9zdCBzY29wZSBjbG9z
ZXMuCiBjbGFzcyBDaGlsZExpc3RNdXRhdGlvbkFjY3VtdWxhdG9yIDogcHVibGljIFJlZkNvdW50
ZWQ8Q2hpbGRMaXN0TXV0YXRpb25BY2N1bXVsYXRvcj4gewogcHVibGljOgogICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPENoaWxkTGlzdE11dGF0aW9uQWNjdW11bGF0b3I+IGdldE9yQ3JlYXRlKE5vZGUq
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCAwMDk3ZGRkMjU2MmU2MDFkM2FhZmQwNjAyOTRmMTc5NmZjMTc1NDExLi40YWU2
OWRkY2IzN2E4MDg0OTQzYjBmNjgzZDBhZDA2MzI0ZDU5YjlmIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTItMDktMjEgIEFkYW0gS2xlaW4gIDxhZGFta0BjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmVtb3ZlIGJvZ3VzIGFzc2VydGlvbnMgZnJvbSBDaGlsZExpc3RNdXRhdGlvblNjb3BlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzM3MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIGZhc3QvbXV0YXRp
b24vYWRkZWQtb3V0LW9mLW9yZGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFz
dC9tdXRhdGlvbi9hZGRlZC1vdXQtb2Ytb3JkZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9tdXRhdGlvbi9yZW1vdmVkLW91dC1vZi1vcmRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbDogQWRkZWQuCisK
IDIwMTItMDktMTkgIE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBDaHJvbWl1bSBnYXJkZW5pbmcsIHJlbW92ZSBmbGFreSB0ZXN0cyB0aGF0IGRvbid0IGFwcGVh
ciB0bwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9hZGRlZC1vdXQtb2Yt
b3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9hZGRlZC1vdXQt
b2Ytb3JkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRmZmJiYjMzZWZiY2VkNDM3MWZiMTcy
YWYyNmZkNGMxMzk4NDIwZWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L211
dGF0aW9uL2FkZGVkLW91dC1vZi1vcmRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOSBAQAor
VGVzdCBNdXRhdGlvbkV2ZW50cyBpbnRlcmZlcmluZyB3aXRoIE11dGF0aW9uT2JzZXJ2ZXJzOiBh
ZGRpbmcgbm9kZXMgJ291dCBvZiBvcmRlcicKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgbXV0YXRpb25zLmxlbmd0aCBpcyAzCitQQVNTIG11dGF0aW9uc1swXS5hZGRlZE5v
ZGVzLmxlbmd0aCBpcyAwCitQQVNTIG11dGF0aW9uc1swXS5yZW1vdmVkTm9kZXMubGVuZ3RoIGlz
IDEKK1BBU1MgbXV0YXRpb25zWzBdLnJlbW92ZWROb2Rlc1swXS50YWdOYW1lIGlzICdTUEFOJwor
UEFTUyBtdXRhdGlvbnNbMV0uYWRkZWROb2Rlcy5sZW5ndGggaXMgMQorUEFTUyBtdXRhdGlvbnNb
MV0ucmVtb3ZlZE5vZGVzLmxlbmd0aCBpcyAwCitQQVNTIG11dGF0aW9uc1sxXS5hZGRlZE5vZGVz
WzBdLnRhZ05hbWUgaXMgJ0RJVicKK1BBU1MgbXV0YXRpb25zWzJdLmFkZGVkTm9kZXMubGVuZ3Ro
IGlzIDEKK1BBU1MgbXV0YXRpb25zWzJdLnJlbW92ZWROb2Rlcy5sZW5ndGggaXMgMAorUEFTUyBt
dXRhdGlvbnNbMl0uYWRkZWROb2Rlc1swXS5ub2RlVmFsdWUgaXMgJ2hlbGxvIHdvcmxkJworUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvbXV0YXRpb24vYWRkZWQtb3V0LW9mLW9yZGVyLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L211dGF0aW9uL2FkZGVkLW91dC1vZi1vcmRlci5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjA0M2U5YTQyNDc2NjFhNTE0ZTNiOTU5OTIxN2VhN2EwM2MwYWI1OTEKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L211dGF0aW9uL2FkZGVkLW91dC1vZi1vcmRlci5odG1s
CkBAIC0wLDAgKzEsMzAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGRpdiBpZD0ic2FuZGJveCIgc3R5
bGU9ImRpc3BsYXk6bm9uZSI+PHNwYW4+PC9zcGFuPjwvZGl2PgorPHNjcmlwdCBzcmM9Ii4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorZGVzY3JpcHRp
b24oIlRlc3QgTXV0YXRpb25FdmVudHMgaW50ZXJmZXJpbmcgd2l0aCBNdXRhdGlvbk9ic2VydmVy
czogYWRkaW5nIG5vZGVzICdvdXQgb2Ygb3JkZXInIik7Cit2YXIgc2FuZGJveCA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdzYW5kYm94Jyk7Cit2YXIgaW5zZXJ0ZWQgPSBmYWxzZTsKK3NhbmRi
b3guYWRkRXZlbnRMaXN0ZW5lcignRE9NTm9kZVJlbW92ZWQnLCBmdW5jdGlvbigpIHsKKyAgICBp
ZiAoIWluc2VydGVkKSB7CisgICAgICAgIHNhbmRib3guYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgnZGl2JykpOworICAgICAgICBpbnNlcnRlZCA9IHRydWU7CisgICAgfQorfSk7
Cit2YXIgb2JzZXJ2ZXIgPSBuZXcgV2ViS2l0TXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe30p
Oworb2JzZXJ2ZXIub2JzZXJ2ZShzYW5kYm94LCB7Y2hpbGRMaXN0OiB0cnVlfSk7CitzYW5kYm94
LnRleHRDb250ZW50ID0gJ2hlbGxvIHdvcmxkJzsKKwordmFyIG11dGF0aW9ucyA9IG9ic2VydmVy
LnRha2VSZWNvcmRzKCk7CitzaG91bGRCZSgibXV0YXRpb25zLmxlbmd0aCIsICIzIik7CitzaG91
bGRCZSgibXV0YXRpb25zWzBdLmFkZGVkTm9kZXMubGVuZ3RoIiwgIjAiKTsKK3Nob3VsZEJlKCJt
dXRhdGlvbnNbMF0ucmVtb3ZlZE5vZGVzLmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgibXV0YXRp
b25zWzBdLnJlbW92ZWROb2Rlc1swXS50YWdOYW1lIiwgIidTUEFOJyIpOworc2hvdWxkQmUoIm11
dGF0aW9uc1sxXS5hZGRlZE5vZGVzLmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgibXV0YXRpb25z
WzFdLnJlbW92ZWROb2Rlcy5sZW5ndGgiLCAiMCIpOworc2hvdWxkQmUoIm11dGF0aW9uc1sxXS5h
ZGRlZE5vZGVzWzBdLnRhZ05hbWUiLCAiJ0RJViciKTsKK3Nob3VsZEJlKCJtdXRhdGlvbnNbMl0u
YWRkZWROb2Rlcy5sZW5ndGgiLCAiMSIpOworc2hvdWxkQmUoIm11dGF0aW9uc1syXS5yZW1vdmVk
Tm9kZXMubGVuZ3RoIiwgIjAiKTsKK3Nob3VsZEJlKCJtdXRhdGlvbnNbMl0uYWRkZWROb2Rlc1sw
XS5ub2RlVmFsdWUiLCAiJ2hlbGxvIHdvcmxkJyIpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L211dGF0aW9uL3JlbW92ZWQtb3V0LW9mLW9yZGVyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXItZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjU1ZGZjMDEyNmFkOGY0MTE5MmM3YTBkZGE4MjhmNGViZWRmYzJh
YWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L211dGF0aW9uL3JlbW92ZWQt
b3V0LW9mLW9yZGVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE3IEBACitUZXN0IE11dGF0aW9u
RXZlbnRzIGludGVyZmVyaW5nIHdpdGggTXV0YXRpb25PYnNlcnZlcnM6IHJlbW92aW5nIG5vZGVz
ICdvdXQgb2Ygb3JkZXInCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIG11
dGF0aW9ucy5sZW5ndGggaXMgMgorUEFTUyBtdXRhdGlvbnNbMF0uYWRkZWROb2Rlcy5sZW5ndGgg
aXMgMQorUEFTUyBtdXRhdGlvbnNbMF0ucmVtb3ZlZE5vZGVzLmxlbmd0aCBpcyAwCitQQVNTIG11
dGF0aW9uc1swXS5hZGRlZE5vZGVzWzBdLnRhZ05hbWUgaXMgJ0InCitQQVNTIG11dGF0aW9uc1sx
XS5hZGRlZE5vZGVzLmxlbmd0aCBpcyAxCitQQVNTIG11dGF0aW9uc1sxXS5yZW1vdmVkTm9kZXMu
bGVuZ3RoIGlzIDEKK1BBU1MgbXV0YXRpb25zWzFdLnJlbW92ZWROb2Rlc1swXS50YWdOYW1lIGlz
ICdCJworUEFTUyBtdXRhdGlvbnNbMV0uYWRkZWROb2Rlc1swXS50YWdOYW1lIGlzICdJJworUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvbXV0YXRpb24vcmVtb3ZlZC1vdXQtb2Ytb3JkZXIuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40MjNkZTc4YTZiZThiYjEzNzM3ZGVlYWRlNzhlYjk0MTJhOTRmMDMwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tdXRhdGlvbi9yZW1vdmVkLW91dC1vZi1vcmRl
ci5odG1sCkBAIC0wLDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGRpdiBpZD0ic2FuZGJv
eCIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVz
dCBNdXRhdGlvbkV2ZW50cyBpbnRlcmZlcmluZyB3aXRoIE11dGF0aW9uT2JzZXJ2ZXJzOiByZW1v
dmluZyBub2RlcyAnb3V0IG9mIG9yZGVyJyIpOwordmFyIHNhbmRib3ggPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnc2FuZGJveCcpOwordmFyIHJlbW92ZWQgPSBmYWxzZTsKK3NhbmRib3guYWRk
RXZlbnRMaXN0ZW5lcignRE9NTm9kZUluc2VydGVkJywgZnVuY3Rpb24oKSB7CisgICAgaWYgKCFy
ZW1vdmVkKSB7CisgICAgICAgIHNhbmRib3gucmVtb3ZlQ2hpbGQoc2FuZGJveC5maXJzdENoaWxk
KTsKKyAgICAgICAgcmVtb3ZlZCA9IHRydWU7CisgICAgfQorfSk7Cit2YXIgb2JzZXJ2ZXIgPSBu
ZXcgV2ViS2l0TXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe30pOworb2JzZXJ2ZXIub2JzZXJ2
ZShzYW5kYm94LCB7Y2hpbGRMaXN0OiB0cnVlfSk7CitzYW5kYm94LmlubmVySFRNTCA9ICc8Yj48
L2I+PGk+PC9pPic7CisKK3ZhciBtdXRhdGlvbnMgPSBvYnNlcnZlci50YWtlUmVjb3JkcygpOwor
c2hvdWxkQmUoIm11dGF0aW9ucy5sZW5ndGgiLCAiMiIpOworc2hvdWxkQmUoIm11dGF0aW9uc1sw
XS5hZGRlZE5vZGVzLmxlbmd0aCIsICIxIik7CitzaG91bGRCZSgibXV0YXRpb25zWzBdLnJlbW92
ZWROb2Rlcy5sZW5ndGgiLCAiMCIpOworc2hvdWxkQmUoIm11dGF0aW9uc1swXS5hZGRlZE5vZGVz
WzBdLnRhZ05hbWUiLCAiJ0InIik7CitzaG91bGRCZSgibXV0YXRpb25zWzFdLmFkZGVkTm9kZXMu
bGVuZ3RoIiwgIjEiKTsKK3Nob3VsZEJlKCJtdXRhdGlvbnNbMV0ucmVtb3ZlZE5vZGVzLmxlbmd0
aCIsICIxIik7CitzaG91bGRCZSgibXV0YXRpb25zWzFdLnJlbW92ZWROb2Rlc1swXS50YWdOYW1l
IiwgIidCJyIpOworc2hvdWxkQmUoIm11dGF0aW9uc1sxXS5hZGRlZE5vZGVzWzBdLnRhZ05hbWUi
LCAiJ0knIik7Cis8L3NjcmlwdD4KKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>