<?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>146455</bug_id>
          
          <creation_ts>2015-06-30 04:32:52 -0700</creation_ts>
          <short_desc>[Streams API] Remove ReadableStreamController.enqueue() custom binding</short_desc>
          <delta_ts>2015-07-02 12:28:28 -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>WebCore Misc.</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>calvaris</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1105671</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-06-30 04:32:52 -0700</bug_when>
    <thetext>We should remove as much ReadableStream custom binding as possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1105691</commentid>
    <comment_count>1</comment_count>
      <attachid>255824</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-06-30 09:30:22 -0700</bug_when>
    <thetext>Created attachment 255824
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1105695</commentid>
    <comment_count>2</comment_count>
      <attachid>255824</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-06-30 09:34:48 -0700</bug_when>
    <thetext>Comment on attachment 255824
Patch

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

&gt; Source/WebCore/bindings/js/ReadableJSStream.cpp:392
&gt; +        throwVMError(&amp;state, error());

I thought initially about doing &quot;ec = RangeError&quot; here.
But the same exception must be thrown and stored in the stream.
I still see some value in introducing &quot;RangeError&quot; for other binding code.

&gt; Source/WebCore/bindings/js/ReadableJSStream.h:66
&gt;      void error(JSC::ExecState&amp;, ExceptionCode&amp;);

I wonder whether we should rename controller methods (enqueue, error and close), in particular error() which may be misleading with m_error getter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106383</commentid>
    <comment_count>3</comment_count>
      <attachid>256008</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-07-02 07:06:58 -0700</bug_when>
    <thetext>Created attachment 256008
Using Default in IDL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106398</commentid>
    <comment_count>4</comment_count>
      <attachid>256008</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-07-02 09:40:44 -0700</bug_when>
    <thetext>Comment on attachment 256008
Using Default in IDL

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

&gt; Source/WebCore/bindings/js/ReadableJSStream.cpp:344
&gt; +        throwVMError(&amp;state, error());

This is messy. Having the same function sometimes set exceptions directly on ExecState and other times indicate the exception with an ExceptionCode is a bad idea.

&gt; Source/WebCore/dom/ExceptionCode.h:68
&gt; +        RangeError = 106,

If you add this new type, I think you need to add handling for it in a few places.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106400</commentid>
    <comment_count>5</comment_count>
      <attachid>256008</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-07-02 10:04:21 -0700</bug_when>
    <thetext>Comment on attachment 256008
Using Default in IDL

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

&gt;&gt; Source/WebCore/bindings/js/ReadableJSStream.cpp:344
&gt;&gt; +        throwVMError(&amp;state, error());
&gt; 
&gt; This is messy. Having the same function sometimes set exceptions directly on ExecState and other times indicate the exception with an ExceptionCode is a bad idea.

OK

&gt;&gt; Source/WebCore/dom/ExceptionCode.h:68
&gt;&gt; +        RangeError = 106,
&gt; 
&gt; If you add this new type, I think you need to add handling for it in a few places.

I plan to reuse it in ReadableJSStream::create().
I will also add it in some binding places where the range message is not very meaningful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106424</commentid>
    <comment_count>6</comment_count>
      <attachid>256021</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-07-02 11:30:16 -0700</bug_when>
    <thetext>Created attachment 256021
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106437</commentid>
    <comment_count>7</comment_count>
      <attachid>256021</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-02 12:28:24 -0700</bug_when>
    <thetext>Comment on attachment 256021
Patch for landing

Clearing flags on attachment: 256021

Committed r186231: &lt;http://trac.webkit.org/changeset/186231&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106438</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-02 12:28:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>255824</attachid>
            <date>2015-06-30 09:30:22 -0700</date>
            <delta_ts>2015-07-02 07:06:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146455-20150630182929.patch</filename>
            <type>text/plain</type>
            <size>8239</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2MTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmY2YjEwYTU1ZTBlYWE4
