<?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>169298</bug_id>
          
          <creation_ts>2017-03-07 12:27:44 -0800</creation_ts>
          <short_desc>Use the new code path when dragging web contents</short_desc>
          <delta_ts>2017-03-08 14:14:31 -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>New Bugs</component>
          <version>WebKit 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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>bdakin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1284484</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2017-03-07 12:27:44 -0800</bug_when>
    <thetext>Use the new code path when dragging web contents</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284492</commentid>
    <comment_count>1</comment_count>
      <attachid>303700</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2017-03-07 12:36:15 -0800</bug_when>
    <thetext>Created attachment 303700
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284520</commentid>
    <comment_count>2</comment_count>
      <attachid>303710</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2017-03-07 13:11:38 -0800</bug_when>
    <thetext>Created attachment 303710
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284524</commentid>
    <comment_count>3</comment_count>
      <attachid>303713</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2017-03-07 13:20:36 -0800</bug_when>
    <thetext>Created attachment 303713
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1285014</commentid>
    <comment_count>4</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2017-03-08 14:14:31 -0800</bug_when>
    <thetext>Committed r213597: &lt;http://trac.webkit.org/changeset/213597&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303700</attachid>
            <date>2017-03-07 12:36:15 -0800</date>
            <delta_ts>2017-03-07 13:11:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169298-20170307123614.patch</filename>
            <type>text/plain</type>
            <size>11339</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzNTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGM0ODJmMDZmYTQ5ZmE4
MzVlODU1OTljOWQwOWE3ZmUxM2ZkZTBmNy4uZjNhZDgwYTcyYmQwOWVkNTViZWJkZWU2MDM2ZWI3
ZjFlNTUzODIyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE3LTAzLTA3ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHRoZSBuZXcg
Y29kZSBwYXRoIHdoZW4gZHJhZ2dpbmcgd2ViIGNvbnRlbnRzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkyOTgKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6CisgICAgICAg
ICogZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6d3JpdGVTZWxlY3Rpb24pOgorICAgICAgICBBZGQgYSBuZXcgZnVuY3Rpb24gdGhhdCB3cml0
ZXMgdGhlIHNlbGVjdGlvbiB0byBhIHdyaXRlciBvYmplY3QuCisKKyAgICAgICAgKiBwYWdlL0Ry
YWdDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdDb250cm9sbGVyOjpzdGFy
dERyYWcpOgorICAgICAgICBVc2UgdGhlIG5ldyB3cml0ZVNlbGVjdGlvbiBpZiBtdXN0VXNlTGVn
YWN5RHJhZ0NsaWVudCBpcyBmYWxzZS4KKworICAgICAgICAqIHBsYXRmb3JtL1Bhc3RlYm9hcmRX
cml0ZXJEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmRXcml0ZXJEYXRhOjpX
ZWJDb250ZW50OjpXZWJDb250ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmRXcml0
ZXJEYXRhOjpXZWJDb250ZW50Ojp+V2ViQ29udGVudCk6CisgICAgICAgIChXZWJDb3JlOjpQYXN0
ZWJvYXJkV3JpdGVyRGF0YTo6c2V0V2ViQ29udGVudCk6CisgICAgICAgICogcGxhdGZvcm0vUGFz
dGVib2FyZFdyaXRlckRhdGEuaDoKKyAgICAgICAgQWRkIGdldHRlcnMgYW5kIHNldHRlcnMuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGFzdGVib2FyZFdyaXRlci5tbToKKyAgICAgICAgKFdl
YkNvcmU6OnRvVVRJVW5sZXNzQWxyZWFkeVVUSSk6CisgICAgICAgIEFkZCBhIGhlbHBlci4KKwor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUGFzdGVib2FyZFdyaXRlcik6CisgICAgICAgIENvbnZl
cnQgd2ViIGNvbnRlbnQgdG8gcGFzdGVib2FyZCB0eXBlcy4KKwogMjAxNy0wMy0wNyAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIFBhcnNpbmcgZm9u
dCBkZXNjcmlwdG9ycyBpbnNpZGUgQGZvbnQtZmFjZSBuZWVkcyB0byBhY2NlcHQgcmFuZ2VzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9FZGl0b3IuaAppbmRleCBiOWI2ZTA2NGM4NTUxOTY3OTE2YzgzYTY0Zjg3MzEw
OWM5YzA1ODdlLi42MzQ4Y2NlMDUzMGUwODMyMjFkYmM2YTVhMDg4YWZiMzZhZGY3MTI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmgKQEAgLTY2LDYgKzY2LDcgQEAgY2xhc3MgSGl0VGVzdFJlc3Vs
dDsKIGNsYXNzIEtleWJvYXJkRXZlbnQ7CiBjbGFzcyBLaWxsUmluZzsKIGNsYXNzIFBhc3RlYm9h
cmQ7CitjbGFzcyBQYXN0ZWJvYXJkV3JpdGVyRGF0YTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNs
YXNzIEZvbnQ7CiBjbGFzcyBTcGVsbENoZWNrUmVxdWVzdDsKQEAgLTQ2OSw2ICs0NzAsNyBAQCBw
dWJsaWM6CiAjaWYgUExBVEZPUk0oQ09DT0EpIHx8IFBMQVRGT1JNKEdUSykKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmKTsKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoUGFzdGVib2FyZCYs
IEVsZW1lbnQmIGltYWdlRWxlbWVudCwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiB0aXRsZSk7
CisgICAgdm9pZCB3cml0ZVNlbGVjdGlvbihQYXN0ZWJvYXJkV3JpdGVyRGF0YSYpOwogI2VuZGlm
CiAKICNpZiBFTkFCTEUoVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pICYmICFQTEFURk9STShJ
T1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0VkaXRvckNvY29h
Lm1tIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbQppbmRleCA2
NjhkNzZhNTk3MTNhMTczMmJjOTdlZmFjNzUwODhkNzZlZDc0NWM4Li40MDI4NmY0MWQyZTcwNGFh
ODMxYTg0NThiNTAzMzUxNTMzNjgxNGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL2NvY29hL0VkaXRvckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29j
b2EvRWRpdG9yQ29jb2EubW0KQEAgLTE3MSw2ICsxNzEsMjUgQEAgdm9pZCBFZGl0b3I6OndyaXRl
U2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmIHBhc3RlYm9hcmQpCiAgICAgcGFzdGVi
b2FyZC53cml0ZShjb250ZW50KTsKIH0KIAordm9pZCBFZGl0b3I6OndyaXRlU2VsZWN0aW9uKFBh
c3RlYm9hcmRXcml0ZXJEYXRhJiBwYXN0ZWJvYXJkV3JpdGVyRGF0YSkKK3sKKyAgICBOU0F0dHJp
YnV0ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmcgPSBhdHRyaWJ1dGVkU3RyaW5nRnJvbVJhbmdl
KCpzZWxlY3RlZFJhbmdlKCkpOworCisgICAgUGFzdGVib2FyZFdyaXRlckRhdGE6OldlYkNvbnRl
bnQgd2ViQ29udGVudDsKKyAgICB3ZWJDb250ZW50LmNhblNtYXJ0Q29weU9yRGVsZXRlID0gY2Fu
U21hcnRDb3B5T3JEZWxldGUoKTsKKyAgICB3ZWJDb250ZW50LmRhdGFJbldlYkFyY2hpdmVGb3Jt
YXQgPSBzZWxlY3Rpb25JbldlYkFyY2hpdmVGb3JtYXQoKTsKKyAgICB3ZWJDb250ZW50LmRhdGFJ
blJURkRGb3JtYXQgPSBhdHRyaWJ1dGVkU3RyaW5nLmNvbnRhaW5zQXR0YWNobWVudHMgPyBkYXRh
SW5SVEZERm9ybWF0KGF0dHJpYnV0ZWRTdHJpbmcpIDogbnVsbHB0cjsKKyAgICB3ZWJDb250ZW50
LmRhdGFJblJURkZvcm1hdCA9IGRhdGFJblJURkZvcm1hdChhdHRyaWJ1dGVkU3RyaW5nKTsKKyAg
ICAvLyBGSVhNRTogV2h5IGRvbid0IHdlIHdhbnQgdGhpcyBvbiBpT1M/CisjaWYgUExBVEZPUk0o
TUFDKQorICAgIHdlYkNvbnRlbnQuZGF0YUluSFRNTEZvcm1hdCA9IHNlbGVjdGlvbkluSFRNTEZv
cm1hdCgpOworI2VuZGlmCisgICAgd2ViQ29udGVudC5kYXRhSW5TdHJpbmdGb3JtYXQgPSBzdHJp
bmdTZWxlY3Rpb25Gb3JQYXN0ZWJvYXJkV2l0aEltYWdlQWx0VGV4dCgpOworICAgIGNsaWVudCgp
LT5nZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZvclJhbmdlKHNlbGVjdGVkUmFuZ2UoKS5nZXQoKSwg
d2ViQ29udGVudC5jbGllbnRUeXBlcywgd2ViQ29udGVudC5jbGllbnREYXRhKTsKKworICAgIHBh
c3RlYm9hcmRXcml0ZXJEYXRhLnNldFdlYkNvbnRlbnQoV1RGTW92ZSh3ZWJDb250ZW50KSk7Cit9
CisKIFJlZlB0cjxTaGFyZWRCdWZmZXI+IEVkaXRvcjo6c2VsZWN0aW9uSW5XZWJBcmNoaXZlRm9y
bWF0KCkKIHsKICAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oJm1fZnJhbWUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RyYWdDb250cm9sbGVyLmNwcAppbmRleCBkNjAxNjkxNDliZTQ3MDhlODRkOWFlNzVkYmFmODQ4
MTc0MGI4MTIzLi5jYTgwZGRjY2QxNDI4NDM5NWZhMTgxMDM3MjM4YzMzZDg0MTU3Y2FlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcApAQCAtODc1LDE0ICs4NzUsMTUgQEAg
Ym9vbCBEcmFnQ29udHJvbGxlcjo6c3RhcnREcmFnKEZyYW1lJiBzcmMsIGNvbnN0IERyYWdTdGF0
ZSYgc3RhdGUsIERyYWdPcGVyYXRpb24KICAgICAgICAgICAgICAgICAgICAgcGFzdGVib2FyZFdy
aXRlckRhdGEuc2V0UGxhaW5UZXh0KFdURk1vdmUocGxhaW5UZXh0KSk7CiAgICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBtdXN0VXNlTGVnYWN5
RHJhZ0NsaWVudCA9IHRydWU7Ci0KKyAgICAgICAgICAgICAgICBpZiAobXVzdFVzZUxlZ2FjeURy
YWdDbGllbnQpIHsKICNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0oR1RLKQotICAgICAg
ICAgICAgICAgIHNyYy5lZGl0b3IoKS53cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChkYXRhVHJh
bnNmZXIucGFzdGVib2FyZCgpKTsKKyAgICAgICAgICAgICAgICAgICAgc3JjLmVkaXRvcigpLndy
aXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKGRhdGFUcmFuc2Zlci5wYXN0ZWJvYXJkKCkpOwogI2Vs
c2UKLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwgb3RoZXIgcGxhdGZvcm1z
IHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCi0gICAgICAgICAgICAgICAgZGF0YVRyYW5z
ZmVyLnBhc3RlYm9hcmQoKS53cml0ZVNlbGVjdGlvbigqc2VsZWN0aW9uUmFuZ2UsIHNyYy5lZGl0
b3IoKS5jYW5TbWFydENvcHlPckRlbGV0ZSgpLCBzcmMsIEluY2x1ZGVJbWFnZUFsdFRleHRGb3JE
YXRhVHJhbnNmZXIpOworICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwg
b3RoZXIgcGxhdGZvcm1zIHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCisgICAgICAgICAg
ICAgICAgICAgIGRhdGFUcmFuc2Zlci5wYXN0ZWJvYXJkKCkud3JpdGVTZWxlY3Rpb24oKnNlbGVj
dGlvblJhbmdlLCBzcmMuZWRpdG9yKCkuY2FuU21hcnRDb3B5T3JEZWxldGUoKSwgc3JjLCBJbmNs
dWRlSW1hZ2VBbHRUZXh0Rm9yRGF0YVRyYW5zZmVyKTsKICNlbmRpZgorICAgICAgICAgICAgICAg
IH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBzcmMuZWRpdG9yKCkud3JpdGVTZWxlY3Rpb24o
cGFzdGVib2FyZFdyaXRlckRhdGEpOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBzcmMu
ZWRpdG9yKCkuZGlkV3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bhc3RlYm9hcmRXcml0ZXJEYXRhLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1Bhc3RlYm9hcmRXcml0ZXJEYXRhLmNwcAppbmRleCAxYzg0YWFhMzE2
NThiMjgyZmFiMTE3YzcwYjliMTAyZWM4ZTMyZDVmLi5hNDVhNTJlMTgzNDc4YjAzMmVmZmMzMjUx
YTkzMDgyYzNmYTUwYWNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QYXN0
ZWJvYXJkV3JpdGVyRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGFzdGVi
b2FyZFdyaXRlckRhdGEuY3BwCkBAIC0yNiw2ICsyNiw4IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiUGFzdGVib2FyZFdyaXRlckRhdGEuaCIKIAorI2luY2x1ZGUgIlNoYXJlZEJ1
ZmZlci5oIgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBhc3RlYm9hcmRXcml0ZXJEYXRhOjpQ
YXN0ZWJvYXJkV3JpdGVyRGF0YSgpCkBAIC0zNiw2ICszOCwxNCBAQCBQYXN0ZWJvYXJkV3JpdGVy
RGF0YTo6flBhc3RlYm9hcmRXcml0ZXJEYXRhKCkKIHsKIH0KIAorUGFzdGVib2FyZFdyaXRlckRh
dGE6OldlYkNvbnRlbnQ6OldlYkNvbnRlbnQoKQoreworfQorCitQYXN0ZWJvYXJkV3JpdGVyRGF0
YTo6V2ViQ29udGVudDo6fldlYkNvbnRlbnQoKQoreworfQorCiBib29sIFBhc3RlYm9hcmRXcml0
ZXJEYXRhOjppc0VtcHR5KCkgY29uc3QKIHsKICAgICBpZiAobV9wbGFpblRleHQpCkBAIC02MSw0
ICs3MSwxMSBAQCB2b2lkIFBhc3RlYm9hcmRXcml0ZXJEYXRhOjpzZXRVUkwoVVJMIHVybCkKICAg
ICBtX3VybCA9IFdURk1vdmUodXJsKTsKIH0KIAordm9pZCBQYXN0ZWJvYXJkV3JpdGVyRGF0YTo6
c2V0V2ViQ29udGVudChXZWJDb250ZW50IHdlYkNvbnRlbnQpCit7CisgICAgQVNTRVJUKCFtX3dl
YkNvbnRlbnQpOworCisgICAgbV93ZWJDb250ZW50ID0gd2ViQ29udGVudDsKK30KKwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGFzdGVib2FyZFdyaXRlckRhdGEuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bhc3RlYm9hcmRXcml0ZXJEYXRhLmgKaW5kZXggOWJj
NzY3NTBlN2NjMjFmMzUxYTYwYzhjNzdmMTEwZWQ2NzczMzY1MS4uMmM1YWRjMmQyMjZhZTNjMThm
OTdiZTliMmFiZDgzMTc4ZDZhMDM2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vUGFzdGVib2FyZFdyaXRlckRhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Q
YXN0ZWJvYXJkV3JpdGVyRGF0YS5oCkBAIC0zMSw2ICszMSw4IEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAorY2xhc3MgU2hhcmVkQnVmZmVyOworCiBjbGFzcyBQYXN0ZWJvYXJkV3JpdGVyRGF0
YSBmaW5hbCB7CiBwdWJsaWM6CiAgICAgUGFzdGVib2FyZFdyaXRlckRhdGEoKTsKQEAgLTQzLDYg
KzQ1LDI1IEBAIHB1YmxpYzoKICAgICAgICAgU3RyaW5nIHRleHQ7CiAgICAgfTsKIAorICAgIHN0
cnVjdCBXZWJDb250ZW50IHsKKyAgICAgICAgV2ViQ29udGVudCgpOworICAgICAgICB+V2ViQ29u
dGVudCgpOworCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgICAgIGJvb2wgY2FuU21hcnRDb3B5
T3JEZWxldGU7CisgICAgICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGFJbldlYkFyY2hpdmVG
b3JtYXQ7CisgICAgICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGFJblJURkRGb3JtYXQ7Cisg
ICAgICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGFJblJURkZvcm1hdDsKKyAgICAgICAgLy8g
RklYTUU6IFdoeSBkb24ndCB3ZSB3YW50IHRoaXMgb24gaU9TPworI2lmIFBMQVRGT1JNKE1BQykK
KyAgICAgICAgU3RyaW5nIGRhdGFJbkhUTUxGb3JtYXQ7CisjZW5kaWYKKyAgICAgICAgU3RyaW5n
IGRhdGFJblN0cmluZ0Zvcm1hdDsKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gY2xpZW50VHlwZXM7
CisgICAgICAgIFZlY3RvcjxSZWZQdHI8U2hhcmVkQnVmZmVyPj4gY2xpZW50RGF0YTsKKyNlbmRp
ZgorICAgIH07CisKICAgICBjb25zdCBzdGQ6Om9wdGlvbmFsPFBsYWluVGV4dD4mIHBsYWluVGV4
dCgpIGNvbnN0IHsgcmV0dXJuIG1fcGxhaW5UZXh0OyB9CiAgICAgdm9pZCBzZXRQbGFpblRleHQo
UGxhaW5UZXh0KTsKIApAQCAtNTksOSArODAsMTMgQEAgcHVibGljOgogICAgIGNvbnN0IHN0ZDo6
b3B0aW9uYWw8VVJMPiYgdXJsKCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KICAgICB2b2lkIHNl
dFVSTChVUkwpOwogCisgICAgY29uc3Qgc3RkOjpvcHRpb25hbDxXZWJDb250ZW50PiYgd2ViQ29u
dGVudCgpIGNvbnN0IHsgcmV0dXJuIG1fd2ViQ29udGVudDsgfQorICAgIHZvaWQgc2V0V2ViQ29u
dGVudChXZWJDb250ZW50KTsKKwogcHJpdmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPFBsYWluVGV4
dD4gbV9wbGFpblRleHQ7CiAgICAgc3RkOjpvcHRpb25hbDxVUkw+IG1fdXJsOworICAgIHN0ZDo6
b3B0aW9uYWw8V2ViQ29udGVudD4gbV93ZWJDb250ZW50OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Bhc3RlYm9hcmRXcml0ZXIubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGFzdGVib2FyZFdyaXRlci5tbQppbmRleCBlMGMwMTBiZGI5
N2RhNTc2OGQyMDI5MGY1OWI1NGZmMjg5MjQxN2ZlLi44MjYzN2Y4Y2Q1ZmUwYjAwMDI5Nzk4NTBi
Y2UyMTczYjcwZjdmNWIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
UGFzdGVib2FyZFdyaXRlci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGFz
dGVib2FyZFdyaXRlci5tbQpAQCAtMzAsNiArMzAsNyBAQAogCiAjaW1wb3J0ICJOU1Bhc3RlYm9h
cmRTUEkuaCIKICNpbXBvcnQgIlBhc3RlYm9hcmRXcml0ZXJEYXRhLmgiCisjaW1wb3J0ICJTaGFy
ZWRCdWZmZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zOCw2ICszOSwxNiBAQCBz
dGF0aWMgUmV0YWluUHRyPE5TU3RyaW5nPiB0b1VUSShOU1N0cmluZyAqcGFzdGVib2FyZFR5cGUp
CiAgICAgcmV0dXJuIGFkb3B0TlMoKF9fYnJpZGdlIE5TU3RyaW5nICopVVRUeXBlQ3JlYXRlUHJl
ZmVycmVkSWRlbnRpZmllckZvclRhZyhrVVRUYWdDbGFzc05TUGJvYXJkVHlwZSwgKF9fYnJpZGdl
IENGU3RyaW5nUmVmKXBhc3RlYm9hcmRUeXBlLCBudWxscHRyKSk7CiB9CiAKK3N0YXRpYyBSZXRh
aW5QdHI8TlNTdHJpbmc+IHRvVVRJVW5sZXNzQWxyZWFkeVVUSShOU1N0cmluZyAqdHlwZSkKK3sK
KyAgICBpZiAoVVRUeXBlSXNEZWNsYXJlZCgoX19icmlkZ2UgQ0ZTdHJpbmdSZWYpdHlwZSkgfHwg
VVRUeXBlSXNEeW5hbWljKChfX2JyaWRnZSBDRlN0cmluZ1JlZil0eXBlKSkgeworICAgICAgICAv
LyBUaGlzIGlzIGFscmVhZHkgYSBVVEkuCisgICAgICAgIHJldHVybiB0eXBlOworICAgIH0KKwor
ICAgIHJldHVybiB0b1VUSSh0eXBlKTsKK30KKwogUmV0YWluUHRyPGlkIDxOU1Bhc3RlYm9hcmRX
cml0aW5nPj4gY3JlYXRlUGFzdGVib2FyZFdyaXRlcihjb25zdCBQYXN0ZWJvYXJkV3JpdGVyRGF0
YSYgZGF0YSkKIHsKICAgICBhdXRvIHBhc3RlYm9hcmRJdGVtID0gYWRvcHROUyhbW05TUGFzdGVi
b2FyZEl0ZW0gYWxsb2NdIGluaXRdKTsKQEAgLTQ2LDcgKzU3LDcgQEAgUmV0YWluUHRyPGlkIDxO
U1Bhc3RlYm9hcmRXcml0aW5nPj4gY3JlYXRlUGFzdGVib2FyZFdyaXRlcihjb25zdCBQYXN0ZWJv
YXJkV3JpdGUKICAgICAgICAgW3Bhc3RlYm9hcmRJdGVtIHNldFN0cmluZzpwbGFpblRleHQtPnRl
eHQgZm9yVHlwZTpOU1Bhc3RlYm9hcmRUeXBlU3RyaW5nXTsKICAgICAgICAgaWYgKHBsYWluVGV4
dC0+Y2FuU21hcnRDb3B5T3JEZWxldGUpIHsKICAgICAgICAgICAgIGF1dG8gc21hcnRQYXN0ZVR5
cGUgPSBhZG9wdE5TKChfX2JyaWRnZSBOU1N0cmluZyAqKVVUVHlwZUNyZWF0ZVByZWZlcnJlZElk
ZW50aWZpZXJGb3JUYWcoa1VUVGFnQ2xhc3NOU1Bib2FyZFR5cGUsIChfX2JyaWRnZSBDRlN0cmlu
Z1JlZilfTlhTbWFydFBhc3RlLCBudWxscHRyKSk7Ci0gICAgICAgICAgICBbcGFzdGVib2FyZEl0
ZW0gc2V0RGF0YTpuaWwgZm9yVHlwZTpzbWFydFBhc3RlVHlwZS5nZXQoKV07CisgICAgICAgICAg
ICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTpbTlNEYXRhIGRhdGFdIGZvclR5cGU6c21hcnRQYXN0
ZVR5cGUuZ2V0KCldOwogICAgICAgICB9CiAgICAgfQogCkBAIC04Myw2ICs5NCwyOCBAQCBSZXRh
aW5QdHI8aWQgPE5TUGFzdGVib2FyZFdyaXRpbmc+PiBjcmVhdGVQYXN0ZWJvYXJkV3JpdGVyKGNv
bnN0IFBhc3RlYm9hcmRXcml0ZQogICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0U3RyaW5nOnVz
ZXJWaXNpYmxlU3RyaW5nIGZvclR5cGU6TlNQYXN0ZWJvYXJkVHlwZVN0cmluZ107CiAgICAgfQog
CisgICAgaWYgKGF1dG8mIHdlYkNvbnRlbnQgPSBkYXRhLndlYkNvbnRlbnQoKSkgeworICAgICAg
ICBpZiAod2ViQ29udGVudC0+Y2FuU21hcnRDb3B5T3JEZWxldGUpIHsKKyAgICAgICAgICAgIGF1
dG8gc21hcnRQYXN0ZVR5cGUgPSBhZG9wdE5TKChfX2JyaWRnZSBOU1N0cmluZyAqKVVUVHlwZUNy
ZWF0ZVByZWZlcnJlZElkZW50aWZpZXJGb3JUYWcoa1VUVGFnQ2xhc3NOU1Bib2FyZFR5cGUsIChf
X2JyaWRnZSBDRlN0cmluZ1JlZilfTlhTbWFydFBhc3RlLCBudWxscHRyKSk7CisgICAgICAgICAg
ICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTpbTlNEYXRhIGRhdGFdIGZvclR5cGU6c21hcnRQYXN0
ZVR5cGUuZ2V0KCldOworICAgICAgICB9CisgICAgICAgIGlmICh3ZWJDb250ZW50LT5kYXRhSW5X
ZWJBcmNoaXZlRm9ybWF0KSB7CisgICAgICAgICAgICBhdXRvIHdlYkFyY2hpdmVUeXBlID0gYWRv
cHROUygoX19icmlkZ2UgTlNTdHJpbmcgKilVVFR5cGVDcmVhdGVQcmVmZXJyZWRJZGVudGlmaWVy
Rm9yVGFnKGtVVFRhZ0NsYXNzTlNQYm9hcmRUeXBlLCAoX19icmlkZ2UgQ0ZTdHJpbmdSZWYpQCJB
cHBsZSBXZWIgQXJjaGl2ZSBwYXN0ZWJvYXJkIHR5cGUiLCBudWxscHRyKSk7CisgICAgICAgICAg
ICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTp3ZWJDb250ZW50LT5kYXRhSW5XZWJBcmNoaXZlRm9y
bWF0LT5jcmVhdGVOU0RhdGEoKS5nZXQoKSBmb3JUeXBlOndlYkFyY2hpdmVUeXBlLmdldCgpXTsK
KyAgICAgICAgfQorICAgICAgICBpZiAod2ViQ29udGVudC0+ZGF0YUluUlRGREZvcm1hdCkKKyAg
ICAgICAgICAgIFtwYXN0ZWJvYXJkSXRlbSBzZXREYXRhOndlYkNvbnRlbnQtPmRhdGFJblJURkRG
b3JtYXQtPmNyZWF0ZU5TRGF0YSgpLmdldCgpIGZvclR5cGU6TlNQYXN0ZWJvYXJkVHlwZVJURkRd
OworICAgICAgICBpZiAod2ViQ29udGVudC0+ZGF0YUluUlRGRm9ybWF0KQorICAgICAgICAgICAg
W3Bhc3RlYm9hcmRJdGVtIHNldERhdGE6d2ViQ29udGVudC0+ZGF0YUluUlRGRm9ybWF0LT5jcmVh
dGVOU0RhdGEoKS5nZXQoKSBmb3JUeXBlOk5TUGFzdGVib2FyZFR5cGVSVEZdOworICAgICAgICBp
ZiAoIXdlYkNvbnRlbnQtPmRhdGFJbkhUTUxGb3JtYXQuaXNOdWxsKCkpCisgICAgICAgICAgICBb
cGFzdGVib2FyZEl0ZW0gc2V0U3RyaW5nOndlYkNvbnRlbnQtPmRhdGFJbkhUTUxGb3JtYXQgZm9y
VHlwZTpOU1Bhc3RlYm9hcmRUeXBlSFRNTF07CisgICAgICAgIGlmICghd2ViQ29udGVudC0+ZGF0
YUluU3RyaW5nRm9ybWF0LmlzTnVsbCgpKQorICAgICAgICAgICAgW3Bhc3RlYm9hcmRJdGVtIHNl
dFN0cmluZzp3ZWJDb250ZW50LT5kYXRhSW5TdHJpbmdGb3JtYXQgZm9yVHlwZTpOU1Bhc3RlYm9h
cmRUeXBlU3RyaW5nXTsKKworICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgd2ViQ29u
dGVudC0+Y2xpZW50VHlwZXMuc2l6ZSgpOyArK2kpCisgICAgICAgICAgICBbcGFzdGVib2FyZEl0
ZW0gc2V0RGF0YTp3ZWJDb250ZW50LT5jbGllbnREYXRhW2ldLT5jcmVhdGVOU0RhdGEoKS5nZXQo
KSBmb3JUeXBlOnRvVVRJVW5sZXNzQWxyZWFkeVVUSSh3ZWJDb250ZW50LT5jbGllbnRUeXBlc1tp
XSkuZ2V0KCldOworICAgIH0KKwogICAgIHJldHVybiBwYXN0ZWJvYXJkSXRlbTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303710</attachid>
            <date>2017-03-07 13:11:38 -0800</date>
            <delta_ts>2017-03-07 13:20:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169298-20170307131138.patch</filename>
            <type>text/plain</type>
            <size>11309</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzNTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGM0ODJmMDZmYTQ5ZmE4
MzVlODU1OTljOWQwOWE3ZmUxM2ZkZTBmNy4uZjNhZDgwYTcyYmQwOWVkNTViZWJkZWU2MDM2ZWI3
ZjFlNTUzODIyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE3LTAzLTA3ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHRoZSBuZXcg
Y29kZSBwYXRoIHdoZW4gZHJhZ2dpbmcgd2ViIGNvbnRlbnRzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkyOTgKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6CisgICAgICAg
ICogZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6d3JpdGVTZWxlY3Rpb24pOgorICAgICAgICBBZGQgYSBuZXcgZnVuY3Rpb24gdGhhdCB3cml0
ZXMgdGhlIHNlbGVjdGlvbiB0byBhIHdyaXRlciBvYmplY3QuCisKKyAgICAgICAgKiBwYWdlL0Ry
YWdDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdDb250cm9sbGVyOjpzdGFy
dERyYWcpOgorICAgICAgICBVc2UgdGhlIG5ldyB3cml0ZVNlbGVjdGlvbiBpZiBtdXN0VXNlTGVn
YWN5RHJhZ0NsaWVudCBpcyBmYWxzZS4KKworICAgICAgICAqIHBsYXRmb3JtL1Bhc3RlYm9hcmRX
cml0ZXJEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmRXcml0ZXJEYXRhOjpX
ZWJDb250ZW50OjpXZWJDb250ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmRXcml0
ZXJEYXRhOjpXZWJDb250ZW50Ojp+V2ViQ29udGVudCk6CisgICAgICAgIChXZWJDb3JlOjpQYXN0
ZWJvYXJkV3JpdGVyRGF0YTo6c2V0V2ViQ29udGVudCk6CisgICAgICAgICogcGxhdGZvcm0vUGFz
dGVib2FyZFdyaXRlckRhdGEuaDoKKyAgICAgICAgQWRkIGdldHRlcnMgYW5kIHNldHRlcnMuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGFzdGVib2FyZFdyaXRlci5tbToKKyAgICAgICAgKFdl
YkNvcmU6OnRvVVRJVW5sZXNzQWxyZWFkeVVUSSk6CisgICAgICAgIEFkZCBhIGhlbHBlci4KKwor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUGFzdGVib2FyZFdyaXRlcik6CisgICAgICAgIENvbnZl
cnQgd2ViIGNvbnRlbnQgdG8gcGFzdGVib2FyZCB0eXBlcy4KKwogMjAxNy0wMy0wNyAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIFBhcnNpbmcgZm9u
dCBkZXNjcmlwdG9ycyBpbnNpZGUgQGZvbnQtZmFjZSBuZWVkcyB0byBhY2NlcHQgcmFuZ2VzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9FZGl0b3IuaAppbmRleCBiOWI2ZTA2NGM4NTUxOTY3OTE2YzgzYTY0Zjg3MzEw
OWM5YzA1ODdlLi42MzQ4Y2NlMDUzMGUwODMyMjFkYmM2YTVhMDg4YWZiMzZhZGY3MTI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmgKQEAgLTY2LDYgKzY2LDcgQEAgY2xhc3MgSGl0VGVzdFJlc3Vs
dDsKIGNsYXNzIEtleWJvYXJkRXZlbnQ7CiBjbGFzcyBLaWxsUmluZzsKIGNsYXNzIFBhc3RlYm9h
cmQ7CitjbGFzcyBQYXN0ZWJvYXJkV3JpdGVyRGF0YTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNs
YXNzIEZvbnQ7CiBjbGFzcyBTcGVsbENoZWNrUmVxdWVzdDsKQEAgLTQ2OSw2ICs0NzAsNyBAQCBw
dWJsaWM6CiAjaWYgUExBVEZPUk0oQ09DT0EpIHx8IFBMQVRGT1JNKEdUSykKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmKTsKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoUGFzdGVib2FyZCYs
IEVsZW1lbnQmIGltYWdlRWxlbWVudCwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiB0aXRsZSk7
CisgICAgdm9pZCB3cml0ZVNlbGVjdGlvbihQYXN0ZWJvYXJkV3JpdGVyRGF0YSYpOwogI2VuZGlm
CiAKICNpZiBFTkFCTEUoVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pICYmICFQTEFURk9STShJ
T1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0VkaXRvckNvY29h
Lm1tIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbQppbmRleCA2
NjhkNzZhNTk3MTNhMTczMmJjOTdlZmFjNzUwODhkNzZlZDc0NWM4Li40MDI4NmY0MWQyZTcwNGFh
ODMxYTg0NThiNTAzMzUxNTMzNjgxNGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL2NvY29hL0VkaXRvckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29j
b2EvRWRpdG9yQ29jb2EubW0KQEAgLTE3MSw2ICsxNzEsMjUgQEAgdm9pZCBFZGl0b3I6OndyaXRl
U2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmIHBhc3RlYm9hcmQpCiAgICAgcGFzdGVi
b2FyZC53cml0ZShjb250ZW50KTsKIH0KIAordm9pZCBFZGl0b3I6OndyaXRlU2VsZWN0aW9uKFBh
c3RlYm9hcmRXcml0ZXJEYXRhJiBwYXN0ZWJvYXJkV3JpdGVyRGF0YSkKK3sKKyAgICBOU0F0dHJp
YnV0ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmcgPSBhdHRyaWJ1dGVkU3RyaW5nRnJvbVJhbmdl
KCpzZWxlY3RlZFJhbmdlKCkpOworCisgICAgUGFzdGVib2FyZFdyaXRlckRhdGE6OldlYkNvbnRl
bnQgd2ViQ29udGVudDsKKyAgICB3ZWJDb250ZW50LmNhblNtYXJ0Q29weU9yRGVsZXRlID0gY2Fu
U21hcnRDb3B5T3JEZWxldGUoKTsKKyAgICB3ZWJDb250ZW50LmRhdGFJbldlYkFyY2hpdmVGb3Jt
YXQgPSBzZWxlY3Rpb25JbldlYkFyY2hpdmVGb3JtYXQoKTsKKyAgICB3ZWJDb250ZW50LmRhdGFJ
blJURkRGb3JtYXQgPSBhdHRyaWJ1dGVkU3RyaW5nLmNvbnRhaW5zQXR0YWNobWVudHMgPyBkYXRh
SW5SVEZERm9ybWF0KGF0dHJpYnV0ZWRTdHJpbmcpIDogbnVsbHB0cjsKKyAgICB3ZWJDb250ZW50
LmRhdGFJblJURkZvcm1hdCA9IGRhdGFJblJURkZvcm1hdChhdHRyaWJ1dGVkU3RyaW5nKTsKKyAg
ICAvLyBGSVhNRTogV2h5IGRvbid0IHdlIHdhbnQgdGhpcyBvbiBpT1M/CisjaWYgUExBVEZPUk0o
TUFDKQorICAgIHdlYkNvbnRlbnQuZGF0YUluSFRNTEZvcm1hdCA9IHNlbGVjdGlvbkluSFRNTEZv
cm1hdCgpOworI2VuZGlmCisgICAgd2ViQ29udGVudC5kYXRhSW5TdHJpbmdGb3JtYXQgPSBzdHJp
bmdTZWxlY3Rpb25Gb3JQYXN0ZWJvYXJkV2l0aEltYWdlQWx0VGV4dCgpOworICAgIGNsaWVudCgp
LT5nZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZvclJhbmdlKHNlbGVjdGVkUmFuZ2UoKS5nZXQoKSwg
d2ViQ29udGVudC5jbGllbnRUeXBlcywgd2ViQ29udGVudC5jbGllbnREYXRhKTsKKworICAgIHBh
c3RlYm9hcmRXcml0ZXJEYXRhLnNldFdlYkNvbnRlbnQoV1RGTW92ZSh3ZWJDb250ZW50KSk7Cit9
CisKIFJlZlB0cjxTaGFyZWRCdWZmZXI+IEVkaXRvcjo6c2VsZWN0aW9uSW5XZWJBcmNoaXZlRm9y
bWF0KCkKIHsKICAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oJm1fZnJhbWUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RyYWdDb250cm9sbGVyLmNwcAppbmRleCBkNjAxNjkxNDliZTQ3MDhlODRkOWFlNzVkYmFmODQ4
MTc0MGI4MTIzLi5lMjIzYzJmNzA2ZDViNjk2ZDIyNGJhYjdjYmNmNGJjYmJiOWM4YmY4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcApAQCAtODc1LDEzICs4NzUsMTYgQEAg
Ym9vbCBEcmFnQ29udHJvbGxlcjo6c3RhcnREcmFnKEZyYW1lJiBzcmMsIGNvbnN0IERyYWdTdGF0
ZSYgc3RhdGUsIERyYWdPcGVyYXRpb24KICAgICAgICAgICAgICAgICAgICAgcGFzdGVib2FyZFdy
aXRlckRhdGEuc2V0UGxhaW5UZXh0KFdURk1vdmUocGxhaW5UZXh0KSk7CiAgICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBtdXN0VXNlTGVnYWN5
RHJhZ0NsaWVudCA9IHRydWU7Ci0KKyAgICAgICAgICAgICAgICBpZiAobXVzdFVzZUxlZ2FjeURy
YWdDbGllbnQpIHsKICNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0oR1RLKQotICAgICAg
ICAgICAgICAgIHNyYy5lZGl0b3IoKS53cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChkYXRhVHJh
bnNmZXIucGFzdGVib2FyZCgpKTsKKyAgICAgICAgICAgICAgICAgICAgc3JjLmVkaXRvcigpLndy
aXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKGRhdGFUcmFuc2Zlci5wYXN0ZWJvYXJkKCkpOwogI2Vs
c2UKLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwgb3RoZXIgcGxhdGZvcm1z
IHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCi0gICAgICAgICAgICAgICAgZGF0YVRyYW5z
ZmVyLnBhc3RlYm9hcmQoKS53cml0ZVNlbGVjdGlvbigqc2VsZWN0aW9uUmFuZ2UsIHNyYy5lZGl0
b3IoKS5jYW5TbWFydENvcHlPckRlbGV0ZSgpLCBzcmMsIEluY2x1ZGVJbWFnZUFsdFRleHRGb3JE
YXRhVHJhbnNmZXIpOworICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwg
b3RoZXIgcGxhdGZvcm1zIHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCisgICAgICAgICAg
ICAgICAgICAgIGRhdGFUcmFuc2Zlci5wYXN0ZWJvYXJkKCkud3JpdGVTZWxlY3Rpb24oKnNlbGVj
dGlvblJhbmdlLCBzcmMuZWRpdG9yKCkuY2FuU21hcnRDb3B5T3JEZWxldGUoKSwgc3JjLCBJbmNs
dWRlSW1hZ2VBbHRUZXh0Rm9yRGF0YVRyYW5zZmVyKTsKKyNlbmRpZgorICAgICAgICAgICAgICAg
IH0gZWxzZQorI2lmIFBMQVRGT1JNKENPQ09BKQorICAgICAgICAgICAgICAgICAgICBzcmMuZWRp
dG9yKCkud3JpdGVTZWxlY3Rpb24ocGFzdGVib2FyZFdyaXRlckRhdGEpOwogI2VuZGlmCiAgICAg
ICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bhc3RlYm9h
cmRXcml0ZXJEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bhc3RlYm9hcmRXcml0
ZXJEYXRhLmNwcAppbmRleCAxYzg0YWFhMzE2NThiMjgyZmFiMTE3YzcwYjliMTAyZWM4ZTMyZDVm
Li5hNDVhNTJlMTgzNDc4YjAzMmVmZmMzMjUxYTkzMDgyYzNmYTUwYWNlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QYXN0ZWJvYXJkV3JpdGVyRGF0YS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGFzdGVib2FyZFdyaXRlckRhdGEuY3BwCkBAIC0yNiw2ICsy
Niw4IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGFzdGVib2FyZFdyaXRlckRh
dGEuaCIKIAorI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIFBhc3RlYm9hcmRXcml0ZXJEYXRhOjpQYXN0ZWJvYXJkV3JpdGVyRGF0YSgpCkBAIC0zNiw2
ICszOCwxNCBAQCBQYXN0ZWJvYXJkV3JpdGVyRGF0YTo6flBhc3RlYm9hcmRXcml0ZXJEYXRhKCkK
IHsKIH0KIAorUGFzdGVib2FyZFdyaXRlckRhdGE6OldlYkNvbnRlbnQ6OldlYkNvbnRlbnQoKQor
eworfQorCitQYXN0ZWJvYXJkV3JpdGVyRGF0YTo6V2ViQ29udGVudDo6fldlYkNvbnRlbnQoKQor
eworfQorCiBib29sIFBhc3RlYm9hcmRXcml0ZXJEYXRhOjppc0VtcHR5KCkgY29uc3QKIHsKICAg
ICBpZiAobV9wbGFpblRleHQpCkBAIC02MSw0ICs3MSwxMSBAQCB2b2lkIFBhc3RlYm9hcmRXcml0
ZXJEYXRhOjpzZXRVUkwoVVJMIHVybCkKICAgICBtX3VybCA9IFdURk1vdmUodXJsKTsKIH0KIAor
dm9pZCBQYXN0ZWJvYXJkV3JpdGVyRGF0YTo6c2V0V2ViQ29udGVudChXZWJDb250ZW50IHdlYkNv
bnRlbnQpCit7CisgICAgQVNTRVJUKCFtX3dlYkNvbnRlbnQpOworCisgICAgbV93ZWJDb250ZW50
ID0gd2ViQ29udGVudDsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vUGFzdGVib2FyZFdyaXRlckRhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bhc3Rl
Ym9hcmRXcml0ZXJEYXRhLmgKaW5kZXggOWJjNzY3NTBlN2NjMjFmMzUxYTYwYzhjNzdmMTEwZWQ2
NzczMzY1MS4uMmM1YWRjMmQyMjZhZTNjMThmOTdiZTliMmFiZDgzMTc4ZDZhMDM2ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGFzdGVib2FyZFdyaXRlckRhdGEuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QYXN0ZWJvYXJkV3JpdGVyRGF0YS5oCkBAIC0zMSw2
ICszMSw4IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgU2hhcmVkQnVmZmVyOwor
CiBjbGFzcyBQYXN0ZWJvYXJkV3JpdGVyRGF0YSBmaW5hbCB7CiBwdWJsaWM6CiAgICAgUGFzdGVi
b2FyZFdyaXRlckRhdGEoKTsKQEAgLTQzLDYgKzQ1LDI1IEBAIHB1YmxpYzoKICAgICAgICAgU3Ry
aW5nIHRleHQ7CiAgICAgfTsKIAorICAgIHN0cnVjdCBXZWJDb250ZW50IHsKKyAgICAgICAgV2Vi
Q29udGVudCgpOworICAgICAgICB+V2ViQ29udGVudCgpOworCisjaWYgUExBVEZPUk0oQ09DT0Ep
CisgICAgICAgIGJvb2wgY2FuU21hcnRDb3B5T3JEZWxldGU7CisgICAgICAgIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+IGRhdGFJbldlYkFyY2hpdmVGb3JtYXQ7CisgICAgICAgIFJlZlB0cjxTaGFyZWRC
dWZmZXI+IGRhdGFJblJURkRGb3JtYXQ7CisgICAgICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRh
dGFJblJURkZvcm1hdDsKKyAgICAgICAgLy8gRklYTUU6IFdoeSBkb24ndCB3ZSB3YW50IHRoaXMg
b24gaU9TPworI2lmIFBMQVRGT1JNKE1BQykKKyAgICAgICAgU3RyaW5nIGRhdGFJbkhUTUxGb3Jt
YXQ7CisjZW5kaWYKKyAgICAgICAgU3RyaW5nIGRhdGFJblN0cmluZ0Zvcm1hdDsKKyAgICAgICAg
VmVjdG9yPFN0cmluZz4gY2xpZW50VHlwZXM7CisgICAgICAgIFZlY3RvcjxSZWZQdHI8U2hhcmVk
QnVmZmVyPj4gY2xpZW50RGF0YTsKKyNlbmRpZgorICAgIH07CisKICAgICBjb25zdCBzdGQ6Om9w
dGlvbmFsPFBsYWluVGV4dD4mIHBsYWluVGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fcGxhaW5UZXh0
OyB9CiAgICAgdm9pZCBzZXRQbGFpblRleHQoUGxhaW5UZXh0KTsKIApAQCAtNTksOSArODAsMTMg
QEAgcHVibGljOgogICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8VVJMPiYgdXJsKCkgY29uc3QgeyBy
ZXR1cm4gbV91cmw7IH0KICAgICB2b2lkIHNldFVSTChVUkwpOwogCisgICAgY29uc3Qgc3RkOjpv
cHRpb25hbDxXZWJDb250ZW50PiYgd2ViQ29udGVudCgpIGNvbnN0IHsgcmV0dXJuIG1fd2ViQ29u
dGVudDsgfQorICAgIHZvaWQgc2V0V2ViQ29udGVudChXZWJDb250ZW50KTsKKwogcHJpdmF0ZToK
ICAgICBzdGQ6Om9wdGlvbmFsPFBsYWluVGV4dD4gbV9wbGFpblRleHQ7CiAgICAgc3RkOjpvcHRp
b25hbDxVUkw+IG1fdXJsOworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29udGVudD4gbV93ZWJDb250
ZW50OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Bh
c3RlYm9hcmRXcml0ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGFzdGVib2Fy
ZFdyaXRlci5tbQppbmRleCBlMGMwMTBiZGI5N2RhNTc2OGQyMDI5MGY1OWI1NGZmMjg5MjQxN2Zl
Li44MjYzN2Y4Y2Q1ZmUwYjAwMDI5Nzk4NTBiY2UyMTczYjcwZjdmNWIwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGFzdGVib2FyZFdyaXRlci5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGFzdGVib2FyZFdyaXRlci5tbQpAQCAtMzAsNiArMzAs
NyBAQAogCiAjaW1wb3J0ICJOU1Bhc3RlYm9hcmRTUEkuaCIKICNpbXBvcnQgIlBhc3RlYm9hcmRX
cml0ZXJEYXRhLmgiCisjaW1wb3J0ICJTaGFyZWRCdWZmZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCkBAIC0zOCw2ICszOSwxNiBAQCBzdGF0aWMgUmV0YWluUHRyPE5TU3RyaW5nPiB0b1VU
SShOU1N0cmluZyAqcGFzdGVib2FyZFR5cGUpCiAgICAgcmV0dXJuIGFkb3B0TlMoKF9fYnJpZGdl
IE5TU3RyaW5nICopVVRUeXBlQ3JlYXRlUHJlZmVycmVkSWRlbnRpZmllckZvclRhZyhrVVRUYWdD
bGFzc05TUGJvYXJkVHlwZSwgKF9fYnJpZGdlIENGU3RyaW5nUmVmKXBhc3RlYm9hcmRUeXBlLCBu
dWxscHRyKSk7CiB9CiAKK3N0YXRpYyBSZXRhaW5QdHI8TlNTdHJpbmc+IHRvVVRJVW5sZXNzQWxy
ZWFkeVVUSShOU1N0cmluZyAqdHlwZSkKK3sKKyAgICBpZiAoVVRUeXBlSXNEZWNsYXJlZCgoX19i
cmlkZ2UgQ0ZTdHJpbmdSZWYpdHlwZSkgfHwgVVRUeXBlSXNEeW5hbWljKChfX2JyaWRnZSBDRlN0
cmluZ1JlZil0eXBlKSkgeworICAgICAgICAvLyBUaGlzIGlzIGFscmVhZHkgYSBVVEkuCisgICAg
ICAgIHJldHVybiB0eXBlOworICAgIH0KKworICAgIHJldHVybiB0b1VUSSh0eXBlKTsKK30KKwog
UmV0YWluUHRyPGlkIDxOU1Bhc3RlYm9hcmRXcml0aW5nPj4gY3JlYXRlUGFzdGVib2FyZFdyaXRl
cihjb25zdCBQYXN0ZWJvYXJkV3JpdGVyRGF0YSYgZGF0YSkKIHsKICAgICBhdXRvIHBhc3RlYm9h
cmRJdGVtID0gYWRvcHROUyhbW05TUGFzdGVib2FyZEl0ZW0gYWxsb2NdIGluaXRdKTsKQEAgLTQ2
LDcgKzU3LDcgQEAgUmV0YWluUHRyPGlkIDxOU1Bhc3RlYm9hcmRXcml0aW5nPj4gY3JlYXRlUGFz
dGVib2FyZFdyaXRlcihjb25zdCBQYXN0ZWJvYXJkV3JpdGUKICAgICAgICAgW3Bhc3RlYm9hcmRJ
dGVtIHNldFN0cmluZzpwbGFpblRleHQtPnRleHQgZm9yVHlwZTpOU1Bhc3RlYm9hcmRUeXBlU3Ry
aW5nXTsKICAgICAgICAgaWYgKHBsYWluVGV4dC0+Y2FuU21hcnRDb3B5T3JEZWxldGUpIHsKICAg
ICAgICAgICAgIGF1dG8gc21hcnRQYXN0ZVR5cGUgPSBhZG9wdE5TKChfX2JyaWRnZSBOU1N0cmlu
ZyAqKVVUVHlwZUNyZWF0ZVByZWZlcnJlZElkZW50aWZpZXJGb3JUYWcoa1VUVGFnQ2xhc3NOU1Bi
b2FyZFR5cGUsIChfX2JyaWRnZSBDRlN0cmluZ1JlZilfTlhTbWFydFBhc3RlLCBudWxscHRyKSk7
Ci0gICAgICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTpuaWwgZm9yVHlwZTpzbWFydFBh
c3RlVHlwZS5nZXQoKV07CisgICAgICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTpbTlNE
YXRhIGRhdGFdIGZvclR5cGU6c21hcnRQYXN0ZVR5cGUuZ2V0KCldOwogICAgICAgICB9CiAgICAg
fQogCkBAIC04Myw2ICs5NCwyOCBAQCBSZXRhaW5QdHI8aWQgPE5TUGFzdGVib2FyZFdyaXRpbmc+
PiBjcmVhdGVQYXN0ZWJvYXJkV3JpdGVyKGNvbnN0IFBhc3RlYm9hcmRXcml0ZQogICAgICAgICBb
cGFzdGVib2FyZEl0ZW0gc2V0U3RyaW5nOnVzZXJWaXNpYmxlU3RyaW5nIGZvclR5cGU6TlNQYXN0
ZWJvYXJkVHlwZVN0cmluZ107CiAgICAgfQogCisgICAgaWYgKGF1dG8mIHdlYkNvbnRlbnQgPSBk
YXRhLndlYkNvbnRlbnQoKSkgeworICAgICAgICBpZiAod2ViQ29udGVudC0+Y2FuU21hcnRDb3B5
T3JEZWxldGUpIHsKKyAgICAgICAgICAgIGF1dG8gc21hcnRQYXN0ZVR5cGUgPSBhZG9wdE5TKChf
X2JyaWRnZSBOU1N0cmluZyAqKVVUVHlwZUNyZWF0ZVByZWZlcnJlZElkZW50aWZpZXJGb3JUYWco
a1VUVGFnQ2xhc3NOU1Bib2FyZFR5cGUsIChfX2JyaWRnZSBDRlN0cmluZ1JlZilfTlhTbWFydFBh
c3RlLCBudWxscHRyKSk7CisgICAgICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTpbTlNE
YXRhIGRhdGFdIGZvclR5cGU6c21hcnRQYXN0ZVR5cGUuZ2V0KCldOworICAgICAgICB9CisgICAg
ICAgIGlmICh3ZWJDb250ZW50LT5kYXRhSW5XZWJBcmNoaXZlRm9ybWF0KSB7CisgICAgICAgICAg
ICBhdXRvIHdlYkFyY2hpdmVUeXBlID0gYWRvcHROUygoX19icmlkZ2UgTlNTdHJpbmcgKilVVFR5
cGVDcmVhdGVQcmVmZXJyZWRJZGVudGlmaWVyRm9yVGFnKGtVVFRhZ0NsYXNzTlNQYm9hcmRUeXBl
LCAoX19icmlkZ2UgQ0ZTdHJpbmdSZWYpQCJBcHBsZSBXZWIgQXJjaGl2ZSBwYXN0ZWJvYXJkIHR5
cGUiLCBudWxscHRyKSk7CisgICAgICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTp3ZWJD
b250ZW50LT5kYXRhSW5XZWJBcmNoaXZlRm9ybWF0LT5jcmVhdGVOU0RhdGEoKS5nZXQoKSBmb3JU
eXBlOndlYkFyY2hpdmVUeXBlLmdldCgpXTsKKyAgICAgICAgfQorICAgICAgICBpZiAod2ViQ29u
dGVudC0+ZGF0YUluUlRGREZvcm1hdCkKKyAgICAgICAgICAgIFtwYXN0ZWJvYXJkSXRlbSBzZXRE
YXRhOndlYkNvbnRlbnQtPmRhdGFJblJURkRGb3JtYXQtPmNyZWF0ZU5TRGF0YSgpLmdldCgpIGZv
clR5cGU6TlNQYXN0ZWJvYXJkVHlwZVJURkRdOworICAgICAgICBpZiAod2ViQ29udGVudC0+ZGF0
YUluUlRGRm9ybWF0KQorICAgICAgICAgICAgW3Bhc3RlYm9hcmRJdGVtIHNldERhdGE6d2ViQ29u
dGVudC0+ZGF0YUluUlRGRm9ybWF0LT5jcmVhdGVOU0RhdGEoKS5nZXQoKSBmb3JUeXBlOk5TUGFz
dGVib2FyZFR5cGVSVEZdOworICAgICAgICBpZiAoIXdlYkNvbnRlbnQtPmRhdGFJbkhUTUxGb3Jt
YXQuaXNOdWxsKCkpCisgICAgICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0U3RyaW5nOndlYkNv
bnRlbnQtPmRhdGFJbkhUTUxGb3JtYXQgZm9yVHlwZTpOU1Bhc3RlYm9hcmRUeXBlSFRNTF07Cisg
ICAgICAgIGlmICghd2ViQ29udGVudC0+ZGF0YUluU3RyaW5nRm9ybWF0LmlzTnVsbCgpKQorICAg
ICAgICAgICAgW3Bhc3RlYm9hcmRJdGVtIHNldFN0cmluZzp3ZWJDb250ZW50LT5kYXRhSW5TdHJp
bmdGb3JtYXQgZm9yVHlwZTpOU1Bhc3RlYm9hcmRUeXBlU3RyaW5nXTsKKworICAgICAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgd2ViQ29udGVudC0+Y2xpZW50VHlwZXMuc2l6ZSgpOyArK2kp
CisgICAgICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0RGF0YTp3ZWJDb250ZW50LT5jbGllbnRE
YXRhW2ldLT5jcmVhdGVOU0RhdGEoKS5nZXQoKSBmb3JUeXBlOnRvVVRJVW5sZXNzQWxyZWFkeVVU
SSh3ZWJDb250ZW50LT5jbGllbnRUeXBlc1tpXSkuZ2V0KCldOworICAgIH0KKwogICAgIHJldHVy
biBwYXN0ZWJvYXJkSXRlbTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303713</attachid>
            <date>2017-03-07 13:20:36 -0800</date>
            <delta_ts>2017-03-07 13:33:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169298-20170307132036.patch</filename>
            <type>text/plain</type>
            <size>11389</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzNTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGM0ODJmMDZmYTQ5ZmE4
MzVlODU1OTljOWQwOWE3ZmUxM2ZkZTBmNy4uZjNhZDgwYTcyYmQwOWVkNTViZWJkZWU2MDM2ZWI3
ZjFlNTUzODIyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE3LTAzLTA3ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHRoZSBuZXcg
Y29kZSBwYXRoIHdoZW4gZHJhZ2dpbmcgd2ViIGNvbnRlbnRzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkyOTgKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6CisgICAgICAg
ICogZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6d3JpdGVTZWxlY3Rpb24pOgorICAgICAgICBBZGQgYSBuZXcgZnVuY3Rpb24gdGhhdCB3cml0
ZXMgdGhlIHNlbGVjdGlvbiB0byBhIHdyaXRlciBvYmplY3QuCisKKyAgICAgICAgKiBwYWdlL0Ry
YWdDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdDb250cm9sbGVyOjpzdGFy
dERyYWcpOgorICAgICAgICBVc2UgdGhlIG5ldyB3cml0ZVNlbGVjdGlvbiBpZiBtdXN0VXNlTGVn
YWN5RHJhZ0NsaWVudCBpcyBmYWxzZS4KKworICAgICAgICAqIHBsYXRmb3JtL1Bhc3RlYm9hcmRX
cml0ZXJEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmRXcml0ZXJEYXRhOjpX
ZWJDb250ZW50OjpXZWJDb250ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmRXcml0
ZXJEYXRhOjpXZWJDb250ZW50Ojp+V2ViQ29udGVudCk6CisgICAgICAgIChXZWJDb3JlOjpQYXN0
ZWJvYXJkV3JpdGVyRGF0YTo6c2V0V2ViQ29udGVudCk6CisgICAgICAgICogcGxhdGZvcm0vUGFz
dGVib2FyZFdyaXRlckRhdGEuaDoKKyAgICAgICAgQWRkIGdldHRlcnMgYW5kIHNldHRlcnMuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGFzdGVib2FyZFdyaXRlci5tbToKKyAgICAgICAgKFdl
YkNvcmU6OnRvVVRJVW5sZXNzQWxyZWFkeVVUSSk6CisgICAgICAgIEFkZCBhIGhlbHBlci4KKwor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUGFzdGVib2FyZFdyaXRlcik6CisgICAgICAgIENvbnZl
cnQgd2ViIGNvbnRlbnQgdG8gcGFzdGVib2FyZCB0eXBlcy4KKwogMjAxNy0wMy0wNyAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIFBhcnNpbmcgZm9u
dCBkZXNjcmlwdG9ycyBpbnNpZGUgQGZvbnQtZmFjZSBuZWVkcyB0byBhY2NlcHQgcmFuZ2VzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9FZGl0b3IuaAppbmRleCBiOWI2ZTA2NGM4NTUxOTY3OTE2YzgzYTY0Zjg3MzEw
OWM5YzA1ODdlLi42MzQ4Y2NlMDUzMGUwODMyMjFkYmM2YTVhMDg4YWZiMzZhZGY3MTI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvRWRpdG9yLmgKQEAgLTY2LDYgKzY2LDcgQEAgY2xhc3MgSGl0VGVzdFJlc3Vs
dDsKIGNsYXNzIEtleWJvYXJkRXZlbnQ7CiBjbGFzcyBLaWxsUmluZzsKIGNsYXNzIFBhc3RlYm9h
cmQ7CitjbGFzcyBQYXN0ZWJvYXJkV3JpdGVyRGF0YTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNs
YXNzIEZvbnQ7CiBjbGFzcyBTcGVsbENoZWNrUmVxdWVzdDsKQEAgLTQ2OSw2ICs0NzAsNyBAQCBw
dWJsaWM6CiAjaWYgUExBVEZPUk0oQ09DT0EpIHx8IFBMQVRGT1JNKEdUSykKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmKTsKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoUGFzdGVib2FyZCYs
IEVsZW1lbnQmIGltYWdlRWxlbWVudCwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiB0aXRsZSk7
CisgICAgdm9pZCB3cml0ZVNlbGVjdGlvbihQYXN0ZWJvYXJkV3JpdGVyRGF0YSYpOwogI2VuZGlm
CiAKICNpZiBFTkFCTEUoVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pICYmICFQTEFURk9STShJ
T1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0VkaXRvckNvY29h
Lm1tIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9FZGl0b3JDb2NvYS5tbQppbmRleCA2
NjhkNzZhNTk3MTNhMTczMmJjOTdlZmFjNzUwODhkNzZlZDc0NWM4Li40MDI4NmY0MWQyZTcwNGFh
ODMxYTg0NThiNTAzMzUxNTMzNjgxNGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL2NvY29hL0VkaXRvckNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29j
b2EvRWRpdG9yQ29jb2EubW0KQEAgLTE3MSw2ICsxNzEsMjUgQEAgdm9pZCBFZGl0b3I6OndyaXRl
U2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmIHBhc3RlYm9hcmQpCiAgICAgcGFzdGVi
b2FyZC53cml0ZShjb250ZW50KTsKIH0KIAordm9pZCBFZGl0b3I6OndyaXRlU2VsZWN0aW9uKFBh
c3RlYm9hcmRXcml0ZXJEYXRhJiBwYXN0ZWJvYXJkV3JpdGVyRGF0YSkKK3sKKyAgICBOU0F0dHJp
YnV0ZWRTdHJpbmcgKmF0dHJpYnV0ZWRTdHJpbmcgPSBhdHRyaWJ1dGVkU3RyaW5nRnJvbVJhbmdl
KCpzZWxlY3RlZFJhbmdlKCkpOworCisgICAgUGFzdGVib2FyZFdyaXRlckRhdGE6OldlYkNvbnRl
bnQgd2ViQ29udGVudDsKKyAgICB3ZWJDb250ZW50LmNhblNtYXJ0Q29weU9yRGVsZXRlID0gY2Fu
U21hcnRDb3B5T3JEZWxldGUoKTsKKyAgICB3ZWJDb250ZW50LmRhdGFJbldlYkFyY2hpdmVGb3Jt
YXQgPSBzZWxlY3Rpb25JbldlYkFyY2hpdmVGb3JtYXQoKTsKKyAgICB3ZWJDb250ZW50LmRhdGFJ
blJURkRGb3JtYXQgPSBhdHRyaWJ1dGVkU3RyaW5nLmNvbnRhaW5zQXR0YWNobWVudHMgPyBkYXRh
SW5SVEZERm9ybWF0KGF0dHJpYnV0ZWRTdHJpbmcpIDogbnVsbHB0cjsKKyAgICB3ZWJDb250ZW50
LmRhdGFJblJURkZvcm1hdCA9IGRhdGFJblJURkZvcm1hdChhdHRyaWJ1dGVkU3RyaW5nKTsKKyAg
ICAvLyBGSVhNRTogV2h5IGRvbid0IHdlIHdhbnQgdGhpcyBvbiBpT1M/CisjaWYgUExBVEZPUk0o
TUFDKQorICAgIHdlYkNvbnRlbnQuZGF0YUluSFRNTEZvcm1hdCA9IHNlbGVjdGlvbkluSFRNTEZv
cm1hdCgpOworI2VuZGlmCisgICAgd2ViQ29udGVudC5kYXRhSW5TdHJpbmdGb3JtYXQgPSBzdHJp
bmdTZWxlY3Rpb25Gb3JQYXN0ZWJvYXJkV2l0aEltYWdlQWx0VGV4dCgpOworICAgIGNsaWVudCgp
LT5nZXRDbGllbnRQYXN0ZWJvYXJkRGF0YUZvclJhbmdlKHNlbGVjdGVkUmFuZ2UoKS5nZXQoKSwg
d2ViQ29udGVudC5jbGllbnRUeXBlcywgd2ViQ29udGVudC5jbGllbnREYXRhKTsKKworICAgIHBh
c3RlYm9hcmRXcml0ZXJEYXRhLnNldFdlYkNvbnRlbnQoV1RGTW92ZSh3ZWJDb250ZW50KSk7Cit9
CisKIFJlZlB0cjxTaGFyZWRCdWZmZXI+IEVkaXRvcjo6c2VsZWN0aW9uSW5XZWJBcmNoaXZlRm9y
bWF0KCkKIHsKICAgICBSZWZQdHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdl
YkFyY2hpdmU6OmNyZWF0ZUZyb21TZWxlY3Rpb24oJm1fZnJhbWUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9EcmFnQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RyYWdDb250cm9sbGVyLmNwcAppbmRleCBkNjAxNjkxNDliZTQ3MDhlODRkOWFlNzVkYmFmODQ4
MTc0MGI4MTIzLi5iMmQ4MTIwOTFjZTdmMmMxMTM2ZjE1YjdjNjIwM2IzNGQyOTA2YzZhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RyYWdDb250cm9sbGVyLmNwcApAQCAtODc1LDE0ICs4NzUsMTggQEAg
Ym9vbCBEcmFnQ29udHJvbGxlcjo6c3RhcnREcmFnKEZyYW1lJiBzcmMsIGNvbnN0IERyYWdTdGF0
ZSYgc3RhdGUsIERyYWdPcGVyYXRpb24KICAgICAgICAgICAgICAgICAgICAgcGFzdGVib2FyZFdy
aXRlckRhdGEuc2V0UGxhaW5UZXh0KFdURk1vdmUocGxhaW5UZXh0KSk7CiAgICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBtdXN0VXNlTGVnYWN5
RHJhZ0NsaWVudCA9IHRydWU7Ci0KKyAgICAgICAgICAgICAgICBpZiAobXVzdFVzZUxlZ2FjeURy
YWdDbGllbnQpIHsKICNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0oR1RLKQotICAgICAg
ICAgICAgICAgIHNyYy5lZGl0b3IoKS53cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZChkYXRhVHJh
bnNmZXIucGFzdGVib2FyZCgpKTsKKyAgICAgICAgICAgICAgICAgICAgc3JjLmVkaXRvcigpLndy
aXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKGRhdGFUcmFuc2Zlci5wYXN0ZWJvYXJkKCkpOwogI2Vs
c2UKLSAgICAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwgb3RoZXIgcGxhdGZvcm1z
IHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCi0gICAgICAgICAgICAgICAgZGF0YVRyYW5z
ZmVyLnBhc3RlYm9hcmQoKS53cml0ZVNlbGVjdGlvbigqc2VsZWN0aW9uUmFuZ2UsIHNyYy5lZGl0
b3IoKS5jYW5TbWFydENvcHlPckRlbGV0ZSgpLCBzcmMsIEluY2x1ZGVJbWFnZUFsdFRleHRGb3JE
YXRhVHJhbnNmZXIpOworICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTogQ29udmVydCBhbGwg
b3RoZXIgcGxhdGZvcm1zIHRvIG1hdGNoIE1hYyBhbmQgZGVsZXRlIHRoaXMuCisgICAgICAgICAg
ICAgICAgICAgIGRhdGFUcmFuc2Zlci5wYXN0ZWJvYXJkKCkud3JpdGVTZWxlY3Rpb24oKnNlbGVj
dGlvblJhbmdlLCBzcmMuZWRpdG9yKCkuY2FuU21hcnRDb3B5T3JEZWxldGUoKSwgc3JjLCBJbmNs
dWRlSW1hZ2VBbHRUZXh0Rm9yRGF0YVRyYW5zZmVyKTsKKyNlbmRpZgorICAgICAgICAgICAgICAg
IH0gZWxzZSB7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgICAgICAgICAgICAgICAgIHNyYy5l
ZGl0b3IoKS53cml0ZVNlbGVjdGlvbihwYXN0ZWJvYXJkV3JpdGVyRGF0YSk7CiAjZW5kaWYKKyAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIHNyYy5lZGl0b3Io
KS5kaWRXcml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vUGFzdGVib2FyZFdyaXRlckRhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vUGFzdGVib2FyZFdyaXRlckRhdGEuY3BwCmluZGV4IDFjODRhYWEzMTY1OGIyODJm
YWIxMTdjNzBiOWIxMDJlYzhlMzJkNWYuLmE0NWE1MmUxODM0NzhiMDMyZWZmYzMyNTFhOTMwODJj
M2ZhNTBhY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bhc3RlYm9hcmRX
cml0ZXJEYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QYXN0ZWJvYXJkV3Jp
dGVyRGF0YS5jcHAKQEAgLTI2LDYgKzI2LDggQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJQYXN0ZWJvYXJkV3JpdGVyRGF0YS5oIgogCisjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgi
CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogUGFzdGVib2FyZFdyaXRlckRhdGE6OlBhc3RlYm9h
cmRXcml0ZXJEYXRhKCkKQEAgLTM2LDYgKzM4LDE0IEBAIFBhc3RlYm9hcmRXcml0ZXJEYXRhOjp+
UGFzdGVib2FyZFdyaXRlckRhdGEoKQogewogfQogCitQYXN0ZWJvYXJkV3JpdGVyRGF0YTo6V2Vi
Q29udGVudDo6V2ViQ29udGVudCgpCit7Cit9CisKK1Bhc3RlYm9hcmRXcml0ZXJEYXRhOjpXZWJD
b250ZW50Ojp+V2ViQ29udGVudCgpCit7Cit9CisKIGJvb2wgUGFzdGVib2FyZFdyaXRlckRhdGE6
OmlzRW1wdHkoKSBjb25zdAogewogICAgIGlmIChtX3BsYWluVGV4dCkKQEAgLTYxLDQgKzcxLDEx
IEBAIHZvaWQgUGFzdGVib2FyZFdyaXRlckRhdGE6OnNldFVSTChVUkwgdXJsKQogICAgIG1fdXJs
ID0gV1RGTW92ZSh1cmwpOwogfQogCit2b2lkIFBhc3RlYm9hcmRXcml0ZXJEYXRhOjpzZXRXZWJD
b250ZW50KFdlYkNvbnRlbnQgd2ViQ29udGVudCkKK3sKKyAgICBBU1NFUlQoIW1fd2ViQ29udGVu
dCk7CisKKyAgICBtX3dlYkNvbnRlbnQgPSB3ZWJDb250ZW50OworfQorCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QYXN0ZWJvYXJkV3JpdGVyRGF0YS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vUGFzdGVib2FyZFdyaXRlckRhdGEuaAppbmRleCA5YmM3Njc1MGU3
Y2MyMWYzNTFhNjBjOGM3N2YxMTBlZDY3NzMzNjUxLi4yYzVhZGMyZDIyNmFlM2MxOGY5N2JlOWIy
YWJkODMxNzhkNmEwMzZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QYXN0
ZWJvYXJkV3JpdGVyRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Bhc3RlYm9h
cmRXcml0ZXJEYXRhLmgKQEAgLTMxLDYgKzMxLDggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitjbGFzcyBTaGFyZWRCdWZmZXI7CisKIGNsYXNzIFBhc3RlYm9hcmRXcml0ZXJEYXRhIGZpbmFs
IHsKIHB1YmxpYzoKICAgICBQYXN0ZWJvYXJkV3JpdGVyRGF0YSgpOwpAQCAtNDMsNiArNDUsMjUg
QEAgcHVibGljOgogICAgICAgICBTdHJpbmcgdGV4dDsKICAgICB9OwogCisgICAgc3RydWN0IFdl
YkNvbnRlbnQgeworICAgICAgICBXZWJDb250ZW50KCk7CisgICAgICAgIH5XZWJDb250ZW50KCk7
CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICAgICAgYm9vbCBjYW5TbWFydENvcHlPckRlbGV0
ZTsKKyAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YUluV2ViQXJjaGl2ZUZvcm1hdDsK
KyAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YUluUlRGREZvcm1hdDsKKyAgICAgICAg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YUluUlRGRm9ybWF0OworICAgICAgICAvLyBGSVhNRTog
V2h5IGRvbid0IHdlIHdhbnQgdGhpcyBvbiBpT1M/CisjaWYgUExBVEZPUk0oTUFDKQorICAgICAg
ICBTdHJpbmcgZGF0YUluSFRNTEZvcm1hdDsKKyNlbmRpZgorICAgICAgICBTdHJpbmcgZGF0YUlu
U3RyaW5nRm9ybWF0OworICAgICAgICBWZWN0b3I8U3RyaW5nPiBjbGllbnRUeXBlczsKKyAgICAg
ICAgVmVjdG9yPFJlZlB0cjxTaGFyZWRCdWZmZXI+PiBjbGllbnREYXRhOworI2VuZGlmCisgICAg
fTsKKwogICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8UGxhaW5UZXh0PiYgcGxhaW5UZXh0KCkgY29u
c3QgeyByZXR1cm4gbV9wbGFpblRleHQ7IH0KICAgICB2b2lkIHNldFBsYWluVGV4dChQbGFpblRl
eHQpOwogCkBAIC01OSw5ICs4MCwxMyBAQCBwdWJsaWM6CiAgICAgY29uc3Qgc3RkOjpvcHRpb25h
bDxVUkw+JiB1cmwoKSBjb25zdCB7IHJldHVybiBtX3VybDsgfQogICAgIHZvaWQgc2V0VVJMKFVS
TCk7CiAKKyAgICBjb25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNvbnRlbnQ+JiB3ZWJDb250ZW50KCkg
Y29uc3QgeyByZXR1cm4gbV93ZWJDb250ZW50OyB9CisgICAgdm9pZCBzZXRXZWJDb250ZW50KFdl
YkNvbnRlbnQpOworCiBwcml2YXRlOgogICAgIHN0ZDo6b3B0aW9uYWw8UGxhaW5UZXh0PiBtX3Bs
YWluVGV4dDsKICAgICBzdGQ6Om9wdGlvbmFsPFVSTD4gbV91cmw7CisgICAgc3RkOjpvcHRpb25h
bDxXZWJDb250ZW50PiBtX3dlYkNvbnRlbnQ7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGFzdGVib2FyZFdyaXRlci5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9QYXN0ZWJvYXJkV3JpdGVyLm1tCmluZGV4IGUwYzAxMGJkYjk3ZGE1NzY4
ZDIwMjkwZjU5YjU0ZmYyODkyNDE3ZmUuLjgyNjM3ZjhjZDVmZTBiMDAwMjk3OTg1MGJjZTIxNzNi
NzBmN2Y1YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QYXN0ZWJv
YXJkV3JpdGVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QYXN0ZWJvYXJk
V3JpdGVyLm1tCkBAIC0zMCw2ICszMCw3IEBACiAKICNpbXBvcnQgIk5TUGFzdGVib2FyZFNQSS5o
IgogI2ltcG9ydCAiUGFzdGVib2FyZFdyaXRlckRhdGEuaCIKKyNpbXBvcnQgIlNoYXJlZEJ1ZmZl
ci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTM4LDYgKzM5LDE2IEBAIHN0YXRpYyBS
ZXRhaW5QdHI8TlNTdHJpbmc+IHRvVVRJKE5TU3RyaW5nICpwYXN0ZWJvYXJkVHlwZSkKICAgICBy
ZXR1cm4gYWRvcHROUygoX19icmlkZ2UgTlNTdHJpbmcgKilVVFR5cGVDcmVhdGVQcmVmZXJyZWRJ
ZGVudGlmaWVyRm9yVGFnKGtVVFRhZ0NsYXNzTlNQYm9hcmRUeXBlLCAoX19icmlkZ2UgQ0ZTdHJp
bmdSZWYpcGFzdGVib2FyZFR5cGUsIG51bGxwdHIpKTsKIH0KIAorc3RhdGljIFJldGFpblB0cjxO
U1N0cmluZz4gdG9VVElVbmxlc3NBbHJlYWR5VVRJKE5TU3RyaW5nICp0eXBlKQoreworICAgIGlm
IChVVFR5cGVJc0RlY2xhcmVkKChfX2JyaWRnZSBDRlN0cmluZ1JlZil0eXBlKSB8fCBVVFR5cGVJ
c0R5bmFtaWMoKF9fYnJpZGdlIENGU3RyaW5nUmVmKXR5cGUpKSB7CisgICAgICAgIC8vIFRoaXMg
aXMgYWxyZWFkeSBhIFVUSS4KKyAgICAgICAgcmV0dXJuIHR5cGU7CisgICAgfQorCisgICAgcmV0
dXJuIHRvVVRJKHR5cGUpOworfQorCiBSZXRhaW5QdHI8aWQgPE5TUGFzdGVib2FyZFdyaXRpbmc+
PiBjcmVhdGVQYXN0ZWJvYXJkV3JpdGVyKGNvbnN0IFBhc3RlYm9hcmRXcml0ZXJEYXRhJiBkYXRh
KQogewogICAgIGF1dG8gcGFzdGVib2FyZEl0ZW0gPSBhZG9wdE5TKFtbTlNQYXN0ZWJvYXJkSXRl
bSBhbGxvY10gaW5pdF0pOwpAQCAtNDYsNyArNTcsNyBAQCBSZXRhaW5QdHI8aWQgPE5TUGFzdGVi
b2FyZFdyaXRpbmc+PiBjcmVhdGVQYXN0ZWJvYXJkV3JpdGVyKGNvbnN0IFBhc3RlYm9hcmRXcml0
ZQogICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0U3RyaW5nOnBsYWluVGV4dC0+dGV4dCBmb3JU
eXBlOk5TUGFzdGVib2FyZFR5cGVTdHJpbmddOwogICAgICAgICBpZiAocGxhaW5UZXh0LT5jYW5T
bWFydENvcHlPckRlbGV0ZSkgewogICAgICAgICAgICAgYXV0byBzbWFydFBhc3RlVHlwZSA9IGFk
b3B0TlMoKF9fYnJpZGdlIE5TU3RyaW5nICopVVRUeXBlQ3JlYXRlUHJlZmVycmVkSWRlbnRpZmll
ckZvclRhZyhrVVRUYWdDbGFzc05TUGJvYXJkVHlwZSwgKF9fYnJpZGdlIENGU3RyaW5nUmVmKV9O
WFNtYXJ0UGFzdGUsIG51bGxwdHIpKTsKLSAgICAgICAgICAgIFtwYXN0ZWJvYXJkSXRlbSBzZXRE
YXRhOm5pbCBmb3JUeXBlOnNtYXJ0UGFzdGVUeXBlLmdldCgpXTsKKyAgICAgICAgICAgIFtwYXN0
ZWJvYXJkSXRlbSBzZXREYXRhOltOU0RhdGEgZGF0YV0gZm9yVHlwZTpzbWFydFBhc3RlVHlwZS5n
ZXQoKV07CiAgICAgICAgIH0KICAgICB9CiAKQEAgLTgzLDYgKzk0LDI4IEBAIFJldGFpblB0cjxp
ZCA8TlNQYXN0ZWJvYXJkV3JpdGluZz4+IGNyZWF0ZVBhc3RlYm9hcmRXcml0ZXIoY29uc3QgUGFz
dGVib2FyZFdyaXRlCiAgICAgICAgIFtwYXN0ZWJvYXJkSXRlbSBzZXRTdHJpbmc6dXNlclZpc2li
bGVTdHJpbmcgZm9yVHlwZTpOU1Bhc3RlYm9hcmRUeXBlU3RyaW5nXTsKICAgICB9CiAKKyAgICBp
ZiAoYXV0byYgd2ViQ29udGVudCA9IGRhdGEud2ViQ29udGVudCgpKSB7CisgICAgICAgIGlmICh3
ZWJDb250ZW50LT5jYW5TbWFydENvcHlPckRlbGV0ZSkgeworICAgICAgICAgICAgYXV0byBzbWFy
dFBhc3RlVHlwZSA9IGFkb3B0TlMoKF9fYnJpZGdlIE5TU3RyaW5nICopVVRUeXBlQ3JlYXRlUHJl
ZmVycmVkSWRlbnRpZmllckZvclRhZyhrVVRUYWdDbGFzc05TUGJvYXJkVHlwZSwgKF9fYnJpZGdl
IENGU3RyaW5nUmVmKV9OWFNtYXJ0UGFzdGUsIG51bGxwdHIpKTsKKyAgICAgICAgICAgIFtwYXN0
ZWJvYXJkSXRlbSBzZXREYXRhOltOU0RhdGEgZGF0YV0gZm9yVHlwZTpzbWFydFBhc3RlVHlwZS5n
ZXQoKV07CisgICAgICAgIH0KKyAgICAgICAgaWYgKHdlYkNvbnRlbnQtPmRhdGFJbldlYkFyY2hp
dmVGb3JtYXQpIHsKKyAgICAgICAgICAgIGF1dG8gd2ViQXJjaGl2ZVR5cGUgPSBhZG9wdE5TKChf
X2JyaWRnZSBOU1N0cmluZyAqKVVUVHlwZUNyZWF0ZVByZWZlcnJlZElkZW50aWZpZXJGb3JUYWco
a1VUVGFnQ2xhc3NOU1Bib2FyZFR5cGUsIChfX2JyaWRnZSBDRlN0cmluZ1JlZilAIkFwcGxlIFdl
YiBBcmNoaXZlIHBhc3RlYm9hcmQgdHlwZSIsIG51bGxwdHIpKTsKKyAgICAgICAgICAgIFtwYXN0
ZWJvYXJkSXRlbSBzZXREYXRhOndlYkNvbnRlbnQtPmRhdGFJbldlYkFyY2hpdmVGb3JtYXQtPmNy
ZWF0ZU5TRGF0YSgpLmdldCgpIGZvclR5cGU6d2ViQXJjaGl2ZVR5cGUuZ2V0KCldOworICAgICAg
ICB9CisgICAgICAgIGlmICh3ZWJDb250ZW50LT5kYXRhSW5SVEZERm9ybWF0KQorICAgICAgICAg
ICAgW3Bhc3RlYm9hcmRJdGVtIHNldERhdGE6d2ViQ29udGVudC0+ZGF0YUluUlRGREZvcm1hdC0+
Y3JlYXRlTlNEYXRhKCkuZ2V0KCkgZm9yVHlwZTpOU1Bhc3RlYm9hcmRUeXBlUlRGRF07CisgICAg
ICAgIGlmICh3ZWJDb250ZW50LT5kYXRhSW5SVEZGb3JtYXQpCisgICAgICAgICAgICBbcGFzdGVi
b2FyZEl0ZW0gc2V0RGF0YTp3ZWJDb250ZW50LT5kYXRhSW5SVEZGb3JtYXQtPmNyZWF0ZU5TRGF0
YSgpLmdldCgpIGZvclR5cGU6TlNQYXN0ZWJvYXJkVHlwZVJURl07CisgICAgICAgIGlmICghd2Vi
Q29udGVudC0+ZGF0YUluSFRNTEZvcm1hdC5pc051bGwoKSkKKyAgICAgICAgICAgIFtwYXN0ZWJv
YXJkSXRlbSBzZXRTdHJpbmc6d2ViQ29udGVudC0+ZGF0YUluSFRNTEZvcm1hdCBmb3JUeXBlOk5T
UGFzdGVib2FyZFR5cGVIVE1MXTsKKyAgICAgICAgaWYgKCF3ZWJDb250ZW50LT5kYXRhSW5TdHJp
bmdGb3JtYXQuaXNOdWxsKCkpCisgICAgICAgICAgICBbcGFzdGVib2FyZEl0ZW0gc2V0U3RyaW5n
OndlYkNvbnRlbnQtPmRhdGFJblN0cmluZ0Zvcm1hdCBmb3JUeXBlOk5TUGFzdGVib2FyZFR5cGVT
dHJpbmddOworCisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCB3ZWJDb250ZW50LT5j
bGllbnRUeXBlcy5zaXplKCk7ICsraSkKKyAgICAgICAgICAgIFtwYXN0ZWJvYXJkSXRlbSBzZXRE
YXRhOndlYkNvbnRlbnQtPmNsaWVudERhdGFbaV0tPmNyZWF0ZU5TRGF0YSgpLmdldCgpIGZvclR5
cGU6dG9VVElVbmxlc3NBbHJlYWR5VVRJKHdlYkNvbnRlbnQtPmNsaWVudFR5cGVzW2ldKS5nZXQo
KV07CisgICAgfQorCiAgICAgcmV0dXJuIHBhc3RlYm9hcmRJdGVtOwogfQogCg==
</data>
<flag name="review"
          id="325320"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>