<?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>107810</bug_id>
          
          <creation_ts>2013-01-24 04:31:34 -0800</creation_ts>
          <short_desc>[EFL][WK2] Use C API inside ewk_download_job</short_desc>
          <delta_ts>2013-01-28 14:23:53 -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>WebKit EFL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>107657</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>benjamin</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kenneth</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>mikhail.pozdnyakov</cc>
    
    <cc>naginenis</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>815326</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-01-24 04:31:34 -0800</bug_when>
    <thetext>As per Bug 107657, we should start using the C API internally to avoid violating layering.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>815343</commentid>
    <comment_count>1</comment_count>
      <attachid>184466</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-01-24 05:01:03 -0800</bug_when>
    <thetext>Created attachment 184466
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818031</commentid>
    <comment_count>2</comment_count>
      <attachid>185044</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-01-28 13:16:48 -0800</bug_when>
    <thetext>Created attachment 185044
Patch

Rebased on master.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818098</commentid>
    <comment_count>3</comment_count>
      <attachid>185044</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-28 14:23:48 -0800</bug_when>
    <thetext>Comment on attachment 185044
Patch

Clearing flags on attachment: 185044

Committed r141008: &lt;http://trac.webkit.org/changeset/141008&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818099</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-28 14:23:53 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184466</attachid>
            <date>2013-01-24 05:01:03 -0800</date>
            <delta_ts>2013-01-28 13:16:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>107810_ewk_download_capi.patch</filename>
            <type>text/plain</type>
            <size>14866</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA1OGIwODUxLi45YjEzNTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTAg
QEAKKzIwMTMtMDEtMjQgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVs
LmNvbT4KKworICAgICAgICBbRUZMXVtXSzJdIFVzZSBDIEFQSSBpbnNpZGUgZXdrX2Rvd25sb2Fk
X2pvYgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3
ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNl
IEMgQVBJIGluc2lkZSBld2tfZG93bmxvYWRfam9iIGluc3RlYWQgb2YgYWNjZXNzaW5nCisgICAg
ICAgIGludGVybmFsIEMrKyBjbGFzc2VzIGRpcmVjdGx5LCB0byBhdm9pZCB2aW9sYXRpbmcKKyAg
ICAgICAgQVBJIGxheWVyaW5nLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLRG93bmxv
YWQuY3BwOgorICAgICAgICAoV0tEb3dubG9hZEdldElEKTogQWRkIEMgQVBJIHRvIGdldCB0aGUg
ZG93bmxvYWQgSUQgYXMgd2UKKyAgICAgICAgbmVlZCBpdCB0byBzdXBwb3J0IG91ciBwdWJsaWMg
QVBJIGFuZCBpdCBzZWVtcyBsaWtlIGEKKyAgICAgICAgdXNlZnVsIGFkZGl0aW9uLgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0Rvd25sb2FkLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9lZmwvZXdrX2Rvd25sb2FkX2pvYi5jcHA6CisgICAgICAgIChFd2tEb3dubG9hZEpvYjo6RXdr
RG93bmxvYWRKb2IpOgorICAgICAgICAoRXdrRG93bmxvYWRKb2I6OmlkKToKKyAgICAgICAgKEV3
a0Rvd25sb2FkSm9iOjpyZXF1ZXN0KToKKyAgICAgICAgKEV3a0Rvd25sb2FkSm9iOjpjYW5jZWwp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZWZsL2V3a19kb3dubG9hZF9qb2JfcHJpdmF0ZS5o
OgorICAgICAgICAoRXdrRG93bmxvYWRKb2I6OmNyZWF0ZSk6CisgICAgICAgIChFd2tEb3dubG9h
ZEpvYik6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9Eb3dubG9hZE1hbmFnZXJFZmwuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpEb3dubG9hZE1hbmFnZXJFZmw6OmRlY2lkZURlc3RpbmF0aW9uV2l0
aFN1Z2dlc3RlZEZpbGVuYW1lKToKKyAgICAgICAgKFdlYktpdDo6RG93bmxvYWRNYW5hZ2VyRWZs
OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpEb3dubG9hZE1hbmFnZXJF
Zmw6OmRpZENyZWF0ZURlc3RpbmF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6RG93bmxvYWRNYW5h
Z2VyRWZsOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OkRvd25sb2FkTWFuYWdl
ckVmbDo6ZGlkRmFpbCk6CisgICAgICAgIChXZWJLaXQ6OkRvd25sb2FkTWFuYWdlckVmbDo6ZGlk
Q2FuY2VsKToKKyAgICAgICAgKFdlYktpdDo6RG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRGaW5pc2gp
OgorICAgICAgICAoV2ViS2l0OjpEb3dubG9hZE1hbmFnZXJFZmw6OnJlZ2lzdGVyRG93bmxvYWRK
b2IpOiBSZW5hbWUgcmVnaXN0ZXJEb3dubG9hZCgpCisgICAgICAgIHRvIHJlZ2lzdGVyRG93bmxv
YWRKb2IoKSBmb3IgY29uc2lzdGVuY3kgd2l0aCB1bnJlZ2lzdGVyRG93bmxvYWRKb2IoKS4KKyAg
ICAgICAgKFdlYktpdDo6RG93bmxvYWRNYW5hZ2VyRWZsOjpld2tEb3dubG9hZEpvYik6IFJlbmFt
ZSBkb3dubG9hZEpvYigpIHRvCisgICAgICAgIGV3a0Rvd25sb2FkSm9iKCkgZm9yIGNsYXJpdHkg
c2luY2UgaXQgcmV0dXJucyBhIEV3a0Rvd25sb2FkIG9iamVjdC4gQWxzbworICAgICAgICB0YWtl
IGEgV0tEb3dubG9hZFJlZiBpbiBhcmd1bWVudCBpbnN0ZWFkIG9mIGFuIGlkZW50aWZpZXIgc2lu
Y2UgYWxsIHRoZQorICAgICAgICBjYWxsZXJzIGhhdmUgYSBXS0Rvd25sb2FkUmVmIGFuZCBpdCBt
YWtlcyB0aGVpciBjb2RlIHNpbXBsZXIuIEZpbmFsbHksCisgICAgICAgIG1ha2UgdGhlIGdldHRl
ciBub24tY29uc3Qgc2luY2UgaXQgcmV0dXJucyBhIG5vbi1jb25zdCBwb2ludGVyLgorICAgICAg
ICAoV2ViS2l0OjpEb3dubG9hZE1hbmFnZXJFZmw6OnVucmVnaXN0ZXJEb3dubG9hZEpvYik6IFRh
a2UgYSBXS0Rvd25sb2FkUmVmIGluCisgICAgICAgIGFyZ3VtZW50IGluc3RlYWQgb2YgYW4gaWRl
bnRpZmllciBzaW5jZSBhbGwgdGhlIGNhbGxlcnMgaGF2ZSBhIFdLRG93bmxvYWRSZWYKKyAgICAg
ICAgYW5kIGl0IG1ha2VzIHRoZWlyIGNvZGUgc2ltcGxlci4KKyAgICAgICAgKiBVSVByb2Nlc3Mv
ZWZsL0Rvd25sb2FkTWFuYWdlckVmbC5oOgorICAgICAgICAoRG93bmxvYWRNYW5hZ2VyRWZsKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRCYXNlLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6UGFnZUNsaWVudEJhc2U6OmhhbmRsZURvd25sb2FkUmVxdWVzdCk6CisKIDIwMTMtMDEt
MjQgIE1pY2hhZWwgQnLDvG5pbmcgIDxtaWNoYWVsLmJydW5pbmdAZGlnaWEuY29tPgogCiAgICAg
ICAgIFtRdF1bV0syXSBQYWdlcyAvIHJlc291cmNlcyBjYW5ub3QgYmUgbG9hZGVkIGZyb20gcXJj
IGZpbGVzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRG93
bmxvYWQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRG93bmxvYWQuY3Bw
CmluZGV4IDQ1ZGVhNjguLjM1ODhmZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS0Rvd25sb2FkLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0MvV0tEb3dubG9hZC5jcHAKQEAgLTM3LDYgKzM3LDExIEBAIFdLVHlwZUlEIFdLRG93bmxv
YWRHZXRUeXBlSUQoKQogICAgIHJldHVybiB0b0FQSShEb3dubG9hZFByb3h5OjpBUElUeXBlKTsK
IH0KIAordWludDY0X3QgV0tEb3dubG9hZEdldElEKFdLRG93bmxvYWRSZWYgZG93bmxvYWQpCit7
CisgICAgcmV0dXJuIHRvSW1wbChkb3dubG9hZCktPmRvd25sb2FkSUQoKTsKK30KKwogV0tVUkxS
ZXF1ZXN0UmVmIFdLRG93bmxvYWRDb3B5UmVxdWVzdChXS0Rvd25sb2FkUmVmIGRvd25sb2FkKQog
ewogICAgIHJldHVybiB0b0FQSShXZWJVUkxSZXF1ZXN0OjpjcmVhdGUodG9JbXBsKGRvd25sb2Fk
KS0+cmVxdWVzdCgpKS5sZWFrUmVmKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLRG93bmxvYWQuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS0Rvd25sb2FkLmgKaW5kZXggYjgxMjY4MS4uOGFjYzkxMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRG93bmxvYWQuaAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0MvV0tEb3dubG9hZC5oCkBAIC0zOCw2ICszOCw3IEBAIGV4dGVybiAi
QyIgewogCiBXS19FWFBPUlQgV0tUeXBlSUQgV0tEb3dubG9hZEdldFR5cGVJRCgpOwogCitXS19F
WFBPUlQgdWludDY0X3QgV0tEb3dubG9hZEdldElEKFdLRG93bmxvYWRSZWYgZG93bmxvYWQpOwog
V0tfRVhQT1JUIFdLVVJMUmVxdWVzdFJlZiBXS0Rvd25sb2FkQ29weVJlcXVlc3QoV0tEb3dubG9h
ZFJlZiBkb3dubG9hZCk7CiBXS19FWFBPUlQgV0tEYXRhUmVmIFdLRG93bmxvYWRHZXRSZXN1bWVE
YXRhKFdLRG93bmxvYWRSZWYgZG93bmxvYWQpOwogV0tfRVhQT1JUIHZvaWQgV0tEb3dubG9hZENh
bmNlbChXS0Rvd25sb2FkUmVmIGRvd25sb2FkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZWZsL2V3a19kb3dubG9hZF9qb2IuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9lZmwvZXdrX2Rvd25sb2FkX2pvYi5jcHAKaW5kZXggM2FkN2Q0ZC4uMzU4
MmYxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX2Rv
d25sb2FkX2pvYi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdr
X2Rvd25sb2FkX2pvYi5jcHAKQEAgLTI2LDE4ICsyNiwxNyBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgImV3a19kb3dubG9hZF9qb2IuaCIKIAotI2luY2x1ZGUgIkRvd25sb2FkUHJv
eHkuaCIKICNpbmNsdWRlICJXS0FQSUNhc3QuaCIKICNpbmNsdWRlICJXS1JldGFpblB0ci5oIgot
I2luY2x1ZGUgIldlYlVSTFJlcXVlc3QuaCIKKyNpbmNsdWRlICJXS1VSTFJlcXVlc3QuaCIKICNp
bmNsdWRlICJld2tfZG93bmxvYWRfam9iX3ByaXZhdGUuaCIKICNpbmNsdWRlICJld2tfdXJsX3Jl
c3BvbnNlX3ByaXZhdGUuaCIKICNpbmNsdWRlIDxFY29yZS5oPgogCiB1c2luZyBuYW1lc3BhY2Ug
V2ViS2l0OwogCi1Fd2tEb3dubG9hZEpvYjo6RXdrRG93bmxvYWRKb2IoV2ViS2l0OjpEb3dubG9h
ZFByb3h5KiBkb3dubG9hZCwgRXdrVmlld0ltcGwqIHZpZXdJbXBsKQotICAgIDogbV9kb3dubG9h
ZFByb3h5KGRvd25sb2FkKQorRXdrRG93bmxvYWRKb2I6OkV3a0Rvd25sb2FkSm9iKFdLRG93bmxv
YWRSZWYgZG93bmxvYWQsIEV3a1ZpZXdJbXBsKiB2aWV3SW1wbCkKKyAgICA6IG1fZG93bmxvYWQo
ZG93bmxvYWQpCiAgICAgLCBtX3ZpZXdJbXBsKHZpZXdJbXBsKQogICAgICwgbV9zdGF0ZShFV0tf
RE9XTkxPQURfSk9CX1NUQVRFX05PVF9TVEFSVEVEKQogICAgICwgbV9zdGFydFRpbWUoLTEpCkBA
IC01MSw3ICs1MCw3IEBAIEV3a0Rvd25sb2FkSm9iOjpFd2tEb3dubG9hZEpvYihXZWJLaXQ6OkRv
d25sb2FkUHJveHkqIGRvd25sb2FkLCBFd2tWaWV3SW1wbCogdmllCiAgKi8KIHVpbnQ2NF90IEV3
a0Rvd25sb2FkSm9iOjppZCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fZG93bmxvYWRQcm94eS0+
ZG93bmxvYWRJRCgpOworICAgIHJldHVybiBXS0Rvd25sb2FkR2V0SUQobV9kb3dubG9hZC5nZXQo
KSk7CiB9CiAKIC8qKgpAQCAtODYsNyArODUsNyBAQCBFd2tfVXJsX1JlcXVlc3QqIGV3a19kb3du
bG9hZF9qb2JfcmVxdWVzdF9nZXQoY29uc3QgRXdrX0Rvd25sb2FkX0pvYiogZG93bmxvYWQpCiBF
d2tVcmxSZXF1ZXN0KiBFd2tEb3dubG9hZEpvYjo6cmVxdWVzdCgpIGNvbnN0CiB7CiAgICAgaWYg
KCFtX3JlcXVlc3QpIHsKLSAgICAgICAgV0tSZXRhaW5QdHI8V0tVUkxSZXF1ZXN0UmVmPiB3a1VS
TFJlcXVlc3QoQWRvcHRXSywgdG9BUEkoV2ViVVJMUmVxdWVzdDo6Y3JlYXRlKG1fZG93bmxvYWRQ
cm94eS0+cmVxdWVzdCgpKS5sZWFrUmVmKCkpKTsKKyAgICAgICAgV0tSZXRhaW5QdHI8V0tVUkxS
ZXF1ZXN0UmVmPiB3a1VSTFJlcXVlc3QoQWRvcHRXSywgV0tEb3dubG9hZENvcHlSZXF1ZXN0KG1f
ZG93bmxvYWQuZ2V0KCkpKTsKICAgICAgICAgbV9yZXF1ZXN0ID0gRXdrVXJsUmVxdWVzdDo6Y3Jl
YXRlKHdrVVJMUmVxdWVzdC5nZXQoKSk7CiAgICAgfQogCkBAIC0xNTcsNyArMTU2LDggQEAgYm9v
bCBFd2tEb3dubG9hZEpvYjo6Y2FuY2VsKCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAg
bV9zdGF0ZSA9IEVXS19ET1dOTE9BRF9KT0JfU1RBVEVfQ0FOQ0VMTElORzsKLSAgICBtX2Rvd25s
b2FkUHJveHktPmNhbmNlbCgpOworICAgIFdLRG93bmxvYWRDYW5jZWwobV9kb3dubG9hZC5nZXQo
KSk7CisKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9lZmwvZXdrX2Rvd25sb2FkX2pvYl9wcml2YXRlLmggYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9iX3ByaXZhdGUuaAppbmRleCA1
YjZhNTNmLi5jYWJlMGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2VmbC9ld2tfZG93bmxvYWRfam9iX3ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9iX3ByaXZhdGUuaApAQCAtMjcsMjQgKzI3LDIy
IEBACiAjZGVmaW5lIGV3a19kb3dubG9hZF9qb2JfcHJpdmF0ZV9oCiAKICNpbmNsdWRlICJXS0Jh
c2UuaCIKKyNpbmNsdWRlICJXS0Rvd25sb2FkLmgiCiAjaW5jbHVkZSAiV0tFaW5hU2hhcmVkU3Ry
aW5nLmgiCisjaW5jbHVkZSAiV0tSZXRhaW5QdHIuaCIKICNpbmNsdWRlICJld2tfZG93bmxvYWRf
am9iLmgiCiAjaW5jbHVkZSAiZXdrX3VybF9yZXF1ZXN0X3ByaXZhdGUuaCIKICNpbmNsdWRlICJl
d2tfdXJsX3Jlc3BvbnNlX3ByaXZhdGUuaCIKICNpbmNsdWRlIDxFdmFzLmg+CiAjaW5jbHVkZSA8
d3RmL1Bhc3NSZWZQdHIuaD4KIAotbmFtZXNwYWNlIFdlYktpdCB7Ci1jbGFzcyBEb3dubG9hZFBy
b3h5OwotfQotCiBjbGFzcyBFd2tWaWV3SW1wbDsKIAogY2xhc3MgRXdrRG93bmxvYWRKb2IgOiBw
dWJsaWMgRXdrT2JqZWN0IHsKIHB1YmxpYzoKICAgICBFV0tfT0JKRUNUX0RFQ0xBUkUoRXdrRG93
bmxvYWRKb2IpCiAKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxFd2tEb3dubG9hZEpvYj4gY3JlYXRl
KFdlYktpdDo6RG93bmxvYWRQcm94eSogZG93bmxvYWQsIEV3a1ZpZXdJbXBsKiB2aWV3SW1wbCkK
KyAgICBzdGF0aWMgUGFzc1JlZlB0cjxFd2tEb3dubG9hZEpvYj4gY3JlYXRlKFdLRG93bmxvYWRS
ZWYgZG93bmxvYWQsIEV3a1ZpZXdJbXBsKiB2aWV3SW1wbCkKICAgICB7CiAgICAgICAgIHJldHVy
biBhZG9wdFJlZihuZXcgRXdrRG93bmxvYWRKb2IoZG93bmxvYWQsIHZpZXdJbXBsKSk7CiAgICAg
fQpAQCAtNzIsOSArNzAsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBpbmNyZW1lbnRSZWNlaXZlZERh
dGEodWludDY0X3QgbGVuZ3RoKTsKIAogcHJpdmF0ZToKLSAgICBFd2tEb3dubG9hZEpvYihXZWJL
aXQ6OkRvd25sb2FkUHJveHkqIGRvd25sb2FkLCBFd2tWaWV3SW1wbCogdmlld0ltcGwpOworICAg
IEV3a0Rvd25sb2FkSm9iKFdLRG93bmxvYWRSZWYgZG93bmxvYWQsIEV3a1ZpZXdJbXBsKiB2aWV3
SW1wbCk7CiAKLSAgICBXZWJLaXQ6OkRvd25sb2FkUHJveHkqIG1fZG93bmxvYWRQcm94eTsKKyAg
ICBXS1JldGFpblB0cjxXS0Rvd25sb2FkUmVmPiBtX2Rvd25sb2FkOwogICAgIEV3a1ZpZXdJbXBs
KiBtX3ZpZXdJbXBsOwogICAgIEV3a19Eb3dubG9hZF9Kb2JfU3RhdGUgbV9zdGF0ZTsKICAgICBt
dXRhYmxlIFJlZlB0cjxFd2tVcmxSZXF1ZXN0PiBtX3JlcXVlc3Q7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL0Rvd25sb2FkTWFuYWdlckVmbC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvZWZsL0Rvd25sb2FkTWFuYWdlckVmbC5jcHAKaW5kZXggOTNhN2Ri
MC4uZDFhZjkwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Eb3du
bG9hZE1hbmFnZXJFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvRG93
bmxvYWRNYW5hZ2VyRWZsLmNwcApAQCAtMjYsOSArMjYsOSBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIkRvd25sb2FkTWFuYWdlckVmbC5oIgogCi0jaW5jbHVkZSAiRG93bmxvYWRQ
cm94eS5oIgogI2luY2x1ZGUgIkV3a1ZpZXdJbXBsLmgiCiAjaW5jbHVkZSAiV0tDb250ZXh0Lmgi
CisjaW5jbHVkZSAiV0tEb3dubG9hZC5oIgogI2luY2x1ZGUgIldLU3RyaW5nLmgiCiAjaW5jbHVk
ZSAiZXdrX2NvbnRleHRfcHJpdmF0ZS5oIgogI2luY2x1ZGUgImV3a19lcnJvcl9wcml2YXRlLmgi
CkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBpbmxpbmUgRG93bmxvYWRNYW5hZ2VyRWZsKiB0b0Rv
d25sb2FkTWFuYWdlckVmbChjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogCiBXS1N0cmluZ1JlZiBE
b3dubG9hZE1hbmFnZXJFZmw6OmRlY2lkZURlc3RpbmF0aW9uV2l0aFN1Z2dlc3RlZEZpbGVuYW1l
KFdLQ29udGV4dFJlZiwgV0tEb3dubG9hZFJlZiB3a0Rvd25sb2FkLCBXS1N0cmluZ1JlZiBmaWxl
bmFtZSwgYm9vbCogLyphbGxvd092ZXJ3cml0ZSovLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQog
ewotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IHRvRG93bmxvYWRNYW5hZ2VyRWZsKGNs
aWVudEluZm8pLT5kb3dubG9hZEpvYih0b0ltcGwod2tEb3dubG9hZCktPmRvd25sb2FkSUQoKSk7
CisgICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2FkID0gdG9Eb3dubG9hZE1hbmFnZXJFZmwoY2xp
ZW50SW5mbyktPmV3a0Rvd25sb2FkSm9iKHdrRG93bmxvYWQpOwogICAgIEFTU0VSVChkb3dubG9h
ZCk7CiAKICAgICBkb3dubG9hZC0+c2V0U3VnZ2VzdGVkRmlsZU5hbWUodG9JbXBsKGZpbGVuYW1l
KS0+c3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CkBAIC02MiwxNCArNjIsMTQgQEAgV0tTdHJpbmdS
ZWYgRG93bmxvYWRNYW5hZ2VyRWZsOjpkZWNpZGVEZXN0aW5hdGlvbldpdGhTdWdnZXN0ZWRGaWxl
bmFtZShXS0NvbnRleHQKIAogdm9pZCBEb3dubG9hZE1hbmFnZXJFZmw6OmRpZFJlY2VpdmVSZXNw
b25zZShXS0NvbnRleHRSZWYsIFdLRG93bmxvYWRSZWYgd2tEb3dubG9hZCwgV0tVUkxSZXNwb25z
ZVJlZiB3a1Jlc3BvbnNlLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewotICAgIEV3a0Rvd25s
b2FkSm9iKiBkb3dubG9hZCA9IHRvRG93bmxvYWRNYW5hZ2VyRWZsKGNsaWVudEluZm8pLT5kb3du
bG9hZEpvYih0b0ltcGwod2tEb3dubG9hZCktPmRvd25sb2FkSUQoKSk7CisgICAgRXdrRG93bmxv
YWRKb2IqIGRvd25sb2FkID0gdG9Eb3dubG9hZE1hbmFnZXJFZmwoY2xpZW50SW5mbyktPmV3a0Rv
d25sb2FkSm9iKHdrRG93bmxvYWQpOwogICAgIEFTU0VSVChkb3dubG9hZCk7CiAgICAgZG93bmxv
YWQtPnNldFJlc3BvbnNlKEV3a1VybFJlc3BvbnNlOjpjcmVhdGUod2tSZXNwb25zZSkpOwogfQog
CiB2b2lkIERvd25sb2FkTWFuYWdlckVmbDo6ZGlkQ3JlYXRlRGVzdGluYXRpb24oV0tDb250ZXh0
UmVmLCBXS0Rvd25sb2FkUmVmIHdrRG93bmxvYWQsIFdLU3RyaW5nUmVmIC8qcGF0aCovLCBjb25z
dCB2b2lkKiBjbGllbnRJbmZvKQogewotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IHRv
RG93bmxvYWRNYW5hZ2VyRWZsKGNsaWVudEluZm8pLT5kb3dubG9hZEpvYih0b0ltcGwod2tEb3du
bG9hZCktPmRvd25sb2FkSUQoKSk7CisgICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2FkID0gdG9E
b3dubG9hZE1hbmFnZXJFZmwoY2xpZW50SW5mbyktPmV3a0Rvd25sb2FkSm9iKHdrRG93bmxvYWQp
OwogICAgIEFTU0VSVChkb3dubG9hZCk7CiAKICAgICBkb3dubG9hZC0+c2V0U3RhdGUoRVdLX0RP
V05MT0FEX0pPQl9TVEFURV9ET1dOTE9BRElORyk7CkBAIC03Nyw3ICs3Nyw3IEBAIHZvaWQgRG93
bmxvYWRNYW5hZ2VyRWZsOjpkaWRDcmVhdGVEZXN0aW5hdGlvbihXS0NvbnRleHRSZWYsIFdLRG93
bmxvYWRSZWYgd2tEb3duCiAKIHZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRSZWNlaXZlRGF0
YShXS0NvbnRleHRSZWYsIFdLRG93bmxvYWRSZWYgd2tEb3dubG9hZCwgdWludDY0X3QgbGVuZ3Ro
LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9h
ZCA9IHRvRG93bmxvYWRNYW5hZ2VyRWZsKGNsaWVudEluZm8pLT5kb3dubG9hZEpvYih0b0ltcGwo
d2tEb3dubG9hZCktPmRvd25sb2FkSUQoKSk7CisgICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2Fk
ID0gdG9Eb3dubG9hZE1hbmFnZXJFZmwoY2xpZW50SW5mbyktPmV3a0Rvd25sb2FkSm9iKHdrRG93
bmxvYWQpOwogICAgIEFTU0VSVChkb3dubG9hZCk7CiAgICAgZG93bmxvYWQtPmluY3JlbWVudFJl
Y2VpdmVkRGF0YShsZW5ndGgpOwogfQpAQCAtODUsMzkgKzg1LDM2IEBAIHZvaWQgRG93bmxvYWRN
YW5hZ2VyRWZsOjpkaWRSZWNlaXZlRGF0YShXS0NvbnRleHRSZWYsIFdLRG93bmxvYWRSZWYgd2tE
b3dubG9hZCwKIHZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRGYWlsKFdLQ29udGV4dFJlZiwg
V0tEb3dubG9hZFJlZiB3a0Rvd25sb2FkLCBXS0Vycm9yUmVmIGVycm9yLCBjb25zdCB2b2lkKiBj
bGllbnRJbmZvKQogewogICAgIERvd25sb2FkTWFuYWdlckVmbCogZG93bmxvYWRNYW5hZ2VyID0g
dG9Eb3dubG9hZE1hbmFnZXJFZmwoY2xpZW50SW5mbyk7Ci0gICAgdWludDY0X3QgZG93bmxvYWRJ
ZCA9IHRvSW1wbCh3a0Rvd25sb2FkKS0+ZG93bmxvYWRJRCgpOwotICAgIEV3a0Rvd25sb2FkSm9i
KiBkb3dubG9hZCA9IGRvd25sb2FkTWFuYWdlci0+ZG93bmxvYWRKb2IoZG93bmxvYWRJZCk7Cisg
ICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2FkID0gZG93bmxvYWRNYW5hZ2VyLT5ld2tEb3dubG9h
ZEpvYih3a0Rvd25sb2FkKTsKICAgICBBU1NFUlQoZG93bmxvYWQpOwogCiAgICAgT3duUHRyPEV3
a0Vycm9yPiBld2tFcnJvciA9IEV3a0Vycm9yOjpjcmVhdGUoZXJyb3IpOwogICAgIGRvd25sb2Fk
LT5zZXRTdGF0ZShFV0tfRE9XTkxPQURfSk9CX1NUQVRFX0ZBSUxFRCk7CiAgICAgRXdrX0Rvd25s
b2FkX0pvYl9FcnJvciBkb3dubG9hZEVycm9yID0geyBkb3dubG9hZCwgZXdrRXJyb3IuZ2V0KCkg
fTsKICAgICBkb3dubG9hZC0+dmlld0ltcGwoKS0+c21hcnRDYWxsYmFjazxEb3dubG9hZEpvYkZh
aWxlZD4oKS5jYWxsKCZkb3dubG9hZEVycm9yKTsKLSAgICBkb3dubG9hZE1hbmFnZXItPnVucmVn
aXN0ZXJEb3dubG9hZEpvYihkb3dubG9hZElkKTsKKyAgICBkb3dubG9hZE1hbmFnZXItPnVucmVn
aXN0ZXJEb3dubG9hZEpvYih3a0Rvd25sb2FkKTsKIH0KIAogdm9pZCBEb3dubG9hZE1hbmFnZXJF
Zmw6OmRpZENhbmNlbChXS0NvbnRleHRSZWYsIFdLRG93bmxvYWRSZWYgd2tEb3dubG9hZCwgY29u
c3Qgdm9pZCogY2xpZW50SW5mbykKIHsKICAgICBEb3dubG9hZE1hbmFnZXJFZmwqIGRvd25sb2Fk
TWFuYWdlciA9IHRvRG93bmxvYWRNYW5hZ2VyRWZsKGNsaWVudEluZm8pOwotICAgIHVpbnQ2NF90
IGRvd25sb2FkSWQgPSB0b0ltcGwod2tEb3dubG9hZCktPmRvd25sb2FkSUQoKTsKLSAgICBFd2tE
b3dubG9hZEpvYiogZG93bmxvYWQgPSBkb3dubG9hZE1hbmFnZXItPmRvd25sb2FkSm9iKGRvd25s
b2FkSWQpOworICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IGRvd25sb2FkTWFuYWdlci0+
ZXdrRG93bmxvYWRKb2Iod2tEb3dubG9hZCk7CiAgICAgQVNTRVJUKGRvd25sb2FkKTsKIAogICAg
IGRvd25sb2FkLT5zZXRTdGF0ZShFV0tfRE9XTkxPQURfSk9CX1NUQVRFX0NBTkNFTExFRCk7CiAg
ICAgZG93bmxvYWQtPnZpZXdJbXBsKCktPnNtYXJ0Q2FsbGJhY2s8RG93bmxvYWRKb2JDYW5jZWxs
ZWQ+KCkuY2FsbChkb3dubG9hZCk7Ci0gICAgZG93bmxvYWRNYW5hZ2VyLT51bnJlZ2lzdGVyRG93
bmxvYWRKb2IoZG93bmxvYWRJZCk7CisgICAgZG93bmxvYWRNYW5hZ2VyLT51bnJlZ2lzdGVyRG93
bmxvYWRKb2Iod2tEb3dubG9hZCk7CiB9CiAKIHZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRG
aW5pc2goV0tDb250ZXh0UmVmLCBXS0Rvd25sb2FkUmVmIHdrRG93bmxvYWQsIGNvbnN0IHZvaWQq
IGNsaWVudEluZm8pCiB7CiAgICAgRG93bmxvYWRNYW5hZ2VyRWZsKiBkb3dubG9hZE1hbmFnZXIg
PSB0b0Rvd25sb2FkTWFuYWdlckVmbChjbGllbnRJbmZvKTsKLSAgICB1aW50NjRfdCBkb3dubG9h
ZElkID0gdG9JbXBsKHdrRG93bmxvYWQpLT5kb3dubG9hZElEKCk7Ci0gICAgRXdrRG93bmxvYWRK
b2IqIGRvd25sb2FkID0gZG93bmxvYWRNYW5hZ2VyLT5kb3dubG9hZEpvYihkb3dubG9hZElkKTsK
KyAgICBFd2tEb3dubG9hZEpvYiogZG93bmxvYWQgPSBkb3dubG9hZE1hbmFnZXItPmV3a0Rvd25s
b2FkSm9iKHdrRG93bmxvYWQpOwogICAgIEFTU0VSVChkb3dubG9hZCk7CiAKICAgICBkb3dubG9h
ZC0+c2V0U3RhdGUoRVdLX0RPV05MT0FEX0pPQl9TVEFURV9GSU5JU0hFRCk7CiAgICAgZG93bmxv
YWQtPnZpZXdJbXBsKCktPnNtYXJ0Q2FsbGJhY2s8RG93bmxvYWRKb2JGaW5pc2hlZD4oKS5jYWxs
KGRvd25sb2FkKTsKLSAgICBkb3dubG9hZE1hbmFnZXItPnVucmVnaXN0ZXJEb3dubG9hZEpvYihk
b3dubG9hZElkKTsKKyAgICBkb3dubG9hZE1hbmFnZXItPnVucmVnaXN0ZXJEb3dubG9hZEpvYih3
a0Rvd25sb2FkKTsKIH0KIAogRG93bmxvYWRNYW5hZ2VyRWZsOjpEb3dubG9hZE1hbmFnZXJFZmwo
RXdrQ29udGV4dCogY29udGV4dCkKQEAgLTE0NCw5ICsxNDEsOSBAQCBEb3dubG9hZE1hbmFnZXJF
Zmw6On5Eb3dubG9hZE1hbmFnZXJFZmwoKQogICAgIFdLQ29udGV4dFNldERvd25sb2FkQ2xpZW50
KHRvQVBJKG1fY29udGV4dC0+d2ViQ29udGV4dCgpLmdldCgpKSwgMCk7CiB9CiAKLXZvaWQgRG93
bmxvYWRNYW5hZ2VyRWZsOjpyZWdpc3RlckRvd25sb2FkKERvd25sb2FkUHJveHkqIGRvd25sb2Fk
LCBFd2tWaWV3SW1wbCogdmlld0ltcGwpCit2b2lkIERvd25sb2FkTWFuYWdlckVmbDo6cmVnaXN0
ZXJEb3dubG9hZEpvYihXS0Rvd25sb2FkUmVmIGRvd25sb2FkLCBFd2tWaWV3SW1wbCogdmlld0lt
cGwpCiB7Ci0gICAgdWludDY0X3QgZG93bmxvYWRJZCA9IGRvd25sb2FkLT5kb3dubG9hZElEKCk7
CisgICAgdWludDY0X3QgZG93bmxvYWRJZCA9IFdLRG93bmxvYWRHZXRJRChkb3dubG9hZCk7CiAg
ICAgaWYgKG1fZG93bmxvYWRKb2JzLmNvbnRhaW5zKGRvd25sb2FkSWQpKQogICAgICAgICByZXR1
cm47CiAKQEAgLTE1NCwxNCArMTUxLDE0IEBAIHZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpyZWdp
c3RlckRvd25sb2FkKERvd25sb2FkUHJveHkqIGRvd25sb2FkLCBFd2tWaWV3SW1wbCoKICAgICBt
X2Rvd25sb2FkSm9icy5hZGQoZG93bmxvYWRJZCwgZXdrRG93bmxvYWQpOwogfQogCi1Fd2tEb3du
bG9hZEpvYiogRG93bmxvYWRNYW5hZ2VyRWZsOjpkb3dubG9hZEpvYih1aW50NjRfdCBpZCkgY29u
c3QKK0V3a0Rvd25sb2FkSm9iKiBEb3dubG9hZE1hbmFnZXJFZmw6OmV3a0Rvd25sb2FkSm9iKFdL
RG93bmxvYWRSZWYgd2tEb3dubG9hZCkKIHsKLSAgICByZXR1cm4gbV9kb3dubG9hZEpvYnMuZ2V0
KGlkKS5nZXQoKTsKKyAgICByZXR1cm4gbV9kb3dubG9hZEpvYnMuZ2V0KFdLRG93bmxvYWRHZXRJ
RCh3a0Rvd25sb2FkKSkuZ2V0KCk7CiB9CiAKLXZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjp1bnJl
Z2lzdGVyRG93bmxvYWRKb2IodWludDY0X3QgaWQpCit2b2lkIERvd25sb2FkTWFuYWdlckVmbDo6
dW5yZWdpc3RlckRvd25sb2FkSm9iKFdLRG93bmxvYWRSZWYgd2tEb3dubG9hZCkKIHsKLSAgICBt
X2Rvd25sb2FkSm9icy5yZW1vdmUoaWQpOworICAgIG1fZG93bmxvYWRKb2JzLnJlbW92ZShXS0Rv
d25sb2FkR2V0SUQod2tEb3dubG9hZCkpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvRG93bmxvYWRNYW5hZ2VyRWZs
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL0Rvd25sb2FkTWFuYWdlckVmbC5oCmlu
ZGV4IGQzNzI4YzMuLmI3ODNlN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9lZmwvRG93bmxvYWRNYW5hZ2VyRWZsLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9Eb3dubG9hZE1hbmFnZXJFZmwuaApAQCAtNDUsMTMgKzQ1LDEzIEBAIHB1YmxpYzoKIAog
ICAgIH5Eb3dubG9hZE1hbmFnZXJFZmwoKTsKIAotICAgIHZvaWQgcmVnaXN0ZXJEb3dubG9hZChE
b3dubG9hZFByb3h5KiwgRXdrVmlld0ltcGwqKTsKKyAgICB2b2lkIHJlZ2lzdGVyRG93bmxvYWRK
b2IoV0tEb3dubG9hZFJlZiwgRXdrVmlld0ltcGwqKTsKIAogcHJpdmF0ZToKICAgICBleHBsaWNp
dCBEb3dubG9hZE1hbmFnZXJFZmwoRXdrQ29udGV4dCopOwogCi0gICAgRXdrRG93bmxvYWRKb2Iq
IGRvd25sb2FkSm9iKHVpbnQ2NF90IGlkKSBjb25zdDsKLSAgICB2b2lkIHVucmVnaXN0ZXJEb3du
bG9hZEpvYih1aW50NjRfdCBpZCk7CisgICAgRXdrRG93bmxvYWRKb2IqIGV3a0Rvd25sb2FkSm9i
KFdLRG93bmxvYWRSZWYpOworICAgIHZvaWQgdW5yZWdpc3RlckRvd25sb2FkSm9iKFdLRG93bmxv
YWRSZWYpOwogCiAgICAgc3RhdGljIFdLU3RyaW5nUmVmIGRlY2lkZURlc3RpbmF0aW9uV2l0aFN1
Z2dlc3RlZEZpbGVuYW1lKFdLQ29udGV4dFJlZiwgV0tEb3dubG9hZFJlZiwgV0tTdHJpbmdSZWYg
ZmlsZW5hbWUsIGJvb2wqIGFsbG93T3ZlcndyaXRlLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsK
ICAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoV0tDb250ZXh0UmVmLCBXS0Rvd25s
b2FkUmVmLCBXS1VSTFJlc3BvbnNlUmVmLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudEJhc2UuY3BwIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50QmFzZS5jcHAKaW5kZXggMjcz
ZDA2NC4uYzBiMGU2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Q
YWdlQ2xpZW50QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdl
Q2xpZW50QmFzZS5jcHAKQEAgLTI5OCw3ICsyOTgsNyBAQCB2b2lkIFBhZ2VDbGllbnRCYXNlOjp1
cGRhdGVUZXh0SW5wdXRTdGF0ZSgpCiB2b2lkIFBhZ2VDbGllbnRCYXNlOjpoYW5kbGVEb3dubG9h
ZFJlcXVlc3QoRG93bmxvYWRQcm94eSogZG93bmxvYWQpCiB7CiAgICAgRXdrQ29udGV4dCogY29u
dGV4dCA9IG1fdmlld0ltcGwtPmV3a0NvbnRleHQoKTsKLSAgICBjb250ZXh0LT5kb3dubG9hZE1h
bmFnZXIoKS0+cmVnaXN0ZXJEb3dubG9hZChkb3dubG9hZCwgbV92aWV3SW1wbCk7CisgICAgY29u
dGV4dC0+ZG93bmxvYWRNYW5hZ2VyKCktPnJlZ2lzdGVyRG93bmxvYWRKb2IodG9BUEkoZG93bmxv
YWQpLCBtX3ZpZXdJbXBsKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185044</attachid>
            <date>2013-01-28 13:16:48 -0800</date>
            <delta_ts>2013-01-28 14:23:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>107810_ewk_download_capi.patch</filename>
            <type>text/plain</type>
            <size>14749</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAyOGVhYjQzLi4zNTEzNjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDkg
QEAKKzIwMTMtMDEtMjggIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVs
LmNvbT4KKworICAgICAgICBbRUZMXVtXSzJdIFVzZSBDIEFQSSBpbnNpZGUgZXdrX2Rvd25sb2Fk
X2pvYgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3
ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNl
IEMgQVBJIGluc2lkZSBld2tfZG93bmxvYWRfam9iIGluc3RlYWQgb2YgYWNjZXNzaW5nIGludGVy
bmFsIEMrKworICAgICAgICBjbGFzc2VzIGRpcmVjdGx5LCB0byBhdm9pZCB2aW9sYXRpbmcgQVBJ
IGxheWVyaW5nLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLRG93bmxvYWQuY3BwOgor
ICAgICAgICAoV0tEb3dubG9hZEdldElEKTogQWRkIEMgQVBJIHRvIGdldCB0aGUgZG93bmxvYWQg
SUQgYXMgd2UgbmVlZCBpdCB0bworICAgICAgICBzdXBwb3J0IG91ciBwdWJsaWMgQVBJIGFuZCBp
dCBzZWVtcyBsaWtlIGEgdXNlZnVsIGFkZGl0aW9uLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Qy9XS0Rvd25sb2FkLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9lZmwvZXdrX2Rvd25sb2Fk
X2pvYi5jcHA6CisgICAgICAgIChFd2tEb3dubG9hZEpvYjo6RXdrRG93bmxvYWRKb2IpOgorICAg
ICAgICAoRXdrRG93bmxvYWRKb2I6OmlkKToKKyAgICAgICAgKEV3a0Rvd25sb2FkSm9iOjpyZXF1
ZXN0KToKKyAgICAgICAgKEV3a0Rvd25sb2FkSm9iOjpjYW5jZWwpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvZWZsL2V3a19kb3dubG9hZF9qb2JfcHJpdmF0ZS5oOgorICAgICAgICAoRXdrRG93
bmxvYWRKb2I6OmNyZWF0ZSk6CisgICAgICAgIChFd2tEb3dubG9hZEpvYik6CisgICAgICAgICog
VUlQcm9jZXNzL2VmbC9Eb3dubG9hZE1hbmFnZXJFZmwuY3BwOgorICAgICAgICAoV2ViS2l0OjpE
b3dubG9hZE1hbmFnZXJFZmw6OmRlY2lkZURlc3RpbmF0aW9uV2l0aFN1Z2dlc3RlZEZpbGVuYW1l
KToKKyAgICAgICAgKFdlYktpdDo6RG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRSZWNlaXZlUmVzcG9u
c2UpOgorICAgICAgICAoV2ViS2l0OjpEb3dubG9hZE1hbmFnZXJFZmw6OmRpZENyZWF0ZURlc3Rp
bmF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6RG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRSZWNlaXZl
RGF0YSk6CisgICAgICAgIChXZWJLaXQ6OkRvd25sb2FkTWFuYWdlckVmbDo6ZGlkRmFpbCk6Cisg
ICAgICAgIChXZWJLaXQ6OkRvd25sb2FkTWFuYWdlckVmbDo6ZGlkQ2FuY2VsKToKKyAgICAgICAg
KFdlYktpdDo6RG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRGaW5pc2gpOgorICAgICAgICAoV2ViS2l0
OjpEb3dubG9hZE1hbmFnZXJFZmw6OnJlZ2lzdGVyRG93bmxvYWRKb2IpOiBSZW5hbWUKKyAgICAg
ICAgcmVnaXN0ZXJEb3dubG9hZCgpIHRvIHJlZ2lzdGVyRG93bmxvYWRKb2IoKSBmb3IgY29uc2lz
dGVuY3kgd2l0aAorICAgICAgICB1bnJlZ2lzdGVyRG93bmxvYWRKb2IoKS4KKyAgICAgICAgKFdl
YktpdDo6RG93bmxvYWRNYW5hZ2VyRWZsOjpld2tEb3dubG9hZEpvYik6IFJlbmFtZSBkb3dubG9h
ZEpvYigpIHRvCisgICAgICAgIGV3a0Rvd25sb2FkSm9iKCkgZm9yIGNsYXJpdHkgc2luY2UgaXQg
cmV0dXJucyBhIEV3a0Rvd25sb2FkIG9iamVjdC4KKyAgICAgICAgQWxzbyB0YWtlIGEgV0tEb3du
bG9hZFJlZiBpbiBhcmd1bWVudCBpbnN0ZWFkIG9mIGFuIGlkZW50aWZpZXIgc2luY2UKKyAgICAg
ICAgYWxsIHRoZSBjYWxsZXJzIGhhdmUgYSBXS0Rvd25sb2FkUmVmIGFuZCBpdCBtYWtlcyB0aGVp
ciBjb2RlIHNpbXBsZXIuCisgICAgICAgIEZpbmFsbHksIG1ha2UgdGhlIGdldHRlciBub24tY29u
c3Qgc2luY2UgaXQgcmV0dXJucyBhIG5vbi1jb25zdCBwb2ludGVyLgorICAgICAgICAoV2ViS2l0
OjpEb3dubG9hZE1hbmFnZXJFZmw6OnVucmVnaXN0ZXJEb3dubG9hZEpvYik6IFRha2UgYQorICAg
ICAgICBXS0Rvd25sb2FkUmVmIGluIGFyZ3VtZW50IGluc3RlYWQgb2YgYW4gaWRlbnRpZmllciBz
aW5jZSBhbGwgdGhlCisgICAgICAgIGNhbGxlcnMgaGF2ZSBhIFdLRG93bmxvYWRSZWYgYW5kIGl0
IG1ha2VzIHRoZWlyIGNvZGUgc2ltcGxlci4KKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL0Rvd25s
b2FkTWFuYWdlckVmbC5oOgorICAgICAgICAoRG93bmxvYWRNYW5hZ2VyRWZsKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRCYXNlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UGFn
ZUNsaWVudEJhc2U6OmhhbmRsZURvd25sb2FkUmVxdWVzdCk6CisKIDIwMTMtMDEtMjggIEFkYW0g
QmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgd2Via2l0Tm90aWZp
Y2F0aW9ucy5jcmVhdGVIVE1MTm90aWZpY2F0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0MvV0tEb3dubG9hZC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tEb3dubG9hZC5jcHAKaW5kZXggNDVkZWE2OC4uMzU4OGZkNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRG93bmxvYWQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0Rvd25sb2FkLmNwcApAQCAtMzcsNiArMzcs
MTEgQEAgV0tUeXBlSUQgV0tEb3dubG9hZEdldFR5cGVJRCgpCiAgICAgcmV0dXJuIHRvQVBJKERv
d25sb2FkUHJveHk6OkFQSVR5cGUpOwogfQogCit1aW50NjRfdCBXS0Rvd25sb2FkR2V0SUQoV0tE
b3dubG9hZFJlZiBkb3dubG9hZCkKK3sKKyAgICByZXR1cm4gdG9JbXBsKGRvd25sb2FkKS0+ZG93
bmxvYWRJRCgpOworfQorCiBXS1VSTFJlcXVlc3RSZWYgV0tEb3dubG9hZENvcHlSZXF1ZXN0KFdL
RG93bmxvYWRSZWYgZG93bmxvYWQpCiB7CiAgICAgcmV0dXJuIHRvQVBJKFdlYlVSTFJlcXVlc3Q6
OmNyZWF0ZSh0b0ltcGwoZG93bmxvYWQpLT5yZXF1ZXN0KCkpLmxlYWtSZWYoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tEb3dubG9hZC5oIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRG93bmxvYWQuaAppbmRleCBiODEyNjgxLi44YWNj
OTEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tEb3dubG9h
ZC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0Rvd25sb2FkLmgKQEAg
LTM4LDYgKzM4LDcgQEAgZXh0ZXJuICJDIiB7CiAKIFdLX0VYUE9SVCBXS1R5cGVJRCBXS0Rvd25s
b2FkR2V0VHlwZUlEKCk7CiAKK1dLX0VYUE9SVCB1aW50NjRfdCBXS0Rvd25sb2FkR2V0SUQoV0tE
b3dubG9hZFJlZiBkb3dubG9hZCk7CiBXS19FWFBPUlQgV0tVUkxSZXF1ZXN0UmVmIFdLRG93bmxv
YWRDb3B5UmVxdWVzdChXS0Rvd25sb2FkUmVmIGRvd25sb2FkKTsKIFdLX0VYUE9SVCBXS0RhdGFS
ZWYgV0tEb3dubG9hZEdldFJlc3VtZURhdGEoV0tEb3dubG9hZFJlZiBkb3dubG9hZCk7CiBXS19F
WFBPUlQgdm9pZCBXS0Rvd25sb2FkQ2FuY2VsKFdLRG93bmxvYWRSZWYgZG93bmxvYWQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX2Rvd25sb2FkX2pv
Yi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9i
LmNwcAppbmRleCA5ODA3MmNmLi45YWU5NzM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9iLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9iLmNwcApAQCAtMjYsMTggKzI2LDE3
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiZXdrX2Rvd25sb2FkX2pvYi5oIgog
Ci0jaW5jbHVkZSAiRG93bmxvYWRQcm94eS5oIgogI2luY2x1ZGUgIldLQVBJQ2FzdC5oIgogI2lu
Y2x1ZGUgIldLUmV0YWluUHRyLmgiCi0jaW5jbHVkZSAiV2ViVVJMUmVxdWVzdC5oIgorI2luY2x1
ZGUgIldLVVJMUmVxdWVzdC5oIgogI2luY2x1ZGUgImV3a19kb3dubG9hZF9qb2JfcHJpdmF0ZS5o
IgogI2luY2x1ZGUgImV3a191cmxfcmVzcG9uc2VfcHJpdmF0ZS5oIgogI2luY2x1ZGUgPEVjb3Jl
Lmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKLUV3a0Rvd25sb2FkSm9iOjpFd2tEb3du
bG9hZEpvYihXZWJLaXQ6OkRvd25sb2FkUHJveHkqIGRvd25sb2FkLCBFd2tWaWV3KiB2aWV3SW1w
bCkKLSAgICA6IG1fZG93bmxvYWRQcm94eShkb3dubG9hZCkKK0V3a0Rvd25sb2FkSm9iOjpFd2tE
b3dubG9hZEpvYihXS0Rvd25sb2FkUmVmIGRvd25sb2FkLCBFd2tWaWV3KiB2aWV3SW1wbCkKKyAg
ICA6IG1fZG93bmxvYWQoZG93bmxvYWQpCiAgICAgLCBtX3ZpZXdJbXBsKHZpZXdJbXBsKQogICAg
ICwgbV9zdGF0ZShFV0tfRE9XTkxPQURfSk9CX1NUQVRFX05PVF9TVEFSVEVEKQogICAgICwgbV9z
dGFydFRpbWUoLTEpCkBAIC01MSw3ICs1MCw3IEBAIEV3a0Rvd25sb2FkSm9iOjpFd2tEb3dubG9h
ZEpvYihXZWJLaXQ6OkRvd25sb2FkUHJveHkqIGRvd25sb2FkLCBFd2tWaWV3KiB2aWV3SW1wCiAg
Ki8KIHVpbnQ2NF90IEV3a0Rvd25sb2FkSm9iOjppZCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
ZG93bmxvYWRQcm94eS0+ZG93bmxvYWRJRCgpOworICAgIHJldHVybiBXS0Rvd25sb2FkR2V0SUQo
bV9kb3dubG9hZC5nZXQoKSk7CiB9CiAKIC8qKgpAQCAtODYsNyArODUsNyBAQCBFd2tfVXJsX1Jl
cXVlc3QqIGV3a19kb3dubG9hZF9qb2JfcmVxdWVzdF9nZXQoY29uc3QgRXdrX0Rvd25sb2FkX0pv
YiogZG93bmxvYWQpCiBFd2tVcmxSZXF1ZXN0KiBFd2tEb3dubG9hZEpvYjo6cmVxdWVzdCgpIGNv
bnN0CiB7CiAgICAgaWYgKCFtX3JlcXVlc3QpIHsKLSAgICAgICAgV0tSZXRhaW5QdHI8V0tVUkxS
ZXF1ZXN0UmVmPiB3a1VSTFJlcXVlc3QoQWRvcHRXSywgdG9BUEkoV2ViVVJMUmVxdWVzdDo6Y3Jl
YXRlKG1fZG93bmxvYWRQcm94eS0+cmVxdWVzdCgpKS5sZWFrUmVmKCkpKTsKKyAgICAgICAgV0tS
ZXRhaW5QdHI8V0tVUkxSZXF1ZXN0UmVmPiB3a1VSTFJlcXVlc3QoQWRvcHRXSywgV0tEb3dubG9h
ZENvcHlSZXF1ZXN0KG1fZG93bmxvYWQuZ2V0KCkpKTsKICAgICAgICAgbV9yZXF1ZXN0ID0gRXdr
VXJsUmVxdWVzdDo6Y3JlYXRlKHdrVVJMUmVxdWVzdC5nZXQoKSk7CiAgICAgfQogCkBAIC0xNTcs
NyArMTU2LDggQEAgYm9vbCBFd2tEb3dubG9hZEpvYjo6Y2FuY2VsKCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgbV9zdGF0ZSA9IEVXS19ET1dOTE9BRF9KT0JfU1RBVEVfQ0FOQ0VMTElO
RzsKLSAgICBtX2Rvd25sb2FkUHJveHktPmNhbmNlbCgpOworICAgIFdLRG93bmxvYWRDYW5jZWwo
bV9kb3dubG9hZC5nZXQoKSk7CisKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX2Rvd25sb2FkX2pvYl9wcml2YXRl
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9iX3By
aXZhdGUuaAppbmRleCA3NmE0OGQyLi4zZTUxNmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9iX3ByaXZhdGUuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfZG93bmxvYWRfam9iX3ByaXZhdGUuaApA
QCAtMjcsMjQgKzI3LDIyIEBACiAjZGVmaW5lIGV3a19kb3dubG9hZF9qb2JfcHJpdmF0ZV9oCiAK
ICNpbmNsdWRlICJXS0Jhc2UuaCIKKyNpbmNsdWRlICJXS0Rvd25sb2FkLmgiCiAjaW5jbHVkZSAi
V0tFaW5hU2hhcmVkU3RyaW5nLmgiCisjaW5jbHVkZSAiV0tSZXRhaW5QdHIuaCIKICNpbmNsdWRl
ICJld2tfZG93bmxvYWRfam9iLmgiCiAjaW5jbHVkZSAiZXdrX3VybF9yZXF1ZXN0X3ByaXZhdGUu
aCIKICNpbmNsdWRlICJld2tfdXJsX3Jlc3BvbnNlX3ByaXZhdGUuaCIKICNpbmNsdWRlIDxFdmFz
Lmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KIAotbmFtZXNwYWNlIFdlYktpdCB7Ci1j
bGFzcyBEb3dubG9hZFByb3h5OwotfQotCiBjbGFzcyBFd2tWaWV3OwogCiBjbGFzcyBFd2tEb3du
bG9hZEpvYiA6IHB1YmxpYyBFd2tPYmplY3QgewogcHVibGljOgogICAgIEVXS19PQkpFQ1RfREVD
TEFSRShFd2tEb3dubG9hZEpvYikKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEV3a0Rvd25sb2Fk
Sm9iPiBjcmVhdGUoV2ViS2l0OjpEb3dubG9hZFByb3h5KiBkb3dubG9hZCwgRXdrVmlldyogdmll
d0ltcGwpCisgICAgc3RhdGljIFBhc3NSZWZQdHI8RXdrRG93bmxvYWRKb2I+IGNyZWF0ZShXS0Rv
d25sb2FkUmVmIGRvd25sb2FkLCBFd2tWaWV3KiB2aWV3SW1wbCkKICAgICB7CiAgICAgICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgRXdrRG93bmxvYWRKb2IoZG93bmxvYWQsIHZpZXdJbXBsKSk7CiAg
ICAgfQpAQCAtNzIsOSArNzAsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBpbmNyZW1lbnRSZWNlaXZl
ZERhdGEodWludDY0X3QgbGVuZ3RoKTsKIAogcHJpdmF0ZToKLSAgICBFd2tEb3dubG9hZEpvYihX
ZWJLaXQ6OkRvd25sb2FkUHJveHkqIGRvd25sb2FkLCBFd2tWaWV3KiB2aWV3KTsKKyAgICBFd2tE
b3dubG9hZEpvYihXS0Rvd25sb2FkUmVmIGRvd25sb2FkLCBFd2tWaWV3KiB2aWV3KTsKIAotICAg
IFdlYktpdDo6RG93bmxvYWRQcm94eSogbV9kb3dubG9hZFByb3h5OworICAgIFdLUmV0YWluUHRy
PFdLRG93bmxvYWRSZWY+IG1fZG93bmxvYWQ7CiAgICAgRXdrVmlldyogbV92aWV3SW1wbDsKICAg
ICBFd2tfRG93bmxvYWRfSm9iX1N0YXRlIG1fc3RhdGU7CiAgICAgbXV0YWJsZSBSZWZQdHI8RXdr
VXJsUmVxdWVzdD4gbV9yZXF1ZXN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2VmbC9Eb3dubG9hZE1hbmFnZXJFZmwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9Eb3dubG9hZE1hbmFnZXJFZmwuY3BwCmluZGV4IDQ1NzBhYWYuLjg5YzNlMmYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvRG93bmxvYWRNYW5hZ2VyRWZsLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL0Rvd25sb2FkTWFuYWdlckVmbC5j
cHAKQEAgLTI2LDkgKzI2LDkgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJEb3du
bG9hZE1hbmFnZXJFZmwuaCIKIAotI2luY2x1ZGUgIkRvd25sb2FkUHJveHkuaCIKICNpbmNsdWRl
ICJFd2tWaWV3LmgiCiAjaW5jbHVkZSAiV0tDb250ZXh0LmgiCisjaW5jbHVkZSAiV0tEb3dubG9h
ZC5oIgogI2luY2x1ZGUgIldLU3RyaW5nLmgiCiAjaW5jbHVkZSAiZXdrX2NvbnRleHRfcHJpdmF0
ZS5oIgogI2luY2x1ZGUgImV3a19lcnJvcl9wcml2YXRlLmgiCkBAIC00NSw3ICs0NSw3IEBAIHN0
YXRpYyBpbmxpbmUgRG93bmxvYWRNYW5hZ2VyRWZsKiB0b0Rvd25sb2FkTWFuYWdlckVmbChjb25z
dCB2b2lkKiBjbGllbnRJbmZvKQogCiBXS1N0cmluZ1JlZiBEb3dubG9hZE1hbmFnZXJFZmw6OmRl
Y2lkZURlc3RpbmF0aW9uV2l0aFN1Z2dlc3RlZEZpbGVuYW1lKFdLQ29udGV4dFJlZiwgV0tEb3du
bG9hZFJlZiB3a0Rvd25sb2FkLCBXS1N0cmluZ1JlZiBmaWxlbmFtZSwgYm9vbCogLyphbGxvd092
ZXJ3cml0ZSovLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewotICAgIEV3a0Rvd25sb2FkSm9i
KiBkb3dubG9hZCA9IHRvRG93bmxvYWRNYW5hZ2VyRWZsKGNsaWVudEluZm8pLT5kb3dubG9hZEpv
Yih0b0ltcGwod2tEb3dubG9hZCktPmRvd25sb2FkSUQoKSk7CisgICAgRXdrRG93bmxvYWRKb2Iq
IGRvd25sb2FkID0gdG9Eb3dubG9hZE1hbmFnZXJFZmwoY2xpZW50SW5mbyktPmV3a0Rvd25sb2Fk
Sm9iKHdrRG93bmxvYWQpOwogICAgIEFTU0VSVChkb3dubG9hZCk7CiAKICAgICBkb3dubG9hZC0+
c2V0U3VnZ2VzdGVkRmlsZU5hbWUodG9JbXBsKGZpbGVuYW1lKS0+c3RyaW5nKCkudXRmOCgpLmRh
dGEoKSk7CkBAIC02MiwxNCArNjIsMTQgQEAgV0tTdHJpbmdSZWYgRG93bmxvYWRNYW5hZ2VyRWZs
OjpkZWNpZGVEZXN0aW5hdGlvbldpdGhTdWdnZXN0ZWRGaWxlbmFtZShXS0NvbnRleHQKIAogdm9p
ZCBEb3dubG9hZE1hbmFnZXJFZmw6OmRpZFJlY2VpdmVSZXNwb25zZShXS0NvbnRleHRSZWYsIFdL
RG93bmxvYWRSZWYgd2tEb3dubG9hZCwgV0tVUkxSZXNwb25zZVJlZiB3a1Jlc3BvbnNlLCBjb25z
dCB2b2lkKiBjbGllbnRJbmZvKQogewotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IHRv
RG93bmxvYWRNYW5hZ2VyRWZsKGNsaWVudEluZm8pLT5kb3dubG9hZEpvYih0b0ltcGwod2tEb3du
bG9hZCktPmRvd25sb2FkSUQoKSk7CisgICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2FkID0gdG9E
b3dubG9hZE1hbmFnZXJFZmwoY2xpZW50SW5mbyktPmV3a0Rvd25sb2FkSm9iKHdrRG93bmxvYWQp
OwogICAgIEFTU0VSVChkb3dubG9hZCk7CiAgICAgZG93bmxvYWQtPnNldFJlc3BvbnNlKEV3a1Vy
bFJlc3BvbnNlOjpjcmVhdGUod2tSZXNwb25zZSkpOwogfQogCiB2b2lkIERvd25sb2FkTWFuYWdl
ckVmbDo6ZGlkQ3JlYXRlRGVzdGluYXRpb24oV0tDb250ZXh0UmVmLCBXS0Rvd25sb2FkUmVmIHdr
RG93bmxvYWQsIFdLU3RyaW5nUmVmIC8qcGF0aCovLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQog
ewotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IHRvRG93bmxvYWRNYW5hZ2VyRWZsKGNs
aWVudEluZm8pLT5kb3dubG9hZEpvYih0b0ltcGwod2tEb3dubG9hZCktPmRvd25sb2FkSUQoKSk7
CisgICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2FkID0gdG9Eb3dubG9hZE1hbmFnZXJFZmwoY2xp
ZW50SW5mbyktPmV3a0Rvd25sb2FkSm9iKHdrRG93bmxvYWQpOwogICAgIEFTU0VSVChkb3dubG9h
ZCk7CiAKICAgICBkb3dubG9hZC0+c2V0U3RhdGUoRVdLX0RPV05MT0FEX0pPQl9TVEFURV9ET1dO
TE9BRElORyk7CkBAIC03Nyw3ICs3Nyw3IEBAIHZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRD
cmVhdGVEZXN0aW5hdGlvbihXS0NvbnRleHRSZWYsIFdLRG93bmxvYWRSZWYgd2tEb3duCiAKIHZv
aWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRSZWNlaXZlRGF0YShXS0NvbnRleHRSZWYsIFdLRG93
bmxvYWRSZWYgd2tEb3dubG9hZCwgdWludDY0X3QgbGVuZ3RoLCBjb25zdCB2b2lkKiBjbGllbnRJ
bmZvKQogewotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IHRvRG93bmxvYWRNYW5hZ2Vy
RWZsKGNsaWVudEluZm8pLT5kb3dubG9hZEpvYih0b0ltcGwod2tEb3dubG9hZCktPmRvd25sb2Fk
SUQoKSk7CisgICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2FkID0gdG9Eb3dubG9hZE1hbmFnZXJF
ZmwoY2xpZW50SW5mbyktPmV3a0Rvd25sb2FkSm9iKHdrRG93bmxvYWQpOwogICAgIEFTU0VSVChk
b3dubG9hZCk7CiAgICAgZG93bmxvYWQtPmluY3JlbWVudFJlY2VpdmVkRGF0YShsZW5ndGgpOwog
fQpAQCAtODUsMzkgKzg1LDM2IEBAIHZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpkaWRSZWNlaXZl
RGF0YShXS0NvbnRleHRSZWYsIFdLRG93bmxvYWRSZWYgd2tEb3dubG9hZCwKIHZvaWQgRG93bmxv
YWRNYW5hZ2VyRWZsOjpkaWRGYWlsKFdLQ29udGV4dFJlZiwgV0tEb3dubG9hZFJlZiB3a0Rvd25s
b2FkLCBXS0Vycm9yUmVmIGVycm9yLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewogICAgIERv
d25sb2FkTWFuYWdlckVmbCogZG93bmxvYWRNYW5hZ2VyID0gdG9Eb3dubG9hZE1hbmFnZXJFZmwo
Y2xpZW50SW5mbyk7Ci0gICAgdWludDY0X3QgZG93bmxvYWRJZCA9IHRvSW1wbCh3a0Rvd25sb2Fk
KS0+ZG93bmxvYWRJRCgpOwotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IGRvd25sb2Fk
TWFuYWdlci0+ZG93bmxvYWRKb2IoZG93bmxvYWRJZCk7CisgICAgRXdrRG93bmxvYWRKb2IqIGRv
d25sb2FkID0gZG93bmxvYWRNYW5hZ2VyLT5ld2tEb3dubG9hZEpvYih3a0Rvd25sb2FkKTsKICAg
ICBBU1NFUlQoZG93bmxvYWQpOwogCiAgICAgT3duUHRyPEV3a0Vycm9yPiBld2tFcnJvciA9IEV3
a0Vycm9yOjpjcmVhdGUoZXJyb3IpOwogICAgIGRvd25sb2FkLT5zZXRTdGF0ZShFV0tfRE9XTkxP
QURfSk9CX1NUQVRFX0ZBSUxFRCk7CiAgICAgRXdrX0Rvd25sb2FkX0pvYl9FcnJvciBkb3dubG9h
ZEVycm9yID0geyBkb3dubG9hZCwgZXdrRXJyb3IuZ2V0KCkgfTsKICAgICBkb3dubG9hZC0+dmll
dygpLT5zbWFydENhbGxiYWNrPERvd25sb2FkSm9iRmFpbGVkPigpLmNhbGwoJmRvd25sb2FkRXJy
b3IpOwotICAgIGRvd25sb2FkTWFuYWdlci0+dW5yZWdpc3RlckRvd25sb2FkSm9iKGRvd25sb2Fk
SWQpOworICAgIGRvd25sb2FkTWFuYWdlci0+dW5yZWdpc3RlckRvd25sb2FkSm9iKHdrRG93bmxv
YWQpOwogfQogCiB2b2lkIERvd25sb2FkTWFuYWdlckVmbDo6ZGlkQ2FuY2VsKFdLQ29udGV4dFJl
ZiwgV0tEb3dubG9hZFJlZiB3a0Rvd25sb2FkLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewog
ICAgIERvd25sb2FkTWFuYWdlckVmbCogZG93bmxvYWRNYW5hZ2VyID0gdG9Eb3dubG9hZE1hbmFn
ZXJFZmwoY2xpZW50SW5mbyk7Ci0gICAgdWludDY0X3QgZG93bmxvYWRJZCA9IHRvSW1wbCh3a0Rv
d25sb2FkKS0+ZG93bmxvYWRJRCgpOwotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IGRv
d25sb2FkTWFuYWdlci0+ZG93bmxvYWRKb2IoZG93bmxvYWRJZCk7CisgICAgRXdrRG93bmxvYWRK
b2IqIGRvd25sb2FkID0gZG93bmxvYWRNYW5hZ2VyLT5ld2tEb3dubG9hZEpvYih3a0Rvd25sb2Fk
KTsKICAgICBBU1NFUlQoZG93bmxvYWQpOwogCiAgICAgZG93bmxvYWQtPnNldFN0YXRlKEVXS19E
T1dOTE9BRF9KT0JfU1RBVEVfQ0FOQ0VMTEVEKTsKICAgICBkb3dubG9hZC0+dmlldygpLT5zbWFy
dENhbGxiYWNrPERvd25sb2FkSm9iQ2FuY2VsbGVkPigpLmNhbGwoZG93bmxvYWQpOwotICAgIGRv
d25sb2FkTWFuYWdlci0+dW5yZWdpc3RlckRvd25sb2FkSm9iKGRvd25sb2FkSWQpOworICAgIGRv
d25sb2FkTWFuYWdlci0+dW5yZWdpc3RlckRvd25sb2FkSm9iKHdrRG93bmxvYWQpOwogfQogCiB2
b2lkIERvd25sb2FkTWFuYWdlckVmbDo6ZGlkRmluaXNoKFdLQ29udGV4dFJlZiwgV0tEb3dubG9h
ZFJlZiB3a0Rvd25sb2FkLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewogICAgIERvd25sb2Fk
TWFuYWdlckVmbCogZG93bmxvYWRNYW5hZ2VyID0gdG9Eb3dubG9hZE1hbmFnZXJFZmwoY2xpZW50
SW5mbyk7Ci0gICAgdWludDY0X3QgZG93bmxvYWRJZCA9IHRvSW1wbCh3a0Rvd25sb2FkKS0+ZG93
bmxvYWRJRCgpOwotICAgIEV3a0Rvd25sb2FkSm9iKiBkb3dubG9hZCA9IGRvd25sb2FkTWFuYWdl
ci0+ZG93bmxvYWRKb2IoZG93bmxvYWRJZCk7CisgICAgRXdrRG93bmxvYWRKb2IqIGRvd25sb2Fk
ID0gZG93bmxvYWRNYW5hZ2VyLT5ld2tEb3dubG9hZEpvYih3a0Rvd25sb2FkKTsKICAgICBBU1NF
UlQoZG93bmxvYWQpOwogCiAgICAgZG93bmxvYWQtPnNldFN0YXRlKEVXS19ET1dOTE9BRF9KT0Jf
U1RBVEVfRklOSVNIRUQpOwogICAgIGRvd25sb2FkLT52aWV3KCktPnNtYXJ0Q2FsbGJhY2s8RG93
bmxvYWRKb2JGaW5pc2hlZD4oKS5jYWxsKGRvd25sb2FkKTsKLSAgICBkb3dubG9hZE1hbmFnZXIt
PnVucmVnaXN0ZXJEb3dubG9hZEpvYihkb3dubG9hZElkKTsKKyAgICBkb3dubG9hZE1hbmFnZXIt
PnVucmVnaXN0ZXJEb3dubG9hZEpvYih3a0Rvd25sb2FkKTsKIH0KIAogRG93bmxvYWRNYW5hZ2Vy
RWZsOjpEb3dubG9hZE1hbmFnZXJFZmwoRXdrQ29udGV4dCogY29udGV4dCkKQEAgLTE0NCw5ICsx
NDEsOSBAQCBEb3dubG9hZE1hbmFnZXJFZmw6On5Eb3dubG9hZE1hbmFnZXJFZmwoKQogICAgIFdL
Q29udGV4dFNldERvd25sb2FkQ2xpZW50KHRvQVBJKG1fY29udGV4dC0+d2ViQ29udGV4dCgpLmdl
dCgpKSwgMCk7CiB9CiAKLXZvaWQgRG93bmxvYWRNYW5hZ2VyRWZsOjpyZWdpc3RlckRvd25sb2Fk
KERvd25sb2FkUHJveHkqIGRvd25sb2FkLCBFd2tWaWV3KiB2aWV3SW1wbCkKK3ZvaWQgRG93bmxv
YWRNYW5hZ2VyRWZsOjpyZWdpc3RlckRvd25sb2FkSm9iKFdLRG93bmxvYWRSZWYgZG93bmxvYWQs
IEV3a1ZpZXcqIHZpZXdJbXBsKQogewotICAgIHVpbnQ2NF90IGRvd25sb2FkSWQgPSBkb3dubG9h
ZC0+ZG93bmxvYWRJRCgpOworICAgIHVpbnQ2NF90IGRvd25sb2FkSWQgPSBXS0Rvd25sb2FkR2V0
SUQoZG93bmxvYWQpOwogICAgIGlmIChtX2Rvd25sb2FkSm9icy5jb250YWlucyhkb3dubG9hZElk
KSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xNTQsMTQgKzE1MSwxNCBAQCB2b2lkIERvd25sb2Fk
TWFuYWdlckVmbDo6cmVnaXN0ZXJEb3dubG9hZChEb3dubG9hZFByb3h5KiBkb3dubG9hZCwgRXdr
VmlldyogdmlldwogICAgIG1fZG93bmxvYWRKb2JzLmFkZChkb3dubG9hZElkLCBld2tEb3dubG9h
ZCk7CiB9CiAKLUV3a0Rvd25sb2FkSm9iKiBEb3dubG9hZE1hbmFnZXJFZmw6OmRvd25sb2FkSm9i
KHVpbnQ2NF90IGlkKSBjb25zdAorRXdrRG93bmxvYWRKb2IqIERvd25sb2FkTWFuYWdlckVmbDo6
ZXdrRG93bmxvYWRKb2IoV0tEb3dubG9hZFJlZiB3a0Rvd25sb2FkKQogewotICAgIHJldHVybiBt
X2Rvd25sb2FkSm9icy5nZXQoaWQpLmdldCgpOworICAgIHJldHVybiBtX2Rvd25sb2FkSm9icy5n
ZXQoV0tEb3dubG9hZEdldElEKHdrRG93bmxvYWQpKS5nZXQoKTsKIH0KIAotdm9pZCBEb3dubG9h
ZE1hbmFnZXJFZmw6OnVucmVnaXN0ZXJEb3dubG9hZEpvYih1aW50NjRfdCBpZCkKK3ZvaWQgRG93
bmxvYWRNYW5hZ2VyRWZsOjp1bnJlZ2lzdGVyRG93bmxvYWRKb2IoV0tEb3dubG9hZFJlZiB3a0Rv
d25sb2FkKQogewotICAgIG1fZG93bmxvYWRKb2JzLnJlbW92ZShpZCk7CisgICAgbV9kb3dubG9h
ZEpvYnMucmVtb3ZlKFdLRG93bmxvYWRHZXRJRCh3a0Rvd25sb2FkKSk7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9E
b3dubG9hZE1hbmFnZXJFZmwuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvRG93bmxv
YWRNYW5hZ2VyRWZsLmgKaW5kZXggMTRiZDU0Ny4uMjgzZGFhNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Eb3dubG9hZE1hbmFnZXJFZmwuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvZWZsL0Rvd25sb2FkTWFuYWdlckVmbC5oCkBAIC00NSwxMyArNDUs
MTMgQEAgcHVibGljOgogCiAgICAgfkRvd25sb2FkTWFuYWdlckVmbCgpOwogCi0gICAgdm9pZCBy
ZWdpc3RlckRvd25sb2FkKERvd25sb2FkUHJveHkqLCBFd2tWaWV3Kik7CisgICAgdm9pZCByZWdp
c3RlckRvd25sb2FkSm9iKFdLRG93bmxvYWRSZWYsIEV3a1ZpZXcqKTsKIAogcHJpdmF0ZToKICAg
ICBleHBsaWNpdCBEb3dubG9hZE1hbmFnZXJFZmwoRXdrQ29udGV4dCopOwogCi0gICAgRXdrRG93
bmxvYWRKb2IqIGRvd25sb2FkSm9iKHVpbnQ2NF90IGlkKSBjb25zdDsKLSAgICB2b2lkIHVucmVn
aXN0ZXJEb3dubG9hZEpvYih1aW50NjRfdCBpZCk7CisgICAgRXdrRG93bmxvYWRKb2IqIGV3a0Rv
d25sb2FkSm9iKFdLRG93bmxvYWRSZWYpOworICAgIHZvaWQgdW5yZWdpc3RlckRvd25sb2FkSm9i
KFdLRG93bmxvYWRSZWYpOwogCiAgICAgc3RhdGljIFdLU3RyaW5nUmVmIGRlY2lkZURlc3RpbmF0
aW9uV2l0aFN1Z2dlc3RlZEZpbGVuYW1lKFdLQ29udGV4dFJlZiwgV0tEb3dubG9hZFJlZiwgV0tT
dHJpbmdSZWYgZmlsZW5hbWUsIGJvb2wqIGFsbG93T3ZlcndyaXRlLCBjb25zdCB2b2lkKiBjbGll
bnRJbmZvKTsKICAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoV0tDb250ZXh0UmVm
LCBXS0Rvd25sb2FkUmVmLCBXS1VSTFJlc3BvbnNlUmVmLCBjb25zdCB2b2lkKiBjbGllbnRJbmZv
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudEJh
c2UuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50QmFzZS5jcHAK
aW5kZXggZjUwODQ0MS4uMmVmZGJkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2VmbC9QYWdlQ2xpZW50QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9QYWdlQ2xpZW50QmFzZS5jcHAKQEAgLTI5OCw3ICsyOTgsNyBAQCB2b2lkIFBhZ2VDbGll
bnRCYXNlOjp1cGRhdGVUZXh0SW5wdXRTdGF0ZSgpCiB2b2lkIFBhZ2VDbGllbnRCYXNlOjpoYW5k
bGVEb3dubG9hZFJlcXVlc3QoRG93bmxvYWRQcm94eSogZG93bmxvYWQpCiB7CiAgICAgRXdrQ29u
dGV4dCogY29udGV4dCA9IG1fdmlldy0+ZXdrQ29udGV4dCgpOwotICAgIGNvbnRleHQtPmRvd25s
b2FkTWFuYWdlcigpLT5yZWdpc3RlckRvd25sb2FkKGRvd25sb2FkLCBtX3ZpZXcpOworICAgIGNv
bnRleHQtPmRvd25sb2FkTWFuYWdlcigpLT5yZWdpc3RlckRvd25sb2FkSm9iKHRvQVBJKGRvd25s
b2FkKSwgbV92aWV3KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>