ODQ4YjQ0NDdlM2NmYTIzM2U4MTY4MzA3YS4uMzhlODJlMmMyZDk4YWJjODNlMjJlNTY1YTVhYmYx
ZmNlMDg3NjRlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE1LTA2LTMwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVh
bXMgQVBJXSBSZW1vdmUgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmVucXVldWUoKSBjdXN0b20g
YmluZGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ2NDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Tm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogTW9kdWxlcy9zdHJlYW1zL1JlYWRh
YmxlU3RyZWFtQ29udHJvbGxlci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVTdHJlYW1D
b250cm9sbGVyOjplbnF1ZXVlKTogQ2FsbGluZyBSZWFkYWJsZUpTU3RyZWFtIGVucXVldWUgbWV0
aG9kLgorICAgICAgICAqIE1vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIu
aWRsOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpjcmVhdGVET01FeGNlcHRpb24pOiBBZGRpbmcgc3VwcG9ydCBmb3IgUmFuZ2VFcnJv
ciBleGNlcHRpb25zLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Db250
cm9sbGVyQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN0cnVjdEpTUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9SZWFkYWJs
ZUpTU3RyZWFtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWRhYmxlSlNTdHJlYW06OmVucXVl
dWUpOiBBZGRlZCBleGNlcHRpb24gdGhyb3dpbmcgdGhyb3VnaCBFeGNlcHRpb25Db2RlLgorICAg
ICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6cmV0cmlldmVDaHVua1NpemUpOiBEaXR0
by4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9SZWFkYWJsZUpTU3RyZWFtLmg6CisgICAgICAgICog
ZG9tL0V4Y2VwdGlvbkNvZGUuaDogQWRkaW5nIFJhbmdlRXJyb3IuCisKIDIwMTUtMDYtMzAgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4gYW5kIFhhYmllciBSb2Ry
aWd1ZXogQ2FsdmFyICA8Y2FsdmFyaXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU3RyZWFtcyBB
UEldIEZpbmlzaCBwdWxsaW5nIG11c3QgYWx3YXlzIGJlIGRvbmUgYXN5bmNocm9ub3VzbHkgYXMg
aXQgaXMgdGhlIGV4cGVjdGVkIHByb21pc2UgYmVoYXZpb3IgKGFjY29yZGluZyB0byB0aGUgc3Bl
YykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0
cmVhbUNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJs
ZVN0cmVhbUNvbnRyb2xsZXIuaAppbmRleCA2ZjIxZjI5Y2I2ZWZhYTA3Y2E0MTU1ZWM4ZTQzMjRh
OGJjMWY5ZjBhLi42ZTE1OTdlYTdiNGM1MDJjZGNiYTRhZmE5ZWY5NGZmMzM5YzUwZDhmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1Db250
cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3Ry
ZWFtQ29udHJvbGxlci5oCkBAIC01MSw2ICs1MSw5IEBAIHB1YmxpYzoKICAgICB2b2lkIGVycm9y
KEpTQzo6RXhlY1N0YXRlKiBzdGF0ZSwgRXhjZXB0aW9uQ29kZSYgZWMpIHsgbV9zdHJlYW0uZXJy
b3IoKnN0YXRlLCBlYyk7IH0KICAgICB2b2lkIGVycm9yKEpTQzo6RXhlY1N0YXRlKiBzdGF0ZSwg
SlNDOjpKU1ZhbHVlLCBFeGNlcHRpb25Db2RlJiBlYykgeyBtX3N0cmVhbS5lcnJvcigqc3RhdGUs
IGVjKTsgfQogCisgICAgdm9pZCBlbnF1ZXVlKEpTQzo6RXhlY1N0YXRlKiBzdGF0ZSwgRXhjZXB0
aW9uQ29kZSYgZWMpIHsgbV9zdHJlYW0uZW5xdWV1ZSgqc3RhdGUsIGVjKTsgfQorICAgIHZvaWQg
ZW5xdWV1ZShKU0M6OkV4ZWNTdGF0ZSogc3RhdGUsIEpTQzo6SlNWYWx1ZSwgRXhjZXB0aW9uQ29k
ZSYgZWMpIHsgbV9zdHJlYW0uZW5xdWV1ZSgqc3RhdGUsIGVjKTsgfQorCiAgICAgdm9pZCByZWYo
KSB7IG1fc3RyZWFtLnJlZigpOyB9CiAgICAgdm9pZCBkZXJlZigpIHsgbV9zdHJlYW0uZGVyZWYo
KTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFi
bGVTdHJlYW1Db250cm9sbGVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuaWRsCmluZGV4IDU3ZjU2NjYzMTZkYmNiMWQ0OGU1YzA0
NDBmMDVkZTRhYzg4OGI0MzAuLmNhZjYxYTI5NzkwZDJiZjg5MTE5ODhlYWZlMTcxYWIxMThiMjM2
MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0
cmVhbUNvbnRyb2xsZXIuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFtcy9S
ZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuaWRsCkBAIC0zMyw3ICszMyw3IEBACiAgICAgSW1wbGVt
ZW50YXRpb25MYWNrc1ZUYWJsZSwKICAgICBOb0ludGVyZmFjZU9iamVjdAogXSBpbnRlcmZhY2Ug
UmVhZGFibGVTdHJlYW1Db250cm9sbGVyIHsKLSAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25d
IGJvb2xlYW4gZW5xdWV1ZShhbnkgY2h1bmspOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwg
UmFpc2VzRXhjZXB0aW9uXSB2b2lkIGVucXVldWUob3B0aW9uYWwgYW55IGNodW5rKTsKICAgICBb
UmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNsb3NlKCk7CiAgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRl
LCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgZXJyb3Iob3B0aW9uYWwgYW55IGVycm9yKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKaW5kZXggMWI2NDU0ZDRj
OWM0YWEyMTU0OThkMDY1MmI4MTE1NWE3Mjk5YjFmMi4uNWE0MWI0NjdlMjI1MGRkOTljMTcxYmM2
MDU0MWYyYzFjNDc3MmQ5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJp
bmRpbmcuY3BwCkBAIC0yMjQsNiArMjI0LDkgQEAgSlNWYWx1ZSBjcmVhdGVET01FeGNlcHRpb24o
RXhlY1N0YXRlKiBleGVjLCBFeGNlcHRpb25Db2RlIGVjKQogICAgIC8vIEZJWE1FOiBIYW5kbGUg
b3RoZXIgV2ViSURMIGV4Y2VwdGlvbiB0eXBlcy4KICAgICBpZiAoZWMgPT0gVHlwZUVycm9yKQog
ICAgICAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGV4ZWMpOworICAgIGlmIChlYyA9PSBSYW5n
ZUVycm9yKQorICAgICAgICByZXR1cm4gY3JlYXRlUmFuZ2VFcnJvcihleGVjLCBBU0NJSUxpdGVy
YWwoIkJhZCB2YWx1ZSIpKTsKKwogCiAgICAgLy8gRklYTUU6IEFsbCBjYWxsZXJzIHRvIHNldERP
TUV4Y2VwdGlvbiBuZWVkIHRvIHBhc3MgaW4gdGhlIHJpZ2h0IGdsb2JhbCBvYmplY3QKICAgICAv
LyBmb3Igbm93LCB3ZSdyZSBnb2luZyB0byBhc3N1bWUgdGhlIGxleGljYWxHbG9iYWxPYmplY3Qu
ICBXaGljaCBpcyB3cm9uZyBpbiBjYXNlcyBsaWtlIHRoaXM6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlckN1c3RvbS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlckN1
c3RvbS5jcHAKaW5kZXggMTRjYzE2NjZiZGYxY2RkY2ZiZTI4YjQyNTI2ZjIwMmIxZGYyZTlmMS4u
MzgxN2UzM2M3Y2ZiZmJkOGY3MDIyMzc1NThkNzMwZjgwMzJiODBhZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJDdXN0b20u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Db250
cm9sbGVyQ3VzdG9tLmNwcApAQCAtNDAsMTcgKzQwLDYgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1KU1ZhbHVlIEpTUmVhZGFibGVTdHJlYW1Db250cm9s
bGVyOjplbnF1ZXVlKEV4ZWNTdGF0ZSogZXhlYykKLXsKLSAgICBSZWFkYWJsZUpTU3RyZWFtJiBz
dHJlYW0gPSBpbXBsKCkuc3RyZWFtKCk7Ci0gICAgaWYgKHN0cmVhbS5pc0Vycm9yZWQoKSkKLSAg
ICAgICAgcmV0dXJuIGV4ZWMtPnZtKCkudGhyb3dFeGNlcHRpb24oZXhlYywgc3RyZWFtLmVycm9y
KCkpOwotICAgIGlmIChzdHJlYW0uaXNDbG9zZVJlcXVlc3RlZCgpKQotICAgICAgICByZXR1cm4g
ZXhlYy0+dm0oKS50aHJvd0V4Y2VwdGlvbihleGVjLCBjcmVhdGVUeXBlRXJyb3IoZXhlYywgQVND
SUlMaXRlcmFsKCJDYWxsaW5nIGVucXVldWUgb24gYSBzdHJlYW0gd2hpY2ggaXMgY2xvc2luZyIp
KSk7Ci0gICAgc3RyZWFtLmVucXVldWUoKmV4ZWMpOwotICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OwotfQotCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyKEV4ZWNTdGF0ZSogZXhlYykKIHsKICAgICByZXR1cm4gdGhyb3dWTUVy
cm9yKGV4ZWMsIGNyZWF0ZVR5cGVFcnJvcihleGVjLCBBU0NJSUxpdGVyYWwoIlJlYWRhYmxlU3Ry
ZWFtQ29udHJvbGxlciBjb25zdHJ1Y3RvciBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSIp
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZUpTU3Ry
ZWFtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uY3Bw
CmluZGV4IGE3ZDIxYjJlYmMxMDI0MDAxNTUwOTk5ZGZiZTlkOGRhMWUzZmUyN2EuLjE4NmU5ZDBm
MWRmY2ExZTdjOGM2ZGZkODkyODUzNGZhZTk1NDcxN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uY3BwCkBAIC0zMzgsMTAgKzMzOCwxNiBAQCBK
U1ZhbHVlIFJlYWRhYmxlSlNTdHJlYW06OnJlYWQoKQogICAgIHJldHVybiBjaHVuay52YWx1ZS5n
ZXQoKTsKIH0KIAotdm9pZCBSZWFkYWJsZUpTU3RyZWFtOjplbnF1ZXVlKEV4ZWNTdGF0ZSYgc3Rh
dGUpCit2b2lkIFJlYWRhYmxlSlNTdHJlYW06OmVucXVldWUoRXhlY1N0YXRlJiBzdGF0ZSwgRXhj
ZXB0aW9uQ29kZSYgZWMpCiB7Ci0gICAgQVNTRVJUKCFpc0Nsb3NlUmVxdWVzdGVkKCkpOwotCisg
ICAgaWYgKGlzRXJyb3JlZCgpKSB7CisgICAgICAgIHRocm93Vk1FcnJvcigmc3RhdGUsIGVycm9y
KCkpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChpc0Nsb3NlUmVxdWVzdGVkKCkp
IHsKKyAgICAgICAgZWMgPSBUeXBlRXJyb3I7CisgICAgICAgIHJldHVybjsKKyAgICB9CiAgICAg
aWYgKCFpc1JlYWRhYmxlKCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtMzUyLDEwICszNTgsOCBA
QCB2b2lkIFJlYWRhYmxlSlNTdHJlYW06OmVucXVldWUoRXhlY1N0YXRlJiBzdGF0ZSkKICAgICB9
CiAKICAgICBkb3VibGUgc2l6ZSA9IHJldHJpZXZlQ2h1bmtTaXplKHN0YXRlLCBjaHVuayk7Ci0g
ICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKSB7Ci0gICAgICAgIHN0b3JlRXJyb3Ioc3RhdGUs
IHN0YXRlLmV4Y2VwdGlvbigpLT52YWx1ZSgpKTsKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9u
KCkpCiAgICAgICAgIHJldHVybjsKLSAgICB9CiAKICAgICBtX2NodW5rUXVldWUuYXBwZW5kKHsg
SlNDOjpTdHJvbmc8SlNDOjpVbmtub3duPihzdGF0ZS52bSgpLCBjaHVuayksIHNpemUgfSk7CiAg
ICAgbV90b3RhbFF1ZXVlU2l6ZSArPSBzaXplOwpAQCAtMzcyLDE1ICszNzYsMjAgQEAgZG91Ymxl
IFJlYWRhYmxlSlNTdHJlYW06OnJldHJpZXZlQ2h1bmtTaXplKEV4ZWNTdGF0ZSYgc3RhdGUsIEpT
VmFsdWUgY2h1bmspCiAgICAgYXJndW1lbnRzLmFwcGVuZChjaHVuayk7CiAKICAgICBKU1ZhbHVl
IHNpemVWYWx1ZSA9IGNhbGxGdW5jdGlvbihzdGF0ZSwgbV9zaXplRnVuY3Rpb24uZ2V0KCksIGpz
VW5kZWZpbmVkKCksIGFyZ3VtZW50cyk7Ci0gICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQor
ICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkgeworICAgICAgICBzdG9yZUVycm9yKHN0YXRl
LCBzdGF0ZS5leGNlcHRpb24oKS0+dmFsdWUoKSk7CiAgICAgICAgIHJldHVybiAwOworICAgIH0K
IAogICAgIGRvdWJsZSBzaXplID0gc2l6ZVZhbHVlLnRvTnVtYmVyKCZzdGF0ZSk7Ci0gICAgaWYg
KHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkgewor
ICAgICAgICBzdG9yZUVycm9yKHN0YXRlLCBzdGF0ZS5leGNlcHRpb24oKS0+dmFsdWUoKSk7CiAg
ICAgICAgIHJldHVybiAwOworICAgIH0KIAogICAgIGlmICghc3RkOjppc2Zpbml0ZShzaXplKSB8
fCBzaXplIDwgMCkgewotICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBjcmVhdGVSYW5nZUVy
cm9yKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKCJJbmNvcnJlY3QgZG91YmxlIHZhbHVlIikpKTsKKyAg
ICAgICAgc3RvcmVFcnJvcihzdGF0ZSwgY3JlYXRlRE9NRXhjZXB0aW9uKCZzdGF0ZSwgUmFuZ2VF
cnJvcikpOworICAgICAgICB0aHJvd1ZNRXJyb3IoJnN0YXRlLCBlcnJvcigpKTsKICAgICAgICAg
cmV0dXJuIDA7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9SZWFkYWJsZUpTU3RyZWFtLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJs
ZUpTU3RyZWFtLmgKaW5kZXggMTVmZGUzMjYzZmRkMmUzMjU5YTFlNDhjOWMxYTk2MGEwZjM4ZWJm
Ni4uMDkxZmMwZmRmZWNiOWVkYTdkYzBjNDJhZjNhYzZmN2RiNGNkYzhkOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVKU1N0cmVhbS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uaApAQCAtNjIsNyArNjIsNyBA
QCBwdWJsaWM6CiAgICAgdm9pZCBzdG9yZUVycm9yKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU1Zh
bHVlKTsKICAgICBKU0M6OkpTVmFsdWUgZXJyb3IoKSBvdmVycmlkZSB7IHJldHVybiBtX2Vycm9y
LmdldCgpOyB9CiAKLSAgICB2b2lkIGVucXVldWUoSlNDOjpFeGVjU3RhdGUmKTsKKyAgICB2b2lk
IGVucXVldWUoSlNDOjpFeGVjU3RhdGUmLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBlcnJv
cihKU0M6OkV4ZWNTdGF0ZSYsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIGRvdWJsZSBkZXNpcmVk
U2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1faGlnaFdhdGVyTWFyayAtIG1fdG90YWxRdWV1ZVNpemU7
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZS5oCmluZGV4IDliYjQwNjQwMDQzMDU5NmUwY2Ix
YmNiMjQ0OWY2MzQ4OGQwMDFmZjguLjQzMjViODNlNzkwYjQ3ZTk4ZWE2NTU2NGNlMDU0NDUyMzcz
ZjE1MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuaApAQCAtNjUsNiArNjUsNyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIFdlYklETCBleGNlcHRpb24gdHlwZXMsIGhh
bmRsZWQgYnkgdGhlIGJpbmRpbmcgbGF5ZXIuCiAgICAgICAgIC8vIEZJWE1FOiBBZGQgR2VuZXJh
bEVycm9yLCBFdmFsRXJyb3IsIGV0Yy4gd2hlbiBpbXBsZW1lbnRlZCBpbiB0aGUgYmluZGluZ3Mu
CiAgICAgICAgIFR5cGVFcnJvciA9IDEwNSwKKyAgICAgICAgUmFuZ2VFcnJvciA9IDEwNiwKICAg
ICB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256008</attachid>
            <date>2015-07-02 07:06:58 -0700</date>
            <delta_ts>2015-07-02 11:30:08 -0700</delta_ts>
            <desc>Using Default in IDL</desc>
            <filename>bug-146455-20150702160604.patch</filename>
            <type>text/plain</type>
            <size>9372</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2MjE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjY2MDIxMWVkNjIxZmE1
MjAwODgwMGY1ZGZiNWZjYTEzZDAwNTA1Yy4uYWE2ZDVmYzM3Zjk2YWY0ZTUxNDllMDlhZDhiN2Iy
NjdiZThlZDIwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE1LTA3LTAyICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVh
bXMgQVBJXSBSZW1vdmUgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmVucXVldWUoKSBjdXN0b20g
YmluZGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ2NDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
TWFkZSBlbnF1ZXVlIG5vdCBjdXN0b20uIFVwZGF0ZWQgZXJyb3IgdG8gdXNlIERlZmF1bHQ9VW5k
ZWZpbmVkIGluIElETC4KKworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAgICAg
ICAgKiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmg6CisgICAgICAg
IChXZWJDb3JlOjpSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI6OmVycm9yKTogUmVtb3ZlZCB1bm5l
ZWRlZCB2YXJpYXRpb24gb2YgZXJyb3IuCisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZVN0cmVh
bUNvbnRyb2xsZXI6OmVucXVldWUpOiBDYWxsaW5nIFJlYWRhYmxlSlNTdHJlYW0gZW5xdWV1ZSBt
ZXRob2QuCisgICAgICAgICogTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxl
ci5pZGw6IFVwZGF0ZWQgZXJyb3Igd2l0aCBEZWZhdWx0PVVuZGVmaW5lZCBhbmQgbWFkZSBlbnF1
ZXVlIG5vdCBjdXN0b20uCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZURPTUV4Y2VwdGlvbik6IEFkZGluZyBzdXBwb3J0IGZv
ciBSYW5nZUVycm9yIGV4Y2VwdGlvbnMuCisgICAgICAgICogYmluZGluZ3MvanMvSlNSZWFkYWJs
ZVN0cmVhbUNvbnRyb2xsZXJDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3RydWN0
SlNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIpOiBEZWxldGVkLgorICAgICAgICAqIGJpbmRpbmdz
L2pzL1JlYWRhYmxlSlNTdHJlYW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0
cmVhbTo6ZXJyb3IpOiBVcGRhdGVkIHRvIHBhc3MgZXJyb3IgdmFsdWUgYXMgcGFyYW1ldGVyLgor
ICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6ZW5xdWV1ZSk6IEFkZGVkIGV4Y2Vw
dGlvbiB0aHJvd2luZyB0aHJvdWdoIEV4Y2VwdGlvbkNvZGUuCisgICAgICAgIChXZWJDb3JlOjpS
ZWFkYWJsZUpTU3RyZWFtOjpyZXRyaWV2ZUNodW5rU2l6ZSk6IERpdHRvLgorICAgICAgICAqIGJp
bmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uaDoKKyAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29k
ZS5oOiBBZGRpbmcgUmFuZ2VFcnJvci4KKwogMjAxNS0wNy0wMSAgSm9zZXBoIFBlY29yYXJvICA8
cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFnZ3JlZ2F0ZSBw
cm9maWxlIGNhbGwgaW5mb3JtYXRpb24gb24gdGhlIGJhY2tlbmQgdG8gZHJhc3RpY2FsbHkgcmVk
dWNlIHByb2ZpbGUgc2l6ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3Ry
ZWFtcy9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
c3RyZWFtcy9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuaAppbmRleCA2ZjIxZjI5Y2I2ZWZhYTA3
Y2E0MTU1ZWM4ZTQzMjRhOGJjMWY5ZjBhLi5lMzgyNjY0ZWMwMGUxYzU2NGEzYjgyMWJmMDYzNDRm
ZTQxMmZhZjMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVh
ZGFibGVTdHJlYW1Db250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJl
YW1zL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlci5oCkBAIC00OCw4ICs0OCw5IEBAIHB1YmxpYzoK
IAogICAgIFJlYWRhYmxlSlNTdHJlYW0mIHN0cmVhbSgpIHsgcmV0dXJuIG1fc3RyZWFtOyB9CiAK
LSAgICB2b2lkIGVycm9yKEpTQzo6RXhlY1N0YXRlKiBzdGF0ZSwgRXhjZXB0aW9uQ29kZSYgZWMp
IHsgbV9zdHJlYW0uZXJyb3IoKnN0YXRlLCBlYyk7IH0KLSAgICB2b2lkIGVycm9yKEpTQzo6RXhl
Y1N0YXRlKiBzdGF0ZSwgSlNDOjpKU1ZhbHVlLCBFeGNlcHRpb25Db2RlJiBlYykgeyBtX3N0cmVh
bS5lcnJvcigqc3RhdGUsIGVjKTsgfQorICAgIHZvaWQgZXJyb3IoSlNDOjpFeGVjU3RhdGUqIHN0
YXRlLCBKU0M6OkpTVmFsdWUgdmFsdWUsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IG1fc3RyZWFtLmVy
cm9yKCpzdGF0ZSwgdmFsdWUsIGVjKTsgfQorCisgICAgdm9pZCBlbnF1ZXVlKEpTQzo6RXhlY1N0
YXRlKiBzdGF0ZSwgSlNDOjpKU1ZhbHVlIHZhbHVlLCBFeGNlcHRpb25Db2RlJiBlYykgeyBtX3N0
cmVhbS5lbnF1ZXVlKCpzdGF0ZSwgdmFsdWUsIGVjKTsgfQogCiAgICAgdm9pZCByZWYoKSB7IG1f
c3RyZWFtLnJlZigpOyB9CiAgICAgdm9pZCBkZXJlZigpIHsgbV9zdHJlYW0uZGVyZWYoKTsgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFt
Q29udHJvbGxlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyLmlkbAppbmRleCA1N2Y1NjY2MzE2ZGJjYjFkNDhlNWMwNDQwZjA1ZGU0
YWM4ODhiNDMwLi5lYjJhMDk5N2M1OGU0Y2M5NjU5MWNiOTc3MTRkOGQyOGE1ZDFjYTI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1Db250
cm9sbGVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyLmlkbApAQCAtMzMsOSArMzMsOSBAQAogICAgIEltcGxlbWVudGF0aW9u
TGFja3NWVGFibGUsCiAgICAgTm9JbnRlcmZhY2VPYmplY3QKIF0gaW50ZXJmYWNlIFJlYWRhYmxl
U3RyZWFtQ29udHJvbGxlciB7Ci0gICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSBib29sZWFu
IGVucXVldWUoYW55IGNodW5rKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4
Y2VwdGlvbl0gdm9pZCBlbnF1ZXVlKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgYW55IGNo
dW5rKTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIGNsb3NlKCk7Ci0gICAgW0NhbGxXaXRo
PVNjcmlwdFN0YXRlLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgZXJyb3Iob3B0aW9uYWwgYW55IGVy
cm9yKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCBl
cnJvcihbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIGFueSBlcnJvcik7CiAKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgZG91YmxlIGRlc2lyZWRTaXplOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwCmluZGV4IDFiNjQ1NGQ0YzljNGFhMjE1NDk4ZDA2
NTJiODExNTVhNzI5OWIxZjIuLjVhNDFiNDY3ZTIyNTBkZDk5YzE3MWJjNjA1NDFmMmMxYzQ3NzJk
OTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcApAQCAt
MjI0LDYgKzIyNCw5IEBAIEpTVmFsdWUgY3JlYXRlRE9NRXhjZXB0aW9uKEV4ZWNTdGF0ZSogZXhl
YywgRXhjZXB0aW9uQ29kZSBlYykKICAgICAvLyBGSVhNRTogSGFuZGxlIG90aGVyIFdlYklETCBl
eGNlcHRpb24gdHlwZXMuCiAgICAgaWYgKGVjID09IFR5cGVFcnJvcikKICAgICAgICAgcmV0dXJu
IGNyZWF0ZVR5cGVFcnJvcihleGVjKTsKKyAgICBpZiAoZWMgPT0gUmFuZ2VFcnJvcikKKyAgICAg
ICAgcmV0dXJuIGNyZWF0ZVJhbmdlRXJyb3IoZXhlYywgQVNDSUlMaXRlcmFsKCJCYWQgdmFsdWUi
KSk7CisKIAogICAgIC8vIEZJWE1FOiBBbGwgY2FsbGVycyB0byBzZXRET01FeGNlcHRpb24gbmVl
ZCB0byBwYXNzIGluIHRoZSByaWdodCBnbG9iYWwgb2JqZWN0CiAgICAgLy8gZm9yIG5vdywgd2Un
cmUgZ29pbmcgdG8gYXNzdW1lIHRoZSBsZXhpY2FsR2xvYmFsT2JqZWN0LiAgV2hpY2ggaXMgd3Jv
bmcgaW4gY2FzZXMgbGlrZSB0aGlzOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJDdXN0b20uY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJDdXN0b20uY3BwCmluZGV4
IDE0Y2MxNjY2YmRmMWNkZGNmYmUyOGI0MjUyNmYyMDJiMWRmMmU5ZjEuLjM4MTdlMzNjN2NmYmZi
ZDhmNzAyMjM3NTU4ZDczMGY4MDMyYjgwYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Db250cm9sbGVyQ3VzdG9tLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlckN1c3RvbS5j
cHAKQEAgLTQwLDE3ICs0MCw2IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotSlNWYWx1ZSBKU1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlcjo6ZW5xdWV1ZShF
eGVjU3RhdGUqIGV4ZWMpCi17Ci0gICAgUmVhZGFibGVKU1N0cmVhbSYgc3RyZWFtID0gaW1wbCgp
LnN0cmVhbSgpOwotICAgIGlmIChzdHJlYW0uaXNFcnJvcmVkKCkpCi0gICAgICAgIHJldHVybiBl
eGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4ZWMsIHN0cmVhbS5lcnJvcigpKTsKLSAgICBpZiAo
c3RyZWFtLmlzQ2xvc2VSZXF1ZXN0ZWQoKSkKLSAgICAgICAgcmV0dXJuIGV4ZWMtPnZtKCkudGhy
b3dFeGNlcHRpb24oZXhlYywgY3JlYXRlVHlwZUVycm9yKGV4ZWMsIEFTQ0lJTGl0ZXJhbCgiQ2Fs
bGluZyBlbnF1ZXVlIG9uIGEgc3RyZWFtIHdoaWNoIGlzIGNsb3NpbmciKSkpOwotICAgIHN0cmVh
bS5lbnF1ZXVlKCpleGVjKTsKLSAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLX0KLQogRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RKU1JlYWRhYmxlU3RyZWFtQ29udHJvbGxl
cihFeGVjU3RhdGUqIGV4ZWMpCiB7CiAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihleGVjLCBjcmVh
dGVUeXBlRXJyb3IoZXhlYywgQVNDSUlMaXRlcmFsKCJSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIg
Y29uc3RydWN0b3Igc2hvdWxkIG5vdCBiZSBjYWxsZWQgZGlyZWN0bHkiKSkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVhZGFibGVKU1N0cmVhbS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZUpTU3RyZWFtLmNwcAppbmRleCBhN2QyMWIy
ZWJjMTAyNDAwMTU1MDk5OWRmYmU5ZDhkYTFlM2ZlMjdhLi41M2Y0MTI4YTkwNTBmMDVkZTE0NTQy
Mzk3NTcyNmE1OGZlMjM1OGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9SZWFkYWJsZUpTU3RyZWFtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9S
ZWFkYWJsZUpTU3RyZWFtLmNwcApAQCAtMjk4LDEzICsyOTgsMTMgQEAgdm9pZCBSZWFkYWJsZUpT
U3RyZWFtOjpjbG9zZShFeGNlcHRpb25Db2RlJiBlYykKICAgICBjaGFuZ2VTdGF0ZVRvQ2xvc2Vk
KCk7CiB9CiAKLXZvaWQgUmVhZGFibGVKU1N0cmVhbTo6ZXJyb3IoSlNDOjpFeGVjU3RhdGUmIHN0
YXRlLCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgUmVhZGFibGVKU1N0cmVhbTo6ZXJyb3IoSlND
OjpFeGVjU3RhdGUmIHN0YXRlLCBKU0M6OkpTVmFsdWUgdmFsdWUsIEV4Y2VwdGlvbkNvZGUmIGVj
KQogewogICAgIGlmICghaXNSZWFkYWJsZSgpKSB7CiAgICAgICAgIGVjID0gVHlwZUVycm9yOwog
ICAgICAgICByZXR1cm47CiAgICAgfQotICAgIHN0b3JlRXJyb3Ioc3RhdGUsIHN0YXRlLmFyZ3Vt
ZW50KDApKTsKKyAgICBzdG9yZUVycm9yKHN0YXRlLCB2YWx1ZSk7CiB9CiAKIHZvaWQgUmVhZGFi
bGVKU1N0cmVhbTo6c3RvcmVFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUmIHN0YXRlKQpAQCAtMzM4
LDI0ICszMzgsMjcgQEAgSlNWYWx1ZSBSZWFkYWJsZUpTU3RyZWFtOjpyZWFkKCkKICAgICByZXR1
cm4gY2h1bmsudmFsdWUuZ2V0KCk7CiB9CiAKLXZvaWQgUmVhZGFibGVKU1N0cmVhbTo6ZW5xdWV1
ZShFeGVjU3RhdGUmIHN0YXRlKQordm9pZCBSZWFkYWJsZUpTU3RyZWFtOjplbnF1ZXVlKEpTQzo6
RXhlY1N0YXRlJiBzdGF0ZSwgSlNDOjpKU1ZhbHVlIGNodW5rLCBFeGNlcHRpb25Db2RlJiBlYykK
IHsKLSAgICBBU1NFUlQoIWlzQ2xvc2VSZXF1ZXN0ZWQoKSk7Ci0KKyAgICBpZiAoaXNFcnJvcmVk
KCkpIHsKKyAgICAgICAgdGhyb3dWTUVycm9yKCZzdGF0ZSwgZXJyb3IoKSk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisgICAgaWYgKGlzQ2xvc2VSZXF1ZXN0ZWQoKSkgeworICAgICAgICBlYyA9
IFR5cGVFcnJvcjsKKyAgICAgICAgcmV0dXJuOworICAgIH0KICAgICBpZiAoIWlzUmVhZGFibGUo
KSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgSlNWYWx1ZSBjaHVuayA9IHN0YXRlLmFyZ3VtZW50
KDApOwogICAgIGlmIChyZXNvbHZlUmVhZENhbGxiYWNrKGNodW5rKSkgewogICAgICAgICBwdWxs
KCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBkb3VibGUgc2l6ZSA9IHJldHJpZXZl
Q2h1bmtTaXplKHN0YXRlLCBjaHVuayk7Ci0gICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKSB7
Ci0gICAgICAgIHN0b3JlRXJyb3Ioc3RhdGUsIHN0YXRlLmV4Y2VwdGlvbigpLT52YWx1ZSgpKTsK
KyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpCiAgICAgICAgIHJldHVybjsKLSAgICB9CiAK
ICAgICBtX2NodW5rUXVldWUuYXBwZW5kKHsgSlNDOjpTdHJvbmc8SlNDOjpVbmtub3duPihzdGF0
ZS52bSgpLCBjaHVuayksIHNpemUgfSk7CiAgICAgbV90b3RhbFF1ZXVlU2l6ZSArPSBzaXplOwpA
QCAtMzcyLDE1ICszNzUsMjAgQEAgZG91YmxlIFJlYWRhYmxlSlNTdHJlYW06OnJldHJpZXZlQ2h1
bmtTaXplKEV4ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgY2h1bmspCiAgICAgYXJndW1lbnRzLmFw
cGVuZChjaHVuayk7CiAKICAgICBKU1ZhbHVlIHNpemVWYWx1ZSA9IGNhbGxGdW5jdGlvbihzdGF0
ZSwgbV9zaXplRnVuY3Rpb24uZ2V0KCksIGpzVW5kZWZpbmVkKCksIGFyZ3VtZW50cyk7Ci0gICAg
aWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkg
eworICAgICAgICBzdG9yZUVycm9yKHN0YXRlLCBzdGF0ZS5leGNlcHRpb24oKS0+dmFsdWUoKSk7
CiAgICAgICAgIHJldHVybiAwOworICAgIH0KIAogICAgIGRvdWJsZSBzaXplID0gc2l6ZVZhbHVl
LnRvTnVtYmVyKCZzdGF0ZSk7Ci0gICAgaWYgKHN0YXRlLmhhZEV4Y2VwdGlvbigpKQorICAgIGlm
IChzdGF0ZS5oYWRFeGNlcHRpb24oKSkgeworICAgICAgICBzdG9yZUVycm9yKHN0YXRlLCBzdGF0
ZS5leGNlcHRpb24oKS0+dmFsdWUoKSk7CiAgICAgICAgIHJldHVybiAwOworICAgIH0KIAogICAg
IGlmICghc3RkOjppc2Zpbml0ZShzaXplKSB8fCBzaXplIDwgMCkgewotICAgICAgICB0aHJvd1ZN
RXJyb3IoJnN0YXRlLCBjcmVhdGVSYW5nZUVycm9yKCZzdGF0ZSwgQVNDSUlMaXRlcmFsKCJJbmNv
cnJlY3QgZG91YmxlIHZhbHVlIikpKTsKKyAgICAgICAgc3RvcmVFcnJvcihzdGF0ZSwgY3JlYXRl
RE9NRXhjZXB0aW9uKCZzdGF0ZSwgUmFuZ2VFcnJvcikpOworICAgICAgICB0aHJvd1ZNRXJyb3Io
JnN0YXRlLCBlcnJvcigpKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZUpTU3RyZWFtLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZUpTU3RyZWFtLmgKaW5kZXggMTVmZGUzMjYzZmRk
MmUzMjU5YTFlNDhjOWMxYTk2MGEwZjM4ZWJmNi4uMTU1NmY4YTFkNjNlM2M1ZDE4ZjhiZDc3M2M3
NTg2NGRjOGFmMTAwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvUmVh
ZGFibGVKU1N0cmVhbS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxl
SlNTdHJlYW0uaApAQCAtNjIsOCArNjIsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdG9yZUVycm9y
KEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU1ZhbHVlKTsKICAgICBKU0M6OkpTVmFsdWUgZXJyb3Io
KSBvdmVycmlkZSB7IHJldHVybiBtX2Vycm9yLmdldCgpOyB9CiAKLSAgICB2b2lkIGVucXVldWUo
SlNDOjpFeGVjU3RhdGUmKTsKLSAgICB2b2lkIGVycm9yKEpTQzo6RXhlY1N0YXRlJiwgRXhjZXB0
aW9uQ29kZSYpOworICAgIHZvaWQgZW5xdWV1ZShKU0M6OkV4ZWNTdGF0ZSYsIEpTQzo6SlNWYWx1
ZSwgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgZXJyb3IoSlNDOjpFeGVjU3RhdGUmLCBKU0M6
OkpTVmFsdWUsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIGRvdWJsZSBkZXNpcmVkU2l6ZSgpIGNv
bnN0IHsgcmV0dXJuIG1faGlnaFdhdGVyTWFyayAtIG1fdG90YWxRdWV1ZVNpemU7IH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FeGNlcHRpb25Db2RlLmgKaW5kZXggOWJiNDA2NDAwNDMwNTk2ZTBjYjFiY2IyNDQ5
ZjYzNDg4ZDAwMWZmOC4uNDMyNWI4M2U3OTBiNDdlOThlYTY1NTY0Y2UwNTQ0NTIzNzNmMTUyOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZS5oCkBAIC02NSw2ICs2NSw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgLy8gV2ViSURMIGV4Y2VwdGlvbiB0eXBlcywgaGFuZGxlZCBi
eSB0aGUgYmluZGluZyBsYXllci4KICAgICAgICAgLy8gRklYTUU6IEFkZCBHZW5lcmFsRXJyb3Is
IEV2YWxFcnJvciwgZXRjLiB3aGVuIGltcGxlbWVudGVkIGluIHRoZSBiaW5kaW5ncy4KICAgICAg
ICAgVHlwZUVycm9yID0gMTA1LAorICAgICAgICBSYW5nZUVycm9yID0gMTA2LAogICAgIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256021</attachid>
            <date>2015-07-02 11:30:16 -0700</date>
            <delta_ts>2015-07-02 12:28:24 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-146455-20150702202919.patch</filename>
            <type>text/plain</type>
            <size>9339</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2MjIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjY2MDIxMWVkNjIxZmE1
MjAwODgwMGY1ZGZiNWZjYTEzZDAwNTA1Yy4uODFhMTc2YTE2NjAxYjkwYjA2NDdlYmE2NTg2ZWM1
ZGZjM2Y1NjQzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE1LTA3LTAyICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAgICAgICAgW1N0cmVh
bXMgQVBJXSBSZW1vdmUgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmVucXVldWUoKSBjdXN0b20g
YmluZGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ2NDU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgTWFk
ZSBlbnF1ZXVlIG5vdCBjdXN0b20uIFVwZGF0ZWQgZXJyb3IgdG8gdXNlIERlZmF1bHQ9VW5kZWZp
bmVkIGluIElETC4KKworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAgICAgICAg
KiBNb2R1bGVzL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmg6CisgICAgICAgIChX
ZWJDb3JlOjpSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI6OmVycm9yKTogUmVtb3ZlZCB1bm5lZWRl
ZCB2YXJpYXRpb24gb2YgZXJyb3IuCisgICAgICAgIChXZWJDb3JlOjpSZWFkYWJsZVN0cmVhbUNv
bnRyb2xsZXI6OmVucXVldWUpOiBDYWxsaW5nIFJlYWRhYmxlSlNTdHJlYW0gZW5xdWV1ZSBtZXRo
b2QuCisgICAgICAgICogTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlci5p
ZGw6IFVwZGF0ZWQgZXJyb3Igd2l0aCBEZWZhdWx0PVVuZGVmaW5lZCBhbmQgbWFkZSBlbnF1ZXVl
IG5vdCBjdXN0b20uCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OmNyZWF0ZURPTUV4Y2VwdGlvbik6IEFkZGluZyBzdXBwb3J0IGZvciBS
YW5nZUVycm9yIGV4Y2VwdGlvbnMuCisgICAgICAgICogYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0
cmVhbUNvbnRyb2xsZXJDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3RydWN0SlNS
ZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIpOiBEZWxldGVkLgorICAgICAgICAqIGJpbmRpbmdzL2pz
L1JlYWRhYmxlSlNTdHJlYW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVh
bTo6ZXJyb3IpOiBVcGRhdGVkIHRvIHBhc3MgZXJyb3IgdmFsdWUgYXMgcGFyYW1ldGVyLgorICAg
ICAgICAoV2ViQ29yZTo6UmVhZGFibGVKU1N0cmVhbTo6ZW5xdWV1ZSk6IEFkZGVkIGV4Y2VwdGlv
biB0aHJvd2luZyB0aHJvdWdoIEV4Y2VwdGlvbkNvZGUuCisgICAgICAgIChXZWJDb3JlOjpSZWFk
YWJsZUpTU3RyZWFtOjpyZXRyaWV2ZUNodW5rU2l6ZSk6IERpdHRvLgorICAgICAgICAqIGJpbmRp
bmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uaDoKKyAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29kZS5o
OiBBZGRpbmcgUmFuZ2VFcnJvci4KKwogMjAxNS0wNy0wMSAgSm9zZXBoIFBlY29yYXJvICA8cGVj
b3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFnZ3JlZ2F0ZSBwcm9m
aWxlIGNhbGwgaW5mb3JtYXRpb24gb24gdGhlIGJhY2tlbmQgdG8gZHJhc3RpY2FsbHkgcmVkdWNl
IHByb2ZpbGUgc2l6ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3RyZWFt
cy9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3Ry
ZWFtcy9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuaAppbmRleCA2ZjIxZjI5Y2I2ZWZhYTA3Y2E0
MTU1ZWM4ZTQzMjRhOGJjMWY5ZjBhLi5hNGMzYmVjYmIxZDc3ZDM4YzhlOTNjODRmNDg2MzM5ZWY3
NGUzZTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3N0cmVhbXMvUmVhZGFi
bGVTdHJlYW1Db250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zdHJlYW1z
L1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlci5oCkBAIC00OCw4ICs0OCw5IEBAIHB1YmxpYzoKIAog
ICAgIFJlYWRhYmxlSlNTdHJlYW0mIHN0cmVhbSgpIHsgcmV0dXJuIG1fc3RyZWFtOyB9CiAKLSAg
ICB2b2lkIGVycm9yKEpTQzo6RXhlY1N0YXRlKiBzdGF0ZSwgRXhjZXB0aW9uQ29kZSYgZWMpIHsg
bV9zdHJlYW0uZXJyb3IoKnN0YXRlLCBlYyk7IH0KLSAgICB2b2lkIGVycm9yKEpTQzo6RXhlY1N0
YXRlKiBzdGF0ZSwgSlNDOjpKU1ZhbHVlLCBFeGNlcHRpb25Db2RlJiBlYykgeyBtX3N0cmVhbS5l
cnJvcigqc3RhdGUsIGVjKTsgfQorICAgIHZvaWQgZXJyb3IoSlNDOjpFeGVjU3RhdGUqIHN0YXRl
LCBKU0M6OkpTVmFsdWUgdmFsdWUsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IG1fc3RyZWFtLmVycm9y
KCpzdGF0ZSwgdmFsdWUsIGVjKTsgfQorCisgICAgdm9pZCBlbnF1ZXVlKEpTQzo6RXhlY1N0YXRl
KiBzdGF0ZSwgSlNDOjpKU1ZhbHVlIHZhbHVlKSB7IG1fc3RyZWFtLmVucXVldWUoKnN0YXRlLCB2
YWx1ZSk7IH0KIAogICAgIHZvaWQgcmVmKCkgeyBtX3N0cmVhbS5yZWYoKTsgfQogICAgIHZvaWQg
ZGVyZWYoKSB7IG1fc3RyZWFtLmRlcmVmKCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuaWRsIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlci5pZGwKaW5kZXgg
NTdmNTY2NjMxNmRiY2IxZDQ4ZTVjMDQ0MGYwNWRlNGFjODg4YjQzMC4uMzBiOGM4YjVlOTc3MThh
MTRmZGJiZGNlOWM2MzVhNmY2NzRlODU1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlci5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9zdHJlYW1zL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlci5pZGwKQEAgLTMz
LDkgKzMzLDkgQEAKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogICAgIE5vSW50ZXJm
YWNlT2JqZWN0CiBdIGludGVyZmFjZSBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIgewotICAgIFtD
dXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gYm9vbGVhbiBlbnF1ZXVlKGFueSBjaHVuayk7CisgICAg
W0NhbGxXaXRoPVNjcmlwdFN0YXRlXSB2b2lkIGVucXVldWUoW0RlZmF1bHQ9VW5kZWZpbmVkXSBv
cHRpb25hbCBhbnkgY2h1bmspOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgY2xvc2UoKTsK
LSAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGUsIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCBlcnJvcihv
cHRpb25hbCBhbnkgZXJyb3IpOworICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZSwgUmFpc2VzRXhj
ZXB0aW9uXSB2b2lkIGVycm9yKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgYW55IGVycm9y
KTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBkb3VibGUgZGVzaXJlZFNpemU7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKaW5kZXggMWI2NDU0ZDRj
OWM0YWEyMTU0OThkMDY1MmI4MTE1NWE3Mjk5YjFmMi4uNWE0MWI0NjdlMjI1MGRkOTljMTcxYmM2
MDU0MWYyYzFjNDc3MmQ5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJp
bmRpbmcuY3BwCkBAIC0yMjQsNiArMjI0LDkgQEAgSlNWYWx1ZSBjcmVhdGVET01FeGNlcHRpb24o
RXhlY1N0YXRlKiBleGVjLCBFeGNlcHRpb25Db2RlIGVjKQogICAgIC8vIEZJWE1FOiBIYW5kbGUg
b3RoZXIgV2ViSURMIGV4Y2VwdGlvbiB0eXBlcy4KICAgICBpZiAoZWMgPT0gVHlwZUVycm9yKQog
ICAgICAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGV4ZWMpOworICAgIGlmIChlYyA9PSBSYW5n
ZUVycm9yKQorICAgICAgICByZXR1cm4gY3JlYXRlUmFuZ2VFcnJvcihleGVjLCBBU0NJSUxpdGVy
YWwoIkJhZCB2YWx1ZSIpKTsKKwogCiAgICAgLy8gRklYTUU6IEFsbCBjYWxsZXJzIHRvIHNldERP
TUV4Y2VwdGlvbiBuZWVkIHRvIHBhc3MgaW4gdGhlIHJpZ2h0IGdsb2JhbCBvYmplY3QKICAgICAv
LyBmb3Igbm93LCB3ZSdyZSBnb2luZyB0byBhc3N1bWUgdGhlIGxleGljYWxHbG9iYWxPYmplY3Qu
ICBXaGljaCBpcyB3cm9uZyBpbiBjYXNlcyBsaWtlIHRoaXM6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlckN1c3RvbS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlckN1
c3RvbS5jcHAKaW5kZXggMTRjYzE2NjZiZGYxY2RkY2ZiZTI4YjQyNTI2ZjIwMmIxZGYyZTlmMS4u
MzgxN2UzM2M3Y2ZiZmJkOGY3MDIyMzc1NThkNzMwZjgwMzJiODBhZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXJDdXN0b20u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVhZGFibGVTdHJlYW1Db250
cm9sbGVyQ3VzdG9tLmNwcApAQCAtNDAsMTcgKzQwLDYgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1KU1ZhbHVlIEpTUmVhZGFibGVTdHJlYW1Db250cm9s
bGVyOjplbnF1ZXVlKEV4ZWNTdGF0ZSogZXhlYykKLXsKLSAgICBSZWFkYWJsZUpTU3RyZWFtJiBz
dHJlYW0gPSBpbXBsKCkuc3RyZWFtKCk7Ci0gICAgaWYgKHN0cmVhbS5pc0Vycm9yZWQoKSkKLSAg
ICAgICAgcmV0dXJuIGV4ZWMtPnZtKCkudGhyb3dFeGNlcHRpb24oZXhlYywgc3RyZWFtLmVycm9y
KCkpOwotICAgIGlmIChzdHJlYW0uaXNDbG9zZVJlcXVlc3RlZCgpKQotICAgICAgICByZXR1cm4g
ZXhlYy0+dm0oKS50aHJvd0V4Y2VwdGlvbihleGVjLCBjcmVhdGVUeXBlRXJyb3IoZXhlYywgQVND
SUlMaXRlcmFsKCJDYWxsaW5nIGVucXVldWUgb24gYSBzdHJlYW0gd2hpY2ggaXMgY2xvc2luZyIp
KSk7Ci0gICAgc3RyZWFtLmVucXVldWUoKmV4ZWMpOwotICAgIHJldHVybiBqc1VuZGVmaW5lZCgp
OwotfQotCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTUmVhZGFibGVT
dHJlYW1Db250cm9sbGVyKEV4ZWNTdGF0ZSogZXhlYykKIHsKICAgICByZXR1cm4gdGhyb3dWTUVy
cm9yKGV4ZWMsIGNyZWF0ZVR5cGVFcnJvcihleGVjLCBBU0NJSUxpdGVyYWwoIlJlYWRhYmxlU3Ry
ZWFtQ29udHJvbGxlciBjb25zdHJ1Y3RvciBzaG91bGQgbm90IGJlIGNhbGxlZCBkaXJlY3RseSIp
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZUpTU3Ry
ZWFtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uY3Bw
CmluZGV4IGE3ZDIxYjJlYmMxMDI0MDAxNTUwOTk5ZGZiZTlkOGRhMWUzZmUyN2EuLjUzODEyNTRj
MGU5OGY4NTM5Yjc4MDJiNDE4ZWU4OTViYzc3NGQyYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uY3BwCkBAIC0yOTgsMTMgKzI5OCwxMyBAQCB2
b2lkIFJlYWRhYmxlSlNTdHJlYW06OmNsb3NlKEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgIGNoYW5n
ZVN0YXRlVG9DbG9zZWQoKTsKIH0KIAotdm9pZCBSZWFkYWJsZUpTU3RyZWFtOjplcnJvcihKU0M6
OkV4ZWNTdGF0ZSYgc3RhdGUsIEV4Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBSZWFkYWJsZUpTU3Ry
ZWFtOjplcnJvcihKU0M6OkV4ZWNTdGF0ZSYgc3RhdGUsIEpTQzo6SlNWYWx1ZSB2YWx1ZSwgRXhj
ZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgaWYgKCFpc1JlYWRhYmxlKCkpIHsKICAgICAgICAgZWMg
PSBUeXBlRXJyb3I7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgc3RvcmVFcnJvcihzdGF0
ZSwgc3RhdGUuYXJndW1lbnQoMCkpOworICAgIHN0b3JlRXJyb3Ioc3RhdGUsIHZhbHVlKTsKIH0K
IAogdm9pZCBSZWFkYWJsZUpTU3RyZWFtOjpzdG9yZUV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSYg
c3RhdGUpCkBAIC0zMzgsMjQgKzMzOCwyNyBAQCBKU1ZhbHVlIFJlYWRhYmxlSlNTdHJlYW06OnJl
YWQoKQogICAgIHJldHVybiBjaHVuay52YWx1ZS5nZXQoKTsKIH0KIAotdm9pZCBSZWFkYWJsZUpT
U3RyZWFtOjplbnF1ZXVlKEV4ZWNTdGF0ZSYgc3RhdGUpCit2b2lkIFJlYWRhYmxlSlNTdHJlYW06
OmVucXVldWUoSlNDOjpFeGVjU3RhdGUmIHN0YXRlLCBKU0M6OkpTVmFsdWUgY2h1bmspCiB7Ci0g
ICAgQVNTRVJUKCFpc0Nsb3NlUmVxdWVzdGVkKCkpOwotCisgICAgaWYgKGlzRXJyb3JlZCgpKSB7
CisgICAgICAgIHRocm93Vk1FcnJvcigmc3RhdGUsIGVycm9yKCkpOworICAgICAgICByZXR1cm47
CisgICAgfQorICAgIGlmIChpc0Nsb3NlUmVxdWVzdGVkKCkpIHsKKyAgICAgICAgdGhyb3dWTUVy
cm9yKCZzdGF0ZSwgY3JlYXRlRE9NRXhjZXB0aW9uKCZzdGF0ZSwgVHlwZUVycm9yKSk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CiAgICAgaWYgKCFpc1JlYWRhYmxlKCkpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIEpTVmFsdWUgY2h1bmsgPSBzdGF0ZS5hcmd1bWVudCgwKTsKICAgICBpZiAocmVz
b2x2ZVJlYWRDYWxsYmFjayhjaHVuaykpIHsKICAgICAgICAgcHVsbCgpOwogICAgICAgICByZXR1
cm47CiAgICAgfQogCiAgICAgZG91YmxlIHNpemUgPSByZXRyaWV2ZUNodW5rU2l6ZShzdGF0ZSwg
Y2h1bmspOwotICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkgewotICAgICAgICBzdG9yZUVy
cm9yKHN0YXRlLCBzdGF0ZS5leGNlcHRpb24oKS0+dmFsdWUoKSk7CisgICAgaWYgKHN0YXRlLmhh
ZEV4Y2VwdGlvbigpKQogICAgICAgICByZXR1cm47Ci0gICAgfQogCiAgICAgbV9jaHVua1F1ZXVl
LmFwcGVuZCh7IEpTQzo6U3Ryb25nPEpTQzo6VW5rbm93bj4oc3RhdGUudm0oKSwgY2h1bmspLCBz
aXplIH0pOwogICAgIG1fdG90YWxRdWV1ZVNpemUgKz0gc2l6ZTsKQEAgLTM3MiwxNSArMzc1LDIw
IEBAIGRvdWJsZSBSZWFkYWJsZUpTU3RyZWFtOjpyZXRyaWV2ZUNodW5rU2l6ZShFeGVjU3RhdGUm
IHN0YXRlLCBKU1ZhbHVlIGNodW5rKQogICAgIGFyZ3VtZW50cy5hcHBlbmQoY2h1bmspOwogCiAg
ICAgSlNWYWx1ZSBzaXplVmFsdWUgPSBjYWxsRnVuY3Rpb24oc3RhdGUsIG1fc2l6ZUZ1bmN0aW9u
LmdldCgpLCBqc1VuZGVmaW5lZCgpLCBhcmd1bWVudHMpOwotICAgIGlmIChzdGF0ZS5oYWRFeGNl
cHRpb24oKSkKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0aW9uKCkpIHsKKyAgICAgICAgc3RvcmVF
cnJvcihzdGF0ZSwgc3RhdGUuZXhjZXB0aW9uKCktPnZhbHVlKCkpOwogICAgICAgICByZXR1cm4g
MDsKKyAgICB9CiAKICAgICBkb3VibGUgc2l6ZSA9IHNpemVWYWx1ZS50b051bWJlcigmc3RhdGUp
OwotICAgIGlmIChzdGF0ZS5oYWRFeGNlcHRpb24oKSkKKyAgICBpZiAoc3RhdGUuaGFkRXhjZXB0
aW9uKCkpIHsKKyAgICAgICAgc3RvcmVFcnJvcihzdGF0ZSwgc3RhdGUuZXhjZXB0aW9uKCktPnZh
bHVlKCkpOwogICAgICAgICByZXR1cm4gMDsKKyAgICB9CiAKICAgICBpZiAoIXN0ZDo6aXNmaW5p
dGUoc2l6ZSkgfHwgc2l6ZSA8IDApIHsKLSAgICAgICAgdGhyb3dWTUVycm9yKCZzdGF0ZSwgY3Jl
YXRlUmFuZ2VFcnJvcigmc3RhdGUsIEFTQ0lJTGl0ZXJhbCgiSW5jb3JyZWN0IGRvdWJsZSB2YWx1
ZSIpKSk7CisgICAgICAgIHN0b3JlRXJyb3Ioc3RhdGUsIGNyZWF0ZURPTUV4Y2VwdGlvbigmc3Rh
dGUsIFJhbmdlRXJyb3IpKTsKKyAgICAgICAgdGhyb3dWTUVycm9yKCZzdGF0ZSwgZXJyb3IoKSk7
CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvUmVhZGFibGVKU1N0cmVhbS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvUmVhZGFibGVKU1N0cmVhbS5oCmluZGV4IDE1ZmRlMzI2M2ZkZDJlMzI1OWExZTQ4YzljMWE5
NjBhMGYzOGViZjYuLjRlYWE0OTMyZWEwZmQxNjhiNjVkNGM4YzM1ZTQxYTE0NjM4ODMxYTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1JlYWRhYmxlSlNTdHJlYW0uaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9SZWFkYWJsZUpTU3RyZWFtLmgKQEAgLTYy
LDggKzYyLDggQEAgcHVibGljOgogICAgIHZvaWQgc3RvcmVFcnJvcihKU0M6OkV4ZWNTdGF0ZSYs
IEpTQzo6SlNWYWx1ZSk7CiAgICAgSlNDOjpKU1ZhbHVlIGVycm9yKCkgb3ZlcnJpZGUgeyByZXR1
cm4gbV9lcnJvci5nZXQoKTsgfQogCi0gICAgdm9pZCBlbnF1ZXVlKEpTQzo6RXhlY1N0YXRlJik7
Ci0gICAgdm9pZCBlcnJvcihKU0M6OkV4ZWNTdGF0ZSYsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2
b2lkIGVucXVldWUoSlNDOjpFeGVjU3RhdGUmLCBKU0M6OkpTVmFsdWUpOworICAgIHZvaWQgZXJy
b3IoSlNDOjpFeGVjU3RhdGUmLCBKU0M6OkpTVmFsdWUsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAg
IGRvdWJsZSBkZXNpcmVkU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1faGlnaFdhdGVyTWFyayAtIG1f
dG90YWxRdWV1ZVNpemU7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V4Y2Vw
dGlvbkNvZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmgKaW5kZXggOWJi
NDA2NDAwNDMwNTk2ZTBjYjFiY2IyNDQ5ZjYzNDg4ZDAwMWZmOC4uNDMyNWI4M2U3OTBiNDdlOThl
YTY1NTY0Y2UwNTQ0NTIzNzNmMTUyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V4
Y2VwdGlvbkNvZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZS5oCkBA
IC02NSw2ICs2NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgLy8gV2ViSURMIGV4
Y2VwdGlvbiB0eXBlcywgaGFuZGxlZCBieSB0aGUgYmluZGluZyBsYXllci4KICAgICAgICAgLy8g
RklYTUU6IEFkZCBHZW5lcmFsRXJyb3IsIEV2YWxFcnJvciwgZXRjLiB3aGVuIGltcGxlbWVudGVk
IGluIHRoZSBiaW5kaW5ncy4KICAgICAgICAgVHlwZUVycm9yID0gMTA1LAorICAgICAgICBSYW5n
ZUVycm9yID0gMTA2LAogICAgIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>