<?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>90436</bug_id>
          
          <creation_ts>2012-07-03 01:10:24 -0700</creation_ts>
          <short_desc>Some events should be always stopped at shadow boundary.</short_desc>
          <delta_ts>2019-02-06 09:19:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</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>
          
          <blocked>59805</blocked>
    
    <blocked>90508</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hayato Ito">hayato</reporter>
          <assigned_to name="Hayato Ito">hayato</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dominicc</cc>
    
    <cc>morrita</cc>
    
    <cc>shinyak</cc>
    
    <cc>tasak</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>662030</commentid>
    <comment_count>0</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-07-03 01:10:24 -0700</bug_when>
    <thetext>The spec is here: https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#events-that-are-always-stopped

The following events should be always stopped at shadow boundary.

abort
select
change
reset
resize
scroll
selectstart</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>662071</commentid>
    <comment_count>1</comment_count>
      <attachid>150565</attachid>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-07-03 02:23:51 -0700</bug_when>
    <thetext>Created attachment 150565
stop events at shadow boundary</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>669482</commentid>
    <comment_count>2</comment_count>
      <attachid>150565</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-07-13 15:13:04 -0700</bug_when>
    <thetext>Comment on attachment 150565
stop events at shadow boundary

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

&gt; Source/WebCore/dom/EventDispatcher.cpp:-367
&gt; -    // WebKit never allowed selectstart event to cross the the shadow DOM boundary.
&gt; -    // Changing this breaks existing sites.
&gt; -    // See https://bugs.webkit.org/show_bug.cgi?id=52195 for details.

It seems valuable to document this information somewhere. I would just leave it here if I were you.

&gt; LayoutTests/fast/dom/shadow/events-stopped-at-shadow-boundary.html:24
&gt; +function debugDispatchedEvent(eventType)

&quot;debug&quot;DispatchedEvent sounds misleading. Maybe dumpDispatchedEvent?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>670884</commentid>
    <comment_count>3</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-07-16 18:34:01 -0700</bug_when>
    <thetext>Thank you for the review. Let me land after I address your comments.

(In reply to comment #2)
&gt; (From update of attachment 150565 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=150565&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/EventDispatcher.cpp:-367
&gt; &gt; -    // WebKit never allowed selectstart event to cross the the shadow DOM boundary.
&gt; &gt; -    // Changing this breaks existing sites.
&gt; &gt; -    // See https://bugs.webkit.org/show_bug.cgi?id=52195 for details.
&gt; 
&gt; It seems valuable to document this information somewhere. I would just leave it here if I were you.

Okay. I&apos;ll leave it as is.

&gt; 
&gt; &gt; LayoutTests/fast/dom/shadow/events-stopped-at-shadow-boundary.html:24
&gt; &gt; +function debugDispatchedEvent(eventType)
&gt; 
&gt; &quot;debug&quot;DispatchedEvent sounds misleading. Maybe dumpDispatchedEvent?

Let me rename.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>670885</commentid>
    <comment_count>4</comment_count>
      <attachid>152675</attachid>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-07-16 18:35:57 -0700</bug_when>
    <thetext>Created attachment 152675
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>670936</commentid>
    <comment_count>5</comment_count>
      <attachid>152675</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-16 20:24:46 -0700</bug_when>
    <thetext>Comment on attachment 152675
Patch for landing

Clearing flags on attachment: 152675

Committed r122801: &lt;http://trac.webkit.org/changeset/122801&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>670937</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-16 20:24:50 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>671115</commentid>
    <comment_count>7</comment_count>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2012-07-17 03:05:58 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Thank you for the review. Let me land after I address your comments.
&gt; 
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 150565 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=150565&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/dom/EventDispatcher.cpp:-367
&gt; &gt; &gt; -    // WebKit never allowed selectstart event to cross the the shadow DOM boundary.
&gt; &gt; &gt; -    // Changing this breaks existing sites.
&gt; &gt; &gt; -    // See https://bugs.webkit.org/show_bug.cgi?id=52195 for details.
&gt; &gt; 
&gt; &gt; It seems valuable to document this information somewhere. I would just leave it here if I were you.
&gt; 
&gt; Okay. I&apos;ll leave it as is.
&gt; 
I think it would be better to update it, since the behaviour and comment is superseded by the spec and this bug. As it stands it doesn&apos;t explain the extra events you added, or that selectstart is now a part of a spec and no longer a quirk necessary for backward compatibility</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>671123</commentid>
    <comment_count>8</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-07-17 03:18:49 -0700</bug_when>
    <thetext>As far as I remeber, there is a special reason for a &apos;selectsstart&apos; event due to the implementation of &lt;input&gt; element in WebKit.
If we don&apos;t stop &apos;selectstart&apos; at the shadow boundary, an &lt;input&gt; element will break.

I think this is not directly related to the Shadow DOM spec. The issue has been there before the current shadow DOM spec was defined, I guess.

I think we should explain such behavior somewhere, or update the comment here. But I am not the right person to explain it. If I am wrong, please correct me.


(In reply to comment #7)
&gt; (In reply to comment #3)
&gt; &gt; Thank you for the review. Let me land after I address your comments.
&gt; &gt; 
&gt; &gt; (In reply to comment #2)
&gt; &gt; &gt; (From update of attachment 150565 [details] [details] [details])
&gt; &gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=150565&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebCore/dom/EventDispatcher.cpp:-367
&gt; &gt; &gt; &gt; -    // WebKit never allowed selectstart event to cross the the shadow DOM boundary.
&gt; &gt; &gt; &gt; -    // Changing this breaks existing sites.
&gt; &gt; &gt; &gt; -    // See https://bugs.webkit.org/show_bug.cgi?id=52195 for details.
&gt; &gt; &gt; 
&gt; &gt; &gt; It seems valuable to document this information somewhere. I would just leave it here if I were you.
&gt; &gt; 
&gt; &gt; Okay. I&apos;ll leave it as is.
&gt; &gt; 
&gt; I think it would be better to update it, since the behaviour and comment is superseded by the spec and this bug. As it stands it doesn&apos;t explain the extra events you added, or that selectstart is now a part of a spec and no longer a quirk necessary for backward compatibility</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>671125</commentid>
    <comment_count>9</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-07-17 03:22:41 -0700</bug_when>
    <thetext>I agree that the comment here should be updated somehow. Let me fix it in another patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1503342</commentid>
    <comment_count>10</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2019-02-06 09:19:15 -0800</bug_when>
    <thetext>Mass move bugs into the DOM component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>150565</attachid>
            <date>2012-07-03 02:23:51 -0700</date>
            <delta_ts>2012-07-16 18:35:49 -0700</delta_ts>
            <desc>stop events at shadow boundary</desc>
            <filename>bug-90436-20120703182350.patch</filename>
            <type>text/plain</type>
            <size>7532</size>
            <attacher name="Hayato Ito">hayato</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIxNjQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTFjMGQyMmRlZmFmYjE5
M2JiOTI2NmUxNGY4ZmUxMjVmM2ExMjk4MS4uNjQ2MmViNWRmNDBkOTlhZjUwZTAyMjBlM2JlNzI4
MzIyOWZjOTIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTA3LTAzICBIYXlh
dG8gSXRvICA8aGF5YXRvQGNocm9taXVtLm9yZz4KKworICAgICAgICBTb21lIGV2ZW50cyBzaG91
bGQgYmUgYWx3YXlzIHN0b3BwZWQgYXQgc2hhZG93IGJvdW5kYXJ5LgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTA0MzYKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgc3BlYyBpcyBoZXJlOgorICAgICAg
ICBodHRwczovL2R2Y3MudzMub3JnL2hnL3dlYmNvbXBvbmVudHMvcmF3LWZpbGUvdGlwL3NwZWMv
c2hhZG93L2luZGV4Lmh0bWwjZXZlbnRzLXRoYXQtYXJlLWFsd2F5cy1zdG9wcGVkCisKKyAgICAg
ICAgVGVzdDogZmFzdC9kb20vc2hhZG93L2V2ZW50cy1zdG9wcGVkLWF0LXNoYWRvdy1ib3VuZGFy
eS5odG1sCisKKyAgICAgICAgKiBkb20vRXZlbnREaXNwYXRjaGVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkV2ZW50RGlzcGF0Y2hlcjo6ZGV0ZXJtaW5lRGlzcGF0Y2hCZWhhdmlvcik6CisKIDIw
MTItMDctMDEgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAg
IE1ha2UgdGhlICJJbnNwZWN0IEVsZW1lbnQiIGNvbnRleHQgbWVudSBpdGVtIGFwcGVhciBpbiBu
aWdodGx5IGJ1aWxkcyBhZ2Fpbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVu
dERpc3BhdGNoZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlzcGF0Y2hlci5jcHAK
aW5kZXggNjA3ZmRhOWY1YjViMzZjMmM0ZjFkMDAyM2M5ZWMyMjRkMDA4NDkwYy4uODUxYWRlMzlh
M2M3OTU5ZWU1YjExYTJmZWZiOTYzY2ExMGFjY2FjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50RGlzcGF0Y2hlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
RGlzcGF0Y2hlci5jcHAKQEAgLTM2MiwxMCArMzYyLDE0IEBAIEV2ZW50RGlzcGF0Y2hCZWhhdmlv
ciBFdmVudERpc3BhdGNoZXI6OmRldGVybWluZURpc3BhdGNoQmVoYXZpb3IoRXZlbnQqIGV2ZW50
LCBTCiAgICAgVU5VU0VEX1BBUkFNKHNoYWRvd1Jvb3QpOwogI2VuZGlmCiAKLSAgICAvLyBXZWJL
aXQgbmV2ZXIgYWxsb3dlZCBzZWxlY3RzdGFydCBldmVudCB0byBjcm9zcyB0aGUgdGhlIHNoYWRv
dyBET00gYm91bmRhcnkuCi0gICAgLy8gQ2hhbmdpbmcgdGhpcyBicmVha3MgZXhpc3Rpbmcgc2l0
ZXMuCi0gICAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MjE5NSBmb3IgZGV0YWlscy4KLSAgICBpZiAoZXZlbnQtPnR5cGUoKSA9PSBldmVudE5hbWVzKCku
c2VsZWN0c3RhcnRFdmVudCkKKyAgICBjb25zdCBBdG9taWNTdHJpbmcgZXZlbnRUeXBlID0gZXZl
bnQtPnR5cGUoKTsKKyAgICBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5hYm9ydEV2ZW50
CisgICAgICAgICAgICB8fCBldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLmNoYW5nZUV2ZW50Cisg
ICAgICAgICAgICB8fCBldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLnJlc2V0RXZlbnQKKyAgICAg
ICAgICAgIHx8IGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkucmVzaXplRXZlbnQKKyAgICAgICAg
ICAgIHx8IGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuc2Nyb2xsRXZlbnQKKyAgICAgICAgICAg
IHx8IGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuc2VsZWN0RXZlbnQKKyAgICAgICAgICAgIHx8
IGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuc2VsZWN0c3RhcnRFdmVudCkKICAgICAgICAgcmV0
dXJuIFN0YXlJbnNpZGVTaGFkb3dET007CiAKICAgICByZXR1cm4gUmV0YXJnZXRFdmVudDsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCA3OTFhMjdlYTFiZjM2MDgyMDNjOTk0ZGFkMmE1NzBhYTc0YTFjMmI3Li4xMzg3NDU5YmMz
ODhlNmRiNjBkODc5NWQwNDgyODRkMTcyYmYxNDU3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIw
MTItMDctMDMgIEhheWF0byBJdG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFNv
bWUgZXZlbnRzIHNob3VsZCBiZSBhbHdheXMgc3RvcHBlZCBhdCBzaGFkb3cgYm91bmRhcnkuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MDQzNgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9kb20v
c2hhZG93L2V2ZW50cy1zdG9wcGVkLWF0LXNoYWRvdy1ib3VuZGFyeS1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9ldmVudHMtc3RvcHBlZC1hdC1zaGFkb3ct
Ym91bmRhcnkuaHRtbDogQWRkZWQuCisKIDIwMTItMDctMDEgIERhbiBCZXJuc3RlaW4gIDxtaXR6
QGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTE3ODU3NDM+IFttYWNdIE5v
bi1CTVAgY2hhcmFjdGVycyBpbiB2ZXJ0aWNhbCB0ZXh0IGFwcGVhciBhcyBtaXNzaW5nIGdseXBo
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2V2ZW50cy1zdG9wcGVk
LWF0LXNoYWRvdy1ib3VuZGFyeS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9z
aGFkb3cvZXZlbnRzLXN0b3BwZWQtYXQtc2hhZG93LWJvdW5kYXJ5LWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4zODU3NDM3M2E2MGM2OWJmZDk4NjNhMDhmMDgyYzA2YjlmZjk1YTkyCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2V2ZW50cy1zdG9wcGVkLWF0
LXNoYWRvdy1ib3VuZGFyeS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NCBAQAorVGVzdHMgdG8g
ZW5zdXJlIHRoYXQgc29tZSBraW5kcyBvZiBldmVudHMgYXJlIHN0b3BlZWQgYXQgc2hhZG93IGJv
dW5kYXJ5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworT3RoZXIgZXZlbnRzIHRo
YW4gImNsaWNrIiBzaG91bGQgYmUgc3RvcHBlZCBhdCBzaGFkb3cgYm91bmRhcnkuICBBICJjbGlj
ayIgaXMgYWRkZWQgZm9yIHRoZSBwdXJwb3NlIG9mIGNvbXBhcmluZyByZXN1bHRzLgorCisgIGFi
b3J0CisgICAgIEB0YXJnZXQgKHRhcmdldDogdGFyZ2V0KQorICAgICBAcGFyZW50LW9mLXRhcmdl
dCAodGFyZ2V0OiB0YXJnZXQpCisKKyAgc2VsZWN0CisgICAgIEB0YXJnZXQgKHRhcmdldDogdGFy
Z2V0KQorICAgICBAcGFyZW50LW9mLXRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisKKyAgY2hhbmdl
CisgICAgIEB0YXJnZXQgKHRhcmdldDogdGFyZ2V0KQorICAgICBAcGFyZW50LW9mLXRhcmdldCAo
dGFyZ2V0OiB0YXJnZXQpCisKKyAgcmVzZXQKKyAgICAgQHRhcmdldCAodGFyZ2V0OiB0YXJnZXQp
CisgICAgIEBwYXJlbnQtb2YtdGFyZ2V0ICh0YXJnZXQ6IHRhcmdldCkKKworICByZXNpemUKKyAg
ICAgQHRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisgICAgIEBwYXJlbnQtb2YtdGFyZ2V0ICh0YXJn
ZXQ6IHRhcmdldCkKKworICBzY3JvbGwKKyAgICAgQHRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisg
ICAgIEBwYXJlbnQtb2YtdGFyZ2V0ICh0YXJnZXQ6IHRhcmdldCkKKworICBzZWxlY3RzdGFydAor
ICAgICBAdGFyZ2V0ICh0YXJnZXQ6IHRhcmdldCkKKyAgICAgQHBhcmVudC1vZi10YXJnZXQgKHRh
cmdldDogdGFyZ2V0KQorCisgIGNsaWNrCisgICAgIEB0YXJnZXQgKHRhcmdldDogdGFyZ2V0KQor
ICAgICBAcGFyZW50LW9mLXRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisgICAgIEBob3N0ICh0YXJn
ZXQ6IGhvc3QpCisgICAgIEB0b3AgKHRhcmdldDogaG9zdCkKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9zaGFkb3cvZXZlbnRzLXN0b3BwZWQtYXQtc2hhZG93LWJvdW5kYXJ5Lmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvZXZlbnRzLXN0b3BwZWQtYXQtc2hhZG93LWJvdW5k
YXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYWUzNWI2YzE5YmYxMDNiOGQ0ZjBmMDJiZmRkNDgzZjcxMDVk
MDJjMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9ldmVu
dHMtc3RvcHBlZC1hdC1zaGFkb3ctYm91bmRhcnkuaHRtbApAQCAtMCwwICsxLDkyIEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvc2hh
ZG93LWRvbS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgorPGRpdiBpZD0ic2FuZGJveCI+PC9kaXY+Cis8cHJlIGlkPSJjb25zb2xlIj48L3By
ZT4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVzdHMgdG8gZW5zdXJlIHRoYXQgc29tZSBraW5k
cyBvZiBldmVudHMgYXJlIHN0b3BlZWQgYXQgc2hhZG93IGJvdW5kYXJ5LiIpOworCit2YXIgZXZl
bnRSZWNvcmRzID0ge307CisKK2Z1bmN0aW9uIGRpc3BhdGNoZWRFdmVudChldmVudFR5cGUpCit7
CisgICAgdmFyIGV2ZW50cyA9IGV2ZW50UmVjb3Jkc1tldmVudFR5cGVdOworICAgIGlmICghZXZl
bnRzKQorICAgICAgICByZXR1cm4gW107CisgICAgcmV0dXJuIGV2ZW50czsKK30KKworZnVuY3Rp
b24gZGVidWdEaXNwYXRjaGVkRXZlbnQoZXZlbnRUeXBlKQoreworICAgIGRlYnVnKCdcbiAgJyAr
IGV2ZW50VHlwZSk7CisgICAgdmFyIGV2ZW50cyA9IGRpc3BhdGNoZWRFdmVudChldmVudFR5cGUp
OworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXZlbnRzLmxlbmd0aDsgKytpKQorICAgICAgICBk
ZWJ1ZygnICAgICcgKyBldmVudHNbaV0pCit9CisKK2Z1bmN0aW9uIHJlY29yZEV2ZW50KGV2ZW50
KQoreworICAgIHZhciBldmVudFR5cGUgPSBldmVudC50eXBlCisgICAgaWYgKCFldmVudFJlY29y
ZHNbZXZlbnRUeXBlXSkgeworICAgICAgICBldmVudFJlY29yZHNbZXZlbnRUeXBlXSA9IFtdCisg
ICAgfQorICAgIHZhciBldmVudFN0cmluZyA9ICcnOworICAgIGlmIChldmVudC5jdXJyZW50VGFy
Z2V0KQorICAgICAgICBldmVudFN0cmluZyArPSAnIEAnICsgZXZlbnQuY3VycmVudFRhcmdldC5p
ZDsKKyAgICBpZiAoZXZlbnQudGFyZ2V0KQorICAgICAgICBldmVudFN0cmluZyArPSAnICh0YXJn
ZXQ6ICcgKyBldmVudC50YXJnZXQuaWQgKyAnKSc7CisgICAgaWYgKGV2ZW50LnJlbGF0ZWRUYXJn
ZXQpCisgICAgICAgIGV2ZW50U3RyaW5nICs9ICcgKHJlbGF0ZWQ6ICcgKyBldmVudC5yZWxhdGVk
VGFyZ2V0LmlkICsgJyknOworICAgIGlmIChldmVudC5ldmVudFBoYXNlID09IDEpCisgICAgICAg
IGV2ZW50U3RyaW5nICs9ICcoY2FwdHVyaW5nIHBoYXNlKSc7CisgICAgaWYgKGV2ZW50LnRhcmdl
dCAmJiBldmVudC5jdXJyZW50VGFyZ2V0ICYmIGV2ZW50LnRhcmdldC5pZCA9PSBldmVudC5jdXJy
ZW50VGFyZ2V0LmlkKQorICAgICAgICBzaG91bGRCZSgiZXZlbnQuZXZlbnRQaGFzZSIsICIyIiwg
dHJ1ZSk7CisgICAgZXZlbnRSZWNvcmRzW2V2ZW50VHlwZV0ucHVzaChldmVudFN0cmluZyk7Cit9
CisKK2RlYnVnKCdPdGhlciBldmVudHMgdGhhbiAiY2xpY2siIHNob3VsZCBiZSBzdG9wcGVkIGF0
IHNoYWRvdyBib3VuZGFyeS4gIEEgImNsaWNrIiBpcyBhZGRlZCBmb3IgdGhlIHB1cnBvc2Ugb2Yg
Y29tcGFyaW5nIHJlc3VsdHMuJyk7IAorCit2YXIgZXZlbnRzID0gWydhYm9ydCcsICdzZWxlY3Qn
LCAnY2hhbmdlJywgJ3Jlc2V0JywgJ3Jlc2l6ZScsICdzY3JvbGwnLCAnc2VsZWN0c3RhcnQnLCAn
Y2xpY2snXTsKKworZnVuY3Rpb24gYWRkRXZlbnRMaXN0ZW5lcnMobm9kZXMpCit7CisgICAgZm9y
ICh2YXIgaSA9IDA7IGkgPCBub2Rlcy5sZW5ndGg7ICsraSkgeworICAgICAgICB2YXIgbm9kZSA9
IGdldE5vZGVJblNoYWRvd1RyZWVTdGFjayhub2Rlc1tpXSk7CisgICAgICAgIGZvciAodmFyIGog
PSAwOyBqIDwgZXZlbnRzLmxlbmd0aDsgKytqKQorICAgICAgICAgICAgbm9kZS5hZGRFdmVudExp
c3RlbmVyKGV2ZW50c1tqXSwgcmVjb3JkRXZlbnQsIGZhbHNlKTsKKyAgICB9Cit9CisKK2Z1bmN0
aW9uIHRlc3QoKQoreworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICB2YXIgc2FuZGJveCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdzYW5kYm94Jyk7CisgICAgc2FuZGJveC5hcHBlbmRDaGlsZCgKKyAgICAgICAgY3Jl
YXRlRE9NKCdkaXYnLCB7J2lkJzogJ3RvcCd9LAorICAgICAgICAgICAgICAgICAgY3JlYXRlRE9N
KCdkaXYnLCB7J2lkJzogJ2hvc3QnfSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcmVh
dGVTaGFkb3dSb290KAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGVET00o
J2RpdicsIHsnaWQnOiAncGFyZW50LW9mLXRhcmdldCd9LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY3JlYXRlRE9NKCdkaXYnLCB7J2lkJzogJ3RhcmdldCd9KSkp
KSkpOworCisgICAgYWRkRXZlbnRMaXN0ZW5lcnMoWyd0b3AnLCAnaG9zdCcsICdob3N0L3BhcmVu
dC1vZi10YXJnZXQnLCAnaG9zdC90YXJnZXQnXSk7CisKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGV2ZW50cy5sZW5ndGg7ICsraSkgeworICAgICAgICB2YXIgZXZlbnQgPSBkb2N1bWVudC5jcmVh
dGVFdmVudCgnVUlFdmVudCcpOworICAgICAgICBldmVudC5pbml0RXZlbnQoZXZlbnRzW2ldLCB0
cnVlLCBmYWxzZSk7CisgICAgICAgIGdldE5vZGVJblNoYWRvd1RyZWVTdGFjaygnaG9zdC90YXJn
ZXQnKS5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKKyAgICAgICAgZGVidWdEaXNwYXRjaGVkRXZlbnQo
ZXZlbnRzW2ldKTsKKyAgICB9Cit9CisKK3Rlc3QoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>152675</attachid>
            <date>2012-07-16 18:35:57 -0700</date>
            <delta_ts>2012-07-16 20:24:46 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-90436-20120717103556.patch</filename>
            <type>text/plain</type>
            <size>7436</size>
            <attacher name="Hayato Ito">hayato</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIyNzkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGNiODhiMzg3ODVlYTA0
NDVhZDA2OTBhYzA2ZDdhN2Q5NzE3YjhiMy4uMzlkMzAyOTUxN2FiYjBmMmZkNTMwN2JlMTBlY2Ez
ODdhOWVkMWYxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTA3LTE2ICBIYXlh
dG8gSXRvICA8aGF5YXRvQGNocm9taXVtLm9yZz4KKworICAgICAgICBTb21lIGV2ZW50cyBzaG91
bGQgYmUgYWx3YXlzIHN0b3BwZWQgYXQgc2hhZG93IGJvdW5kYXJ5LgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTA0MzYKKworICAgICAgICBSZXZpZXdl
ZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgVGhlIHNwZWMgaXMgaGVyZToKKyAgICAgICAg
aHR0cHM6Ly9kdmNzLnczLm9yZy9oZy93ZWJjb21wb25lbnRzL3Jhdy1maWxlL3RpcC9zcGVjL3No
YWRvdy9pbmRleC5odG1sI2V2ZW50cy10aGF0LWFyZS1hbHdheXMtc3RvcHBlZAorCisgICAgICAg
IFRlc3Q6IGZhc3QvZG9tL3NoYWRvdy9ldmVudHMtc3RvcHBlZC1hdC1zaGFkb3ctYm91bmRhcnku
aHRtbAorCisgICAgICAgICogZG9tL0V2ZW50RGlzcGF0Y2hlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudERpc3BhdGNoZXI6OmRldGVybWluZURpc3BhdGNoQmVoYXZpb3IpOgorCiAyMDEy
LTA3LTE2ICBLb2ppIElzaGlpICA8a29qaWlzaGlAZ21haWwuY29tPgogCiAgICAgICAgIFZlcnRp
Y2FsIGFsdGVybmF0ZSBnbHlwaCAoR1NVQikgc3VwcG9ydCBmb3IgT3BlblR5cGVWZXJ0aWNhbERh
dGEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudERpc3BhdGNoZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlzcGF0Y2hlci5jcHAKaW5kZXggNjA3ZmRhOWY1YjVi
MzZjMmM0ZjFkMDAyM2M5ZWMyMjRkMDA4NDkwYy4uNjI1NDFkOGI1ODZlMThlMDQ1ZmZhMmZjNmJk
M2ViOGEwMzRhYmYyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlzcGF0
Y2hlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RGlzcGF0Y2hlci5jcHAKQEAg
LTM2NSw3ICszNjUsMTQgQEAgRXZlbnREaXNwYXRjaEJlaGF2aW9yIEV2ZW50RGlzcGF0Y2hlcjo6
ZGV0ZXJtaW5lRGlzcGF0Y2hCZWhhdmlvcihFdmVudCogZXZlbnQsIFMKICAgICAvLyBXZWJLaXQg
bmV2ZXIgYWxsb3dlZCBzZWxlY3RzdGFydCBldmVudCB0byBjcm9zcyB0aGUgdGhlIHNoYWRvdyBE
T00gYm91bmRhcnkuCiAgICAgLy8gQ2hhbmdpbmcgdGhpcyBicmVha3MgZXhpc3Rpbmcgc2l0ZXMu
CiAgICAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjE5
NSBmb3IgZGV0YWlscy4KLSAgICBpZiAoZXZlbnQtPnR5cGUoKSA9PSBldmVudE5hbWVzKCkuc2Vs
ZWN0c3RhcnRFdmVudCkKKyAgICBjb25zdCBBdG9taWNTdHJpbmcgZXZlbnRUeXBlID0gZXZlbnQt
PnR5cGUoKTsKKyAgICBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5hYm9ydEV2ZW50Cisg
ICAgICAgICAgICB8fCBldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLmNoYW5nZUV2ZW50CisgICAg
ICAgICAgICB8fCBldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLnJlc2V0RXZlbnQKKyAgICAgICAg
ICAgIHx8IGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkucmVzaXplRXZlbnQKKyAgICAgICAgICAg
IHx8IGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuc2Nyb2xsRXZlbnQKKyAgICAgICAgICAgIHx8
IGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuc2VsZWN0RXZlbnQKKyAgICAgICAgICAgIHx8IGV2
ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuc2VsZWN0c3RhcnRFdmVudCkKICAgICAgICAgcmV0dXJu
IFN0YXlJbnNpZGVTaGFkb3dET007CiAKICAgICByZXR1cm4gUmV0YXJnZXRFdmVudDsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCBmYTYyNjAxMTM5MDViMmI1ZDhjYzk1Yzc2YTlmNjJlMTMwMzg4NDVhLi41ZTJlMmU5NDdlNTM3
ZTJjNjY3MTE0OTg3OTA5MWY2MDJiMDlkZDNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTIt
MDctMTYgIEhheWF0byBJdG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFNvbWUg
ZXZlbnRzIHNob3VsZCBiZSBhbHdheXMgc3RvcHBlZCBhdCBzaGFkb3cgYm91bmRhcnkuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MDQzNgorCisgICAg
ICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIGZhc3QvZG9tL3NoYWRv
dy9ldmVudHMtc3RvcHBlZC1hdC1zaGFkb3ctYm91bmRhcnktZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2RvbS9zaGFkb3cvZXZlbnRzLXN0b3BwZWQtYXQtc2hhZG93LWJvdW5k
YXJ5Lmh0bWw6IEFkZGVkLgorCiAyMDEyLTA3LTE2ICBKb3NodWEgQmVsbCAgPGpzYmVsbEBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgSW5kZXhlZERCOiBJbXBsZW1lbnQgc3BlYyB1cGRhdGVzIHRv
IElEQlRyYW5zYWN0aW9uLmVycm9yCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9z
aGFkb3cvZXZlbnRzLXN0b3BwZWQtYXQtc2hhZG93LWJvdW5kYXJ5LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9ldmVudHMtc3RvcHBlZC1hdC1zaGFkb3ctYm91bmRh
cnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM4NTc0MzczYTYwYzY5YmZkOTg2M2EwOGYwODJj
MDZiOWZmOTVhOTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFk
b3cvZXZlbnRzLXN0b3BwZWQtYXQtc2hhZG93LWJvdW5kYXJ5LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDQ0IEBACitUZXN0cyB0byBlbnN1cmUgdGhhdCBzb21lIGtpbmRzIG9mIGV2ZW50cyBhcmUg
c3RvcGVlZCBhdCBzaGFkb3cgYm91bmRhcnkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitPdGhlciBldmVudHMgdGhhbiAiY2xpY2siIHNob3VsZCBiZSBzdG9wcGVkIGF0IHNoYWRv
dyBib3VuZGFyeS4gIEEgImNsaWNrIiBpcyBhZGRlZCBmb3IgdGhlIHB1cnBvc2Ugb2YgY29tcGFy
aW5nIHJlc3VsdHMuCisKKyAgYWJvcnQKKyAgICAgQHRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisg
ICAgIEBwYXJlbnQtb2YtdGFyZ2V0ICh0YXJnZXQ6IHRhcmdldCkKKworICBzZWxlY3QKKyAgICAg
QHRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisgICAgIEBwYXJlbnQtb2YtdGFyZ2V0ICh0YXJnZXQ6
IHRhcmdldCkKKworICBjaGFuZ2UKKyAgICAgQHRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisgICAg
IEBwYXJlbnQtb2YtdGFyZ2V0ICh0YXJnZXQ6IHRhcmdldCkKKworICByZXNldAorICAgICBAdGFy
Z2V0ICh0YXJnZXQ6IHRhcmdldCkKKyAgICAgQHBhcmVudC1vZi10YXJnZXQgKHRhcmdldDogdGFy
Z2V0KQorCisgIHJlc2l6ZQorICAgICBAdGFyZ2V0ICh0YXJnZXQ6IHRhcmdldCkKKyAgICAgQHBh
cmVudC1vZi10YXJnZXQgKHRhcmdldDogdGFyZ2V0KQorCisgIHNjcm9sbAorICAgICBAdGFyZ2V0
ICh0YXJnZXQ6IHRhcmdldCkKKyAgICAgQHBhcmVudC1vZi10YXJnZXQgKHRhcmdldDogdGFyZ2V0
KQorCisgIHNlbGVjdHN0YXJ0CisgICAgIEB0YXJnZXQgKHRhcmdldDogdGFyZ2V0KQorICAgICBA
cGFyZW50LW9mLXRhcmdldCAodGFyZ2V0OiB0YXJnZXQpCisKKyAgY2xpY2sKKyAgICAgQHRhcmdl
dCAodGFyZ2V0OiB0YXJnZXQpCisgICAgIEBwYXJlbnQtb2YtdGFyZ2V0ICh0YXJnZXQ6IHRhcmdl
dCkKKyAgICAgQGhvc3QgKHRhcmdldDogaG9zdCkKKyAgICAgQHRvcCAodGFyZ2V0OiBob3N0KQor
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9ldmVudHMtc3RvcHBlZC1hdC1zaGFk
b3ctYm91bmRhcnkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9ldmVudHMtc3Rv
cHBlZC1hdC1zaGFkb3ctYm91bmRhcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZjlhZDYzZjI2MmI0NWVh
MWU2ZTc1NjA4MjBhZWM4ZGM2MThiZTA0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vc2hhZG93L2V2ZW50cy1zdG9wcGVkLWF0LXNoYWRvdy1ib3VuZGFyeS5odG1sCkBA
IC0wLDAgKzEsOTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9InJlc291cmNlcy9zaGFkb3ctZG9tLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJzYW5kYm94Ij48L2Rpdj4KKzxw
cmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJUZXN0cyB0byBl
bnN1cmUgdGhhdCBzb21lIGtpbmRzIG9mIGV2ZW50cyBhcmUgc3RvcGVlZCBhdCBzaGFkb3cgYm91
bmRhcnkuIik7CisKK3ZhciBldmVudFJlY29yZHMgPSB7fTsKKworZnVuY3Rpb24gZGlzcGF0Y2hl
ZEV2ZW50KGV2ZW50VHlwZSkKK3sKKyAgICB2YXIgZXZlbnRzID0gZXZlbnRSZWNvcmRzW2V2ZW50
VHlwZV07CisgICAgaWYgKCFldmVudHMpCisgICAgICAgIHJldHVybiBbXTsKKyAgICByZXR1cm4g
ZXZlbnRzOworfQorCitmdW5jdGlvbiBkdW1wRGlzcGF0Y2hlZEV2ZW50KGV2ZW50VHlwZSkKK3sK
KyAgICBkZWJ1ZygnXG4gICcgKyBldmVudFR5cGUpOworICAgIHZhciBldmVudHMgPSBkaXNwYXRj
aGVkRXZlbnQoZXZlbnRUeXBlKTsKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGV2ZW50cy5sZW5n
dGg7ICsraSkKKyAgICAgICAgZGVidWcoJyAgICAnICsgZXZlbnRzW2ldKQorfQorCitmdW5jdGlv
biByZWNvcmRFdmVudChldmVudCkKK3sKKyAgICB2YXIgZXZlbnRUeXBlID0gZXZlbnQudHlwZQor
ICAgIGlmICghZXZlbnRSZWNvcmRzW2V2ZW50VHlwZV0pIHsKKyAgICAgICAgZXZlbnRSZWNvcmRz
W2V2ZW50VHlwZV0gPSBbXQorICAgIH0KKyAgICB2YXIgZXZlbnRTdHJpbmcgPSAnJzsKKyAgICBp
ZiAoZXZlbnQuY3VycmVudFRhcmdldCkKKyAgICAgICAgZXZlbnRTdHJpbmcgKz0gJyBAJyArIGV2
ZW50LmN1cnJlbnRUYXJnZXQuaWQ7CisgICAgaWYgKGV2ZW50LnRhcmdldCkKKyAgICAgICAgZXZl
bnRTdHJpbmcgKz0gJyAodGFyZ2V0OiAnICsgZXZlbnQudGFyZ2V0LmlkICsgJyknOworICAgIGlm
IChldmVudC5yZWxhdGVkVGFyZ2V0KQorICAgICAgICBldmVudFN0cmluZyArPSAnIChyZWxhdGVk
OiAnICsgZXZlbnQucmVsYXRlZFRhcmdldC5pZCArICcpJzsKKyAgICBpZiAoZXZlbnQuZXZlbnRQ
aGFzZSA9PSAxKQorICAgICAgICBldmVudFN0cmluZyArPSAnKGNhcHR1cmluZyBwaGFzZSknOwor
ICAgIGlmIChldmVudC50YXJnZXQgJiYgZXZlbnQuY3VycmVudFRhcmdldCAmJiBldmVudC50YXJn
ZXQuaWQgPT0gZXZlbnQuY3VycmVudFRhcmdldC5pZCkKKyAgICAgICAgc2hvdWxkQmUoImV2ZW50
LmV2ZW50UGhhc2UiLCAiMiIsIHRydWUpOworICAgIGV2ZW50UmVjb3Jkc1tldmVudFR5cGVdLnB1
c2goZXZlbnRTdHJpbmcpOworfQorCitkZWJ1ZygnT3RoZXIgZXZlbnRzIHRoYW4gImNsaWNrIiBz
aG91bGQgYmUgc3RvcHBlZCBhdCBzaGFkb3cgYm91bmRhcnkuICBBICJjbGljayIgaXMgYWRkZWQg
Zm9yIHRoZSBwdXJwb3NlIG9mIGNvbXBhcmluZyByZXN1bHRzLicpOyAKKwordmFyIGV2ZW50cyA9
IFsnYWJvcnQnLCAnc2VsZWN0JywgJ2NoYW5nZScsICdyZXNldCcsICdyZXNpemUnLCAnc2Nyb2xs
JywgJ3NlbGVjdHN0YXJ0JywgJ2NsaWNrJ107CisKK2Z1bmN0aW9uIGFkZEV2ZW50TGlzdGVuZXJz
KG5vZGVzKQoreworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbm9kZXMubGVuZ3RoOyArK2kpIHsK
KyAgICAgICAgdmFyIG5vZGUgPSBnZXROb2RlSW5TaGFkb3dUcmVlU3RhY2sobm9kZXNbaV0pOwor
ICAgICAgICBmb3IgKHZhciBqID0gMDsgaiA8IGV2ZW50cy5sZW5ndGg7ICsraikKKyAgICAgICAg
ICAgIG5vZGUuYWRkRXZlbnRMaXN0ZW5lcihldmVudHNbal0sIHJlY29yZEV2ZW50LCBmYWxzZSk7
CisgICAgfQorfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgdmFyIHNhbmRib3gg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2FuZGJveCcpOworICAgIHNhbmRib3guYXBwZW5k
Q2hpbGQoCisgICAgICAgIGNyZWF0ZURPTSgnZGl2JywgeydpZCc6ICd0b3AnfSwKKyAgICAgICAg
ICAgICAgICAgIGNyZWF0ZURPTSgnZGl2JywgeydpZCc6ICdob3N0J30sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY3JlYXRlU2hhZG93Um9vdCgKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY3JlYXRlRE9NKCdkaXYnLCB7J2lkJzogJ3BhcmVudC1vZi10YXJnZXQnfSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZURPTSgnZGl2Jywg
eydpZCc6ICd0YXJnZXQnfSkpKSkpKTsKKworICAgIGFkZEV2ZW50TGlzdGVuZXJzKFsndG9wJywg
J2hvc3QnLCAnaG9zdC9wYXJlbnQtb2YtdGFyZ2V0JywgJ2hvc3QvdGFyZ2V0J10pOworCisgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCBldmVudHMubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgdmFyIGV2
ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ1VJRXZlbnQnKTsKKyAgICAgICAgZXZlbnQuaW5p
dEV2ZW50KGV2ZW50c1tpXSwgdHJ1ZSwgZmFsc2UpOworICAgICAgICBnZXROb2RlSW5TaGFkb3dU
cmVlU3RhY2soJ2hvc3QvdGFyZ2V0JykuZGlzcGF0Y2hFdmVudChldmVudCk7CisgICAgICAgIGR1
bXBEaXNwYXRjaGVkRXZlbnQoZXZlbnRzW2ldKTsKKyAgICB9Cit9CisKK3Rlc3QoKTsKKzwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>