<?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>70507</bug_id>
          
          <creation_ts>2011-10-20 09:11:57 -0700</creation_ts>
          <short_desc>[Chromium] Refactor WebFrameImpl::createFrameView() to use Frame:createView</short_desc>
          <delta_ts>2011-11-03 12:12:48 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</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>70559</blocked>
    
    <blocked>70940</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Fady Samuel">fsamuel</reporter>
          <assigned_to name="Fady Samuel">fsamuel</assigned_to>
          <cc>fishd</cc>
    
    <cc>fsamuel</cc>
    
    <cc>rjkroege</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>487617</commentid>
    <comment_count>0</comment_count>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-10-20 09:11:57 -0700</bug_when>
    <thetext>These two pieces of code seem to have a lot in common. It&apos;s probably a good idea to use Frame::createView to avoid needlessly diverging in behavior over time resulting in port specific bugs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488157</commentid>
    <comment_count>1</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-10-20 22:08:58 -0700</bug_when>
    <thetext>Yes, please!  I never noticed when Frame::createView was added.  Wow, 3 years ago: http://trac.webkit.org/changeset/40435</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490065</commentid>
    <comment_count>2</comment_count>
      <attachid>112345</attachid>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-10-25 09:19:17 -0700</bug_when>
    <thetext>Created attachment 112345
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490077</commentid>
    <comment_count>3</comment_count>
      <attachid>112348</attachid>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-10-25 09:52:59 -0700</bug_when>
    <thetext>Created attachment 112348
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491032</commentid>
    <comment_count>4</comment_count>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-10-26 11:26:59 -0700</bug_when>
    <thetext>Please note: Fixed layout mode probably needs to be disabled for subframes or else you end up with scrollbars on iframe content that was meant to fit the the iframe.

How the viewport meta tag and fixed layout should interact with frames and iframes is a complex question, and I&apos;ll leave that for another bug report.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>494730</commentid>
    <comment_count>5</comment_count>
      <attachid>112348</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-11-02 10:52:32 -0700</bug_when>
    <thetext>Comment on attachment 112348
Patch

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

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:-2023
&gt; -    if (webView-&gt;isTransparent())

It looks like you are losing this step, which I think matters for chrome extensions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>494755</commentid>
    <comment_count>6</comment_count>
      <attachid>113341</attachid>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-11-02 11:28:47 -0700</bug_when>
    <thetext>Created attachment 113341
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>494852</commentid>
    <comment_count>7</comment_count>
      <attachid>112348</attachid>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-11-02 13:21:25 -0700</bug_when>
    <thetext>Comment on attachment 112348
Patch

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

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:-2023
&gt;&gt; -    if (webView-&gt;isTransparent())
&gt; 
&gt; It looks like you are losing this step, which I think matters for chrome extensions.

Oops. I totally missed those two lines. Thanks! I&apos;ve uploaded a new patch to fix this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495490</commentid>
    <comment_count>8</comment_count>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-11-03 08:38:17 -0700</bug_when>
    <thetext>*** Bug 70555 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495579</commentid>
    <comment_count>9</comment_count>
      <attachid>113341</attachid>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-11-03 10:07:10 -0700</bug_when>
    <thetext>Comment on attachment 113341
Patch

Clearing flags on attachment: 113341

Committed r99208: &lt;http://trac.webkit.org/changeset/99208&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495580</commentid>
    <comment_count>10</comment_count>
    <who name="Fady Samuel">fsamuel</who>
    <bug_when>2011-11-03 10:07:16 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495701</commentid>
    <comment_count>11</comment_count>
      <attachid>113537</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-11-03 12:11:29 -0700</bug_when>
    <thetext>Created attachment 113537
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495704</commentid>
    <comment_count>12</comment_count>
      <attachid>113537</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-11-03 12:12:48 -0700</bug_when>
    <thetext>Comment on attachment 113537
Patch

Oops.  Sorry.  Copied a bug line, but forgot to edit it.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112345</attachid>
            <date>2011-10-25 09:19:17 -0700</date>
            <delta_ts>2011-10-25 09:52:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70507-20111025121915.patch</filename>
            <type>text/plain</type>
            <size>3467</size>
            <attacher name="Fady Samuel">fsamuel</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTgzNDUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
NTVmZmI3ZTUyZjI1YWYyYmRmZmVhMzA2ZDJjNTM0Yzc1OGNkMDI3Yy4uMGJhYzRkZmI0NjYzZjQx
ODllMTU1NWRkYWU3YWFkMjYxMzRmMzZkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMiBAQAorMjAxMS0xMC0yNSAgRmFkeSBTYW11ZWwgIDxmc2FtdWVsQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIFJlZmFjdG9yIFdlYkZyYW1lSW1wbDo6Y3JlYXRl
RnJhbWVWaWV3KCkgdG8gdXNlIEZyYW1lOmNyZWF0ZVZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwNTA3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gY2hhbmdlIGluIGZ1bmN0aW9uYWxpdHkgZXhj
ZXB0IGZvciBmaXhlZCBsYXlvdXQgbW9kZS4gRml4ZWQgbGF5b3V0IG1vZGUgaGFzCisgICAgICAg
IG5vdCBiZWVuIGZ1bGx5IHVwc3RyZWFtZWQgeWV0LCBzbyBubyBuZXcgdGVzdHMgeWV0OgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA1MDcgd2lsbCBh
ZGRyZXNzIHRoaXMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNvIGZpeGVzIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDU1NQorICAgICAgICBJdCB3YXMgZGVjaWRl
ZCB0aGF0IGZpeGVkIGxheW91dCBtb2RlIG1pZ2h0IG5lZWQgdG8gYmUgZGlzYWJsZWQgZm9yIHNv
bWUgY29udGVudCwKKyAgICAgICAgYW5kIHNvIHRoaXMgY2hhbmdlIGVuYWJsZXMgdGhlIGVtYmVk
ZGVyIHRvIGRlY2lkZSB3aGV0aGVyIHRvIGVuYWJsZSBmaXhlZCBsYXlvdXQgb24KKyAgICAgICAg
bmF2aWdhdGlvbi4KKworICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUltcGw6OmNyZWF0ZUZyYW1lVmlldyk6CisKIDIwMTEtMTAtMjQgIEdl
b2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmVkIFNoYXJl
ZFVDaGFyIGFuZCB0aWdodGVuZWQgbGFuZ3VhZ2UgYXJvdW5kIGl0cyBwcmV2aW91cyB1c2VzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcAppbmRleCA0N2NhODhm
ODI3MjI2MjFhOGFmNjRmN2ZlMmM2ZTA4MGFiYWMxYmE0Li43NTMzNTc1NzI5MDY4NTk2MDc1NTI2
OTMyNzI3N2ZiMjM1ZmFmYmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJGcmFtZUltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZy
YW1lSW1wbC5jcHAKQEAgLTE5OTMsNTQgKzE5OTMsMTIgQEAgdm9pZCBXZWJGcmFtZUltcGw6OmNy
ZWF0ZUZyYW1lVmlldygpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOyAvLyBJZiBtX2ZyYW1lIGRv
ZXNuJ3QgZXhpc3QsIHdlIHByb2JhYmx5IGRpZG4ndCBpbml0IHByb3Blcmx5LgogCi0gICAgUGFn
ZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKLSAgICBBU1NFUlQocGFnZSk7Ci0gICAgQVNTRVJU
KHBhZ2UtPm1haW5GcmFtZSgpKTsKLQotICAgIGJvb2wgaXNNYWluRnJhbWUgPSBtX2ZyYW1lID09
IHBhZ2UtPm1haW5GcmFtZSgpOwotICAgIGJvb2wgdXNlRml4ZWRMYXlvdXQgPSBmYWxzZTsKLSAg
ICBJbnRTaXplIGZpeGVkTGF5b3V0U2l6ZTsKLSAgICBpZiAoaXNNYWluRnJhbWUgJiYgbV9mcmFt
ZS0+dmlldygpKSB7Ci0gICAgICAgIG1fZnJhbWUtPnZpZXcoKS0+c2V0UGFyZW50VmlzaWJsZShm
YWxzZSk7Ci0gICAgICAgIC8vIFNhdmUgdGhlIGZpeGVkIGxheW91dCBpbmZvcm1hdGlvbiBiZWZv
cmUgZGVzdHJveWluZyB0aGUKLSAgICAgICAgLy8gZXhpc3RpbmcgRnJhbWVWaWV3IG9mIHRoaXMg
ZnJhbWUuCi0gICAgICAgIHVzZUZpeGVkTGF5b3V0ID0gbV9mcmFtZS0+dmlldygpLT51c2VGaXhl
ZExheW91dCgpOwotICAgICAgICBmaXhlZExheW91dFNpemUgPSBtX2ZyYW1lLT52aWV3KCktPmZp
eGVkTGF5b3V0U2l6ZSgpOwotICAgIH0KLQotICAgIG1fZnJhbWUtPnNldFZpZXcoMCk7Ci0KICAg
ICBXZWJWaWV3SW1wbCogd2ViVmlldyA9IHZpZXdJbXBsKCk7Ci0KLSAgICBSZWZQdHI8RnJhbWVW
aWV3PiB2aWV3OwotICAgIGlmIChpc01haW5GcmFtZSkKLSAgICAgICAgdmlldyA9IEZyYW1lVmll
dzo6Y3JlYXRlKG1fZnJhbWUsIHdlYlZpZXctPnNpemUoKSk7Ci0gICAgZWxzZQotICAgICAgICB2
aWV3ID0gRnJhbWVWaWV3OjpjcmVhdGUobV9mcmFtZSk7Ci0KLSAgICBtX2ZyYW1lLT5zZXRWaWV3
KHZpZXcpOwotCi0gICAgaWYgKHdlYlZpZXctPmlzVHJhbnNwYXJlbnQoKSkKLSAgICAgICAgdmll
dy0+c2V0VHJhbnNwYXJlbnQodHJ1ZSk7Ci0KLSAgICAvLyBGSVhNRTogVGhlIE1hYyBjb2RlIGhh
cyBhIGNvbW1lbnQgYWJvdXQgdGhpcyBwb3NzaWJseSBiZWluZyB1bm5lY2Vzc2FyeS4KLSAgICAv
LyBTZWUgaW5zdGFsbEluRnJhbWUgaW4gV2ViQ29yZUZyYW1lQnJpZGdlLm1tCi0gICAgaWYgKG1f
ZnJhbWUtPm93bmVyUmVuZGVyZXIoKSkKLSAgICAgICAgbV9mcmFtZS0+b3duZXJSZW5kZXJlcigp
LT5zZXRXaWRnZXQodmlldy5nZXQoKSk7Ci0KLSAgICBpZiAoSFRNTEZyYW1lT3duZXJFbGVtZW50
KiBvd25lciA9IG1fZnJhbWUtPm93bmVyRWxlbWVudCgpKQotICAgICAgICB2aWV3LT5zZXRDYW5I
YXZlU2Nyb2xsYmFycyhvd25lci0+c2Nyb2xsaW5nTW9kZSgpICE9IFNjcm9sbGJhckFsd2F5c09m
Zik7Ci0KLSAgICBpZiAoaXNNYWluRnJhbWUpCi0gICAgICAgIHZpZXctPnNldFBhcmVudFZpc2li
bGUodHJ1ZSk7CisgICAgbV9mcmFtZS0+Y3JlYXRlVmlldyh3ZWJWaWV3LT5zaXplKCksIENvbG9y
Ojp3aGl0ZSwgZmFsc2UgLyogdHJhbnNwYXJlbnQgKi8sICB3ZWJWaWV3LT5maXhlZExheW91dFNp
emUoKSwgd2ViVmlldy0+aXNGaXhlZExheW91dE1vZGVFbmFibGVkKCkpOwogCiAjaWYgRU5BQkxF
KEdFU1RVUkVfUkVDT0dOSVpFUikKICAgICB3ZWJWaWV3LT5yZXNldEdlc3R1cmVSZWNvZ25pemVy
KCk7CiAjZW5kaWYKLQotICAgIC8vIFJlc3RvcmUgdGhlIHNhdmVkIGZpeGVkIGxheW91dCBpbmZv
cm1hdGlvbi4KLSAgICB2aWV3LT5zZXRVc2VGaXhlZExheW91dCh1c2VGaXhlZExheW91dCk7Ci0g
ICAgdmlldy0+c2V0Rml4ZWRMYXlvdXRTaXplKGZpeGVkTGF5b3V0U2l6ZSk7CiB9CiAKIFdlYkZy
YW1lSW1wbCogV2ViRnJhbWVJbXBsOjpmcm9tRnJhbWUoRnJhbWUqIGZyYW1lKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112348</attachid>
            <date>2011-10-25 09:52:59 -0700</date>
            <delta_ts>2011-11-02 13:21:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70507-20111025125257.patch</filename>
            <type>text/plain</type>
            <size>3467</size>
            <attacher name="Fady Samuel">fsamuel</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTgzNDUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
NTVmZmI3ZTUyZjI1YWYyYmRmZmVhMzA2ZDJjNTM0Yzc1OGNkMDI3Yy4uMTg4NTdkZTA0YzMyNTYx
ZjQ0MzAxMWUwM2U5OTkwZjJiYjg3Y2ZiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMiBAQAorMjAxMS0xMC0yNSAgRmFkeSBTYW11ZWwgIDxmc2FtdWVsQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIFJlZmFjdG9yIFdlYkZyYW1lSW1wbDo6Y3JlYXRl
RnJhbWVWaWV3KCkgdG8gdXNlIEZyYW1lOmNyZWF0ZVZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwNTA3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gY2hhbmdlIGluIGZ1bmN0aW9uYWxpdHkgZXhj
ZXB0IGZvciBmaXhlZCBsYXlvdXQgbW9kZS4gRml4ZWQgbGF5b3V0IG1vZGUgaGFzCisgICAgICAg
IG5vdCBiZWVuIGZ1bGx5IHVwc3RyZWFtZWQgeWV0LCBzbyBubyBuZXcgdGVzdHMgeWV0OgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA1NjIgd2lsbCBh
ZGRyZXNzIHRoaXMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNvIGZpeGVzIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDU1NQorICAgICAgICBJdCB3YXMgZGVjaWRl
ZCB0aGF0IGZpeGVkIGxheW91dCBtb2RlIG1pZ2h0IG5lZWQgdG8gYmUgZGlzYWJsZWQgZm9yIHNv
bWUgY29udGVudCwKKyAgICAgICAgYW5kIHNvIHRoaXMgY2hhbmdlIGVuYWJsZXMgdGhlIGVtYmVk
ZGVyIHRvIGRlY2lkZSB3aGV0aGVyIHRvIGVuYWJsZSBmaXhlZCBsYXlvdXQgb24KKyAgICAgICAg
bmF2aWdhdGlvbi4KKworICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUltcGw6OmNyZWF0ZUZyYW1lVmlldyk6CisKIDIwMTEtMTAtMjQgIEdl
b2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmVkIFNoYXJl
ZFVDaGFyIGFuZCB0aWdodGVuZWQgbGFuZ3VhZ2UgYXJvdW5kIGl0cyBwcmV2aW91cyB1c2VzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcAppbmRleCA0N2NhODhm
ODI3MjI2MjFhOGFmNjRmN2ZlMmM2ZTA4MGFiYWMxYmE0Li43NTMzNTc1NzI5MDY4NTk2MDc1NTI2
OTMyNzI3N2ZiMjM1ZmFmYmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJGcmFtZUltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZy
YW1lSW1wbC5jcHAKQEAgLTE5OTMsNTQgKzE5OTMsMTIgQEAgdm9pZCBXZWJGcmFtZUltcGw6OmNy
ZWF0ZUZyYW1lVmlldygpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOyAvLyBJZiBtX2ZyYW1lIGRv
ZXNuJ3QgZXhpc3QsIHdlIHByb2JhYmx5IGRpZG4ndCBpbml0IHByb3Blcmx5LgogCi0gICAgUGFn
ZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKLSAgICBBU1NFUlQocGFnZSk7Ci0gICAgQVNTRVJU
KHBhZ2UtPm1haW5GcmFtZSgpKTsKLQotICAgIGJvb2wgaXNNYWluRnJhbWUgPSBtX2ZyYW1lID09
IHBhZ2UtPm1haW5GcmFtZSgpOwotICAgIGJvb2wgdXNlRml4ZWRMYXlvdXQgPSBmYWxzZTsKLSAg
ICBJbnRTaXplIGZpeGVkTGF5b3V0U2l6ZTsKLSAgICBpZiAoaXNNYWluRnJhbWUgJiYgbV9mcmFt
ZS0+dmlldygpKSB7Ci0gICAgICAgIG1fZnJhbWUtPnZpZXcoKS0+c2V0UGFyZW50VmlzaWJsZShm
YWxzZSk7Ci0gICAgICAgIC8vIFNhdmUgdGhlIGZpeGVkIGxheW91dCBpbmZvcm1hdGlvbiBiZWZv
cmUgZGVzdHJveWluZyB0aGUKLSAgICAgICAgLy8gZXhpc3RpbmcgRnJhbWVWaWV3IG9mIHRoaXMg
ZnJhbWUuCi0gICAgICAgIHVzZUZpeGVkTGF5b3V0ID0gbV9mcmFtZS0+dmlldygpLT51c2VGaXhl
ZExheW91dCgpOwotICAgICAgICBmaXhlZExheW91dFNpemUgPSBtX2ZyYW1lLT52aWV3KCktPmZp
eGVkTGF5b3V0U2l6ZSgpOwotICAgIH0KLQotICAgIG1fZnJhbWUtPnNldFZpZXcoMCk7Ci0KICAg
ICBXZWJWaWV3SW1wbCogd2ViVmlldyA9IHZpZXdJbXBsKCk7Ci0KLSAgICBSZWZQdHI8RnJhbWVW
aWV3PiB2aWV3OwotICAgIGlmIChpc01haW5GcmFtZSkKLSAgICAgICAgdmlldyA9IEZyYW1lVmll
dzo6Y3JlYXRlKG1fZnJhbWUsIHdlYlZpZXctPnNpemUoKSk7Ci0gICAgZWxzZQotICAgICAgICB2
aWV3ID0gRnJhbWVWaWV3OjpjcmVhdGUobV9mcmFtZSk7Ci0KLSAgICBtX2ZyYW1lLT5zZXRWaWV3
KHZpZXcpOwotCi0gICAgaWYgKHdlYlZpZXctPmlzVHJhbnNwYXJlbnQoKSkKLSAgICAgICAgdmll
dy0+c2V0VHJhbnNwYXJlbnQodHJ1ZSk7Ci0KLSAgICAvLyBGSVhNRTogVGhlIE1hYyBjb2RlIGhh
cyBhIGNvbW1lbnQgYWJvdXQgdGhpcyBwb3NzaWJseSBiZWluZyB1bm5lY2Vzc2FyeS4KLSAgICAv
LyBTZWUgaW5zdGFsbEluRnJhbWUgaW4gV2ViQ29yZUZyYW1lQnJpZGdlLm1tCi0gICAgaWYgKG1f
ZnJhbWUtPm93bmVyUmVuZGVyZXIoKSkKLSAgICAgICAgbV9mcmFtZS0+b3duZXJSZW5kZXJlcigp
LT5zZXRXaWRnZXQodmlldy5nZXQoKSk7Ci0KLSAgICBpZiAoSFRNTEZyYW1lT3duZXJFbGVtZW50
KiBvd25lciA9IG1fZnJhbWUtPm93bmVyRWxlbWVudCgpKQotICAgICAgICB2aWV3LT5zZXRDYW5I
YXZlU2Nyb2xsYmFycyhvd25lci0+c2Nyb2xsaW5nTW9kZSgpICE9IFNjcm9sbGJhckFsd2F5c09m
Zik7Ci0KLSAgICBpZiAoaXNNYWluRnJhbWUpCi0gICAgICAgIHZpZXctPnNldFBhcmVudFZpc2li
bGUodHJ1ZSk7CisgICAgbV9mcmFtZS0+Y3JlYXRlVmlldyh3ZWJWaWV3LT5zaXplKCksIENvbG9y
Ojp3aGl0ZSwgZmFsc2UgLyogdHJhbnNwYXJlbnQgKi8sICB3ZWJWaWV3LT5maXhlZExheW91dFNp
emUoKSwgd2ViVmlldy0+aXNGaXhlZExheW91dE1vZGVFbmFibGVkKCkpOwogCiAjaWYgRU5BQkxF
KEdFU1RVUkVfUkVDT0dOSVpFUikKICAgICB3ZWJWaWV3LT5yZXNldEdlc3R1cmVSZWNvZ25pemVy
KCk7CiAjZW5kaWYKLQotICAgIC8vIFJlc3RvcmUgdGhlIHNhdmVkIGZpeGVkIGxheW91dCBpbmZv
cm1hdGlvbi4KLSAgICB2aWV3LT5zZXRVc2VGaXhlZExheW91dCh1c2VGaXhlZExheW91dCk7Ci0g
ICAgdmlldy0+c2V0Rml4ZWRMYXlvdXRTaXplKGZpeGVkTGF5b3V0U2l6ZSk7CiB9CiAKIFdlYkZy
YW1lSW1wbCogV2ViRnJhbWVJbXBsOjpmcm9tRnJhbWUoRnJhbWUqIGZyYW1lKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113341</attachid>
            <date>2011-11-02 11:28:47 -0700</date>
            <delta_ts>2011-11-03 12:11:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70507-20111102142846.patch</filename>
            <type>text/plain</type>
            <size>3479</size>
            <attacher name="Fady Samuel">fsamuel</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTkwNzMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
ZjBmYmZhZmUxMDljNzAwMzJhZjBlMmNiZTZkNWJkNzIyMzE3NGFiYi4uMThhYWYyODg4ZDVmMzNk
MTc4YjgwNzJhMjlkMmVmNTY0Y2JmMjlkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMiBAQAorMjAxMS0xMS0wMiAgRmFkeSBTYW11ZWwgIDxmc2FtdWVsQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIFJlZmFjdG9yIFdlYkZyYW1lSW1wbDo6Y3JlYXRl
RnJhbWVWaWV3KCkgdG8gdXNlIEZyYW1lOmNyZWF0ZVZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwNTA3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gY2hhbmdlIGluIGZ1bmN0aW9uYWxpdHkgZXhj
ZXB0IGZvciBmaXhlZCBsYXlvdXQgbW9kZS4gRml4ZWQgbGF5b3V0IG1vZGUgaGFzCisgICAgICAg
IG5vdCBiZWVuIGZ1bGx5IHVwc3RyZWFtZWQgeWV0LCBzbyBubyBuZXcgdGVzdHMgeWV0OgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA1NjIgd2lsbCBh
ZGRyZXNzIHRoaXMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNvIGZpeGVzIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDU1NQorICAgICAgICBJdCB3YXMgZGVjaWRl
ZCB0aGF0IGZpeGVkIGxheW91dCBtb2RlIG1pZ2h0IG5lZWQgdG8gYmUgZGlzYWJsZWQgZm9yIHNv
bWUgY29udGVudCwKKyAgICAgICAgYW5kIHNvIHRoaXMgY2hhbmdlIGVuYWJsZXMgdGhlIGVtYmVk
ZGVyIHRvIGRlY2lkZSB3aGV0aGVyIHRvIGVuYWJsZSBmaXhlZCBsYXlvdXQgb24KKyAgICAgICAg
bmF2aWdhdGlvbi4KKworICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUltcGw6OmNyZWF0ZUZyYW1lVmlldyk6CisKIDIwMTEtMTEtMDIgIEFu
ZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2Vk
IGZpeCBmb3IgYnVpbGQgZmFpbHVyZSBvbiBjaHJvbWl1bSBzaGFyZWQgbGludXggY2F1c2VkIGJ5
IHI5OTAyMC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1l
SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCmlu
ZGV4IDBjNzc0YzkwMDFhZGU1YTFlZjViNzJmNDJiZmEzZGM2YmQ2MTBjODguLmJmMjNkMTdhZGE0
NjI1YmE1ODJhNTY3ZDgzY2ZlZGM5MmQyYTE0NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViRnJhbWVJbXBsLmNwcApAQCAtMjA2MCw1NCArMjA2MCwxMiBAQCB2b2lkIFdlYkZy
YW1lSW1wbDo6Y3JlYXRlRnJhbWVWaWV3KCkKIHsKICAgICBBU1NFUlQobV9mcmFtZSk7IC8vIElm
IG1fZnJhbWUgZG9lc24ndCBleGlzdCwgd2UgcHJvYmFibHkgZGlkbid0IGluaXQgcHJvcGVybHku
CiAKLSAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOwotICAgIEFTU0VSVChwYWdlKTsK
LSAgICBBU1NFUlQocGFnZS0+bWFpbkZyYW1lKCkpOwotCi0gICAgYm9vbCBpc01haW5GcmFtZSA9
IG1fZnJhbWUgPT0gcGFnZS0+bWFpbkZyYW1lKCk7Ci0gICAgYm9vbCB1c2VGaXhlZExheW91dCA9
IGZhbHNlOwotICAgIEludFNpemUgZml4ZWRMYXlvdXRTaXplOwotICAgIGlmIChpc01haW5GcmFt
ZSAmJiBtX2ZyYW1lLT52aWV3KCkpIHsKLSAgICAgICAgbV9mcmFtZS0+dmlldygpLT5zZXRQYXJl
bnRWaXNpYmxlKGZhbHNlKTsKLSAgICAgICAgLy8gU2F2ZSB0aGUgZml4ZWQgbGF5b3V0IGluZm9y
bWF0aW9uIGJlZm9yZSBkZXN0cm95aW5nIHRoZQotICAgICAgICAvLyBleGlzdGluZyBGcmFtZVZp
ZXcgb2YgdGhpcyBmcmFtZS4KLSAgICAgICAgdXNlRml4ZWRMYXlvdXQgPSBtX2ZyYW1lLT52aWV3
KCktPnVzZUZpeGVkTGF5b3V0KCk7Ci0gICAgICAgIGZpeGVkTGF5b3V0U2l6ZSA9IG1fZnJhbWUt
PnZpZXcoKS0+Zml4ZWRMYXlvdXRTaXplKCk7Ci0gICAgfQotCi0gICAgbV9mcmFtZS0+c2V0Vmll
dygwKTsKLQogICAgIFdlYlZpZXdJbXBsKiB3ZWJWaWV3ID0gdmlld0ltcGwoKTsKLQotICAgIFJl
ZlB0cjxGcmFtZVZpZXc+IHZpZXc7Ci0gICAgaWYgKGlzTWFpbkZyYW1lKQotICAgICAgICB2aWV3
ID0gRnJhbWVWaWV3OjpjcmVhdGUobV9mcmFtZSwgd2ViVmlldy0+c2l6ZSgpKTsKLSAgICBlbHNl
Ci0gICAgICAgIHZpZXcgPSBGcmFtZVZpZXc6OmNyZWF0ZShtX2ZyYW1lKTsKLQotICAgIG1fZnJh
bWUtPnNldFZpZXcodmlldyk7Ci0KLSAgICBpZiAod2ViVmlldy0+aXNUcmFuc3BhcmVudCgpKQot
ICAgICAgICB2aWV3LT5zZXRUcmFuc3BhcmVudCh0cnVlKTsKLQotICAgIC8vIEZJWE1FOiBUaGUg
TWFjIGNvZGUgaGFzIGEgY29tbWVudCBhYm91dCB0aGlzIHBvc3NpYmx5IGJlaW5nIHVubmVjZXNz
YXJ5LgotICAgIC8vIFNlZSBpbnN0YWxsSW5GcmFtZSBpbiBXZWJDb3JlRnJhbWVCcmlkZ2UubW0K
LSAgICBpZiAobV9mcmFtZS0+b3duZXJSZW5kZXJlcigpKQotICAgICAgICBtX2ZyYW1lLT5vd25l
clJlbmRlcmVyKCktPnNldFdpZGdldCh2aWV3LmdldCgpKTsKLQotICAgIGlmIChIVE1MRnJhbWVP
d25lckVsZW1lbnQqIG93bmVyID0gbV9mcmFtZS0+b3duZXJFbGVtZW50KCkpCi0gICAgICAgIHZp
ZXctPnNldENhbkhhdmVTY3JvbGxiYXJzKG93bmVyLT5zY3JvbGxpbmdNb2RlKCkgIT0gU2Nyb2xs
YmFyQWx3YXlzT2ZmKTsKLQotICAgIGlmIChpc01haW5GcmFtZSkKLSAgICAgICAgdmlldy0+c2V0
UGFyZW50VmlzaWJsZSh0cnVlKTsKKyAgICBtX2ZyYW1lLT5jcmVhdGVWaWV3KHdlYlZpZXctPnNp
emUoKSwgQ29sb3I6OndoaXRlLCB3ZWJWaWV3LT5pc1RyYW5zcGFyZW50KCksICB3ZWJWaWV3LT5m
aXhlZExheW91dFNpemUoKSwgd2ViVmlldy0+aXNGaXhlZExheW91dE1vZGVFbmFibGVkKCkpOwog
CiAjaWYgRU5BQkxFKEdFU1RVUkVfUkVDT0dOSVpFUikKICAgICB3ZWJWaWV3LT5yZXNldEdlc3R1
cmVSZWNvZ25pemVyKCk7CiAjZW5kaWYKLQotICAgIC8vIFJlc3RvcmUgdGhlIHNhdmVkIGZpeGVk
IGxheW91dCBpbmZvcm1hdGlvbi4KLSAgICB2aWV3LT5zZXRVc2VGaXhlZExheW91dCh1c2VGaXhl
ZExheW91dCk7Ci0gICAgdmlldy0+c2V0Rml4ZWRMYXlvdXRTaXplKGZpeGVkTGF5b3V0U2l6ZSk7
CiB9CiAKIFdlYkZyYW1lSW1wbCogV2ViRnJhbWVJbXBsOjpmcm9tRnJhbWUoRnJhbWUqIGZyYW1l
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113537</attachid>
            <date>2011-11-03 12:11:29 -0700</date>
            <delta_ts>2011-11-03 12:12:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70507-20111103121128.patch</filename>
            <type>text/plain</type>
            <size>20989</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTkyMjMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAwMTI4MjBkMzgyYTY4NGVk
NjA2ZDQ3MWM3MTE1ODJiNTVlNmM3NjFjLi5jMDc5NGQ5OGYxYWQzY2Q5NjdhYzg0NDIzZjk3YzE1
OWM4OGZlNGY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTQgQEAKKzIwMTEtMTEtMDMgIEFkcmll
bm5lIFdhbGtlciAgPGVubmVAZ29vZ2xlLmNvbT4KKworICAgICAgICBbY2hyb21pdW1dIEZpeCBp
bmNvcnJlY3QgdmlzaWJpbGl0eS9zY2lzc29yIHJlY3QgZm9yIHRocmVhZGVkIGNvbXBvc2l0aW5n
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDUwNwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluIG9yZGVy
IHRvIHByb3Blcmx5IHNjcm9sbCBpbmRlcGVuZGVudCBvZiBsYXlvdXQgb24gdGhlIGNvbXBvc2l0
b3IKKyAgICAgICAgdGhyZWFkLCB3ZSBoYXZlIHRvIGFwcGx5IHRoZSBzY3JvbGwgdG8gdGhlIHJp
Z2h0IGxheWVyLiBQcmV2aW91c2x5LAorICAgICAgICB0aGUgTm9uQ29tcG9zaXRlZENvbnRlbnRI
b3N0IHdhcyB0aGUgcm9vdCBvZiB0aGUgZ3JhcGhpY3MgbGF5ZXIgdHJlZQorICAgICAgICB3aXRo
IGFsbCBvdGhlciBsYXllcnMgdW5kZXJuZWF0aCBpdC4gSG93ZXZlciwgYXBwbHlpbmcgYSBzY3Jv
bGwgdG8KKyAgICAgICAgdGhhdCBsYXllciB3b3VsZCBhbHNvIHNjcm9sbCB0aGUgY2xpcCBsYXll
ciBmb3IgdGhlIG1haW4gZnJhbWUKKyAgICAgICAgdW5kZXJuZWF0aCBpdCwgY2F1c2luZyB2aXNp
YmlsaXR5IGlzc3Vlcy4KKworICAgICAgICBUaGlzIHBhdGNoIG1vdmVzIHRoZSBOb25Db21wb3Np
dGVkSG9zdCB0byBiZSBhIGNoaWxkIG9mIHRoZQorICAgICAgICBSZW5kZXJMYXllckNvbXBvc2l0
b3IncyBzY3JvbGwgbGF5ZXIuIFRoaXMgd2FzIGV4cG9zZWQgb24KKyAgICAgICAgUmVuZGVyTGF5
ZXJDb21wb3NpdG9yLCBiZWNhdXNlIHRoZXJlJ3Mgbm8gb3RoZXIgd2F5IHRvIGdldCB0byB0aGlz
CisgICAgICAgIGxheWVyIGluIGEgd2F5IHRoYXQgZG9lc24ndCBtYWtlIGFzc3VtcHRpb25zIGFi
b3V0IHRoZSBzdHJ1Y3R1cmUgb2YKKyAgICAgICAgdGhlIGxheWVycyBvbiBhIGZyYW1lLgorCisg
ICAgICAgIFRoaXMgYWxzbyByZW1vdmVzIHRoZSBoYWNrcyBpbiBjYWxjdWxhdGVWaXNpYmxlTGF5
ZXJSZWN0IGFuZAorICAgICAgICB0aWxpbmdUcmFuc2Zvcm0gZm9yIHNjcm9sbCBwb3NpdGlvbi4K
KworICAgICAgICBQYXJ0aWFsbHkgdGVzdGVkIGJ5IGV4aXN0aW5nIGNvbXBvc2l0b3IgdGVzdHMu
IE1hbnVhbGx5IHRlc3RlZAorICAgICAgICB0aHJlYWRlZCBjb21wb3NpdGluZyBzY3JvbGxpbmcu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Ob25Db21wb3NpdGVkQ29u
dGVudEhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Tm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0
OjpzZXRTY3JvbGxMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpOb25Db21wb3NpdGVkQ29udGVu
dEhvc3Q6OnNldFZpZXdwb3J0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5vbkNvbXBvc2l0ZWRDb250
ZW50SG9zdDo6c2Nyb2xsTGF5ZXIpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL05vbkNvbXBvc2l0ZWRDb250ZW50SG9zdC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
Q0xheWVyVHJlZUhvc3Q6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVyVHJlZUhv
c3Q6OkNDTGF5ZXJUcmVlSG9zdCk6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVyVHJlZUhvc3Q6
OmFwcGx5U2Nyb2xsRGVsdGFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVHJlZUhvc3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUcmVlSG9z
dDo6c2V0Um9vdExheWVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9j
Yy9DQ0xheWVyVHJlZUhvc3RDb21tb24uaDoKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUcmVl
SG9zdENvbW1vbjo6Y2FsY3VsYXRlVmlzaWJsZUxheWVyUmVjdCk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpmaW5kU2Nyb2xsTGF5ZXIpOgorICAgICAgICAoV2ViQ29yZTo6Q0NMYXllclRy
ZWVIb3N0SW1wbDo6c2V0Um9vdExheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUcmVl
SG9zdEltcGw6OnNjcm9sbFJvb3RMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVyVHJl
ZUhvc3RJbXBsOjpwcm9jZXNzU2Nyb2xsRGVsdGFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmg6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpDQ1RpbGVkTGF5ZXJJbXBsOjp0aWxpbmdUcmFuc2Zvcm0pOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjpzY3JvbGxMYXllcik6CisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckxheWVyQ29tcG9zaXRvci5oOgorCiAyMDExLTExLTAzICBNYXJrIEhhaG5lbmJlcmcgIDxt
aGFobmVuYmVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgRGUtdmlydHVhbGl6ZSBKU09iamVjdDo6
Y2xhc3NOYW1lCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDAxYzYzODllODU4NDUxNDZk
NWZmYjlkY2Q5NTEyZjgyMDY5MjI5ZTAuLmQwYTEyYzVlMGRkM2QwOThjMTAxMmRlNTU3NDJjM2Mx
NTQ2ZThhMDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIw
MTEtMTEtMDMgIEFkcmllbm5lIFdhbGtlciAgPGVubmVAZ29vZ2xlLmNvbT4KKworICAgICAgICBb
Y2hyb21pdW1dIEZpeCBpbmNvcnJlY3QgdmlzaWJpbGl0eS9zY2lzc29yIHJlY3QgZm9yIHRocmVh
ZGVkIGNvbXBvc2l0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD03MDUwNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogc3JjL1dlYkxheWVyVHJlZVZpZXdJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViTGF5ZXJUcmVlVmlld0ltcGw6OldlYkxheWVyVHJlZVZpZXdJbXBsKToKKyAgICAgICAgKiBz
cmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6c2V0Um9v
dEdyYXBoaWNzTGF5ZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6c2V0SXNBY2Nl
bGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKToKKwogMjAxMS0xMS0wMyAgRmFkeSBTYW11ZWwgIDxm
c2FtdWVsQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIFJlZmFjdG9yIFdlYkZy
YW1lSW1wbDo6Y3JlYXRlRnJhbWVWaWV3KCkgdG8gdXNlIEZyYW1lOmNyZWF0ZVZpZXcKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL05vbkNvbXBv
c2l0ZWRDb250ZW50SG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9Ob25Db21wb3NpdGVkQ29udGVudEhvc3QuY3BwCmluZGV4IGZjY2I1ZjZmZGNjMzQz
ZmU1M2NiZWM3Y2RiZWY5ZDczMzQ0N2M3YWUuLmJhMjY2NzMxNjFmMjMyMDRmODY2ZjM5Mjc5MjA3
M2YyN2ZmZDc3ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL05vbkNvbXBvc2l0ZWRDb250ZW50SG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LmNw
cApAQCAtNDksMzQgKzQ5LDUxIEBAIE5vbkNvbXBvc2l0ZWRDb250ZW50SG9zdDo6fk5vbkNvbXBv
c2l0ZWRDb250ZW50SG9zdCgpCiB7CiB9CiAKLXZvaWQgTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0
OjpzZXRSb290TGF5ZXIoR3JhcGhpY3NMYXllciogbGF5ZXIpCit2b2lkIE5vbkNvbXBvc2l0ZWRD
b250ZW50SG9zdDo6c2V0U2Nyb2xsTGF5ZXIoR3JhcGhpY3NMYXllciogbGF5ZXIpCiB7Ci0gICAg
bV9ncmFwaGljc0xheWVyLT5yZW1vdmVBbGxDaGlsZHJlbigpOwogICAgIG1fZ3JhcGhpY3NMYXll
ci0+c2V0TmVlZHNEaXNwbGF5KCk7Ci0gICAgaWYgKGxheWVyKQotICAgICAgICBtX2dyYXBoaWNz
TGF5ZXItPmFkZENoaWxkKGxheWVyKTsKLSAgICBlbHNlCisKKyAgICBpZiAoIWxheWVyKSB7Cisg
ICAgICAgIG1fZ3JhcGhpY3NMYXllci0+cmVtb3ZlRnJvbVBhcmVudCgpOwogICAgICAgICBtX2dy
YXBoaWNzTGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS0+c2V0TGF5ZXJUcmVlSG9zdCgwKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChsYXllci0+cGxhdGZvcm1MYXllcigpID09IHNj
cm9sbExheWVyKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGxheWVyLT5hZGRDaGlsZEF0SW5k
ZXgobV9ncmFwaGljc0xheWVyLmdldCgpLCAwKTsKKyAgICBBU1NFUlQoc2Nyb2xsTGF5ZXIoKSk7
CiB9CiAKIHZvaWQgTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0OjpzZXRWaWV3cG9ydChjb25zdCBJ
bnRTaXplJiB2aWV3cG9ydFNpemUsIGNvbnN0IEludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29uc3Qg
SW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKQogeworICAgIGlmICghc2Nyb2xsTGF5ZXIoKSkKKyAg
ICAgICAgcmV0dXJuOworCiAgICAgYm9vbCB2aXNpYmxlUmVjdENoYW5nZWQgPSBtX3ZpZXdwb3J0
U2l6ZSAhPSB2aWV3cG9ydFNpemU7CiAKICAgICBtX3ZpZXdwb3J0U2l6ZSA9IHZpZXdwb3J0U2l6
ZTsKLSAgICBtX2dyYXBoaWNzTGF5ZXItPnBsYXRmb3JtTGF5ZXIoKS0+c2V0U2Nyb2xsUG9zaXRp
b24oc2Nyb2xsUG9zaXRpb24pOworICAgIHNjcm9sbExheWVyKCktPnNldFNjcm9sbFBvc2l0aW9u
KHNjcm9sbFBvc2l0aW9uKTsKICAgICBJbnRTaXplIG1heFNjcm9sbCA9IGNvbnRlbnRzU2l6ZSAt
IHZpZXdwb3J0U2l6ZTsKICAgICAvLyBUaGUgdmlld3BvcnQgbWF5IGJlIGxhcmdlciB0aGFuIHRo
ZSBjb250ZW50cyBpbiBzb21lIGNhc2VzLCBzdWNoIGFzCiAgICAgLy8gaGF2aW5nIGEgdmVydGlj
YWwgc2Nyb2xsYmFyIGJ1dCBubyBob3Jpem9udGFsIG92ZXJmbG93LgogICAgIG1heFNjcm9sbC5j
bGFtcE5lZ2F0aXZlVG9aZXJvKCk7CiAKLSAgICBtX2dyYXBoaWNzTGF5ZXItPnBsYXRmb3JtTGF5
ZXIoKS0+c2V0TWF4U2Nyb2xsUG9zaXRpb24obWF4U2Nyb2xsKTsKKyAgICBzY3JvbGxMYXllcigp
LT5zZXRNYXhTY3JvbGxQb3NpdGlvbihtYXhTY3JvbGwpOwogICAgIG1fZ3JhcGhpY3NMYXllci0+
c2V0U2l6ZShjb250ZW50c1NpemUpOwogCiAgICAgaWYgKHZpc2libGVSZWN0Q2hhbmdlZCkKICAg
ICAgICAgbV9ncmFwaGljc0xheWVyLT5zZXROZWVkc0Rpc3BsYXkoKTsKIH0KIAorTGF5ZXJDaHJv
bWl1bSogTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0OjpzY3JvbGxMYXllcigpCit7CisgICAgaWYg
KCFtX2dyYXBoaWNzTGF5ZXItPnBhcmVudCgpKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1
cm4gbV9ncmFwaGljc0xheWVyLT5wYXJlbnQoKS0+cGxhdGZvcm1MYXllcigpOworfQorCiB2b2lk
IE5vbkNvbXBvc2l0ZWRDb250ZW50SG9zdDo6cHJvdGVjdFZpc2libGVUaWxlVGV4dHVyZXMoKQog
ewogICAgIG1fZ3JhcGhpY3NMYXllci0+cGxhdGZvcm1MYXllcigpLT5wcm90ZWN0VmlzaWJsZVRp
bGVUZXh0dXJlcygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Ob25Db21wb3NpdGVkQ29udGVudEhvc3QuaAppbmRl
eCA4OWE4ZmNlY2ExNWQwYjE5OGFkOTczYTU5MDU0Zjc3ZDZmNjM4MzI5Li5iNmI1ZTJkN2VkNWVi
MjA5NGNmYzc3YjYxOGE4M2ViZTMyZGZlOTcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Ob25Db21wb3NpdGVkQ29udGVudEhvc3QuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Ob25Db21wb3NpdGVk
Q29udGVudEhvc3QuaApAQCAtMzksNiArMzksNyBAQCBjbGFzcyBHcmFwaGljc0xheWVyOwogY2xh
c3MgR3JhcGhpY3NDb250ZXh0OwogY2xhc3MgSW50UG9pbnQ7CiBjbGFzcyBJbnRSZWN0OworY2xh
c3MgTGF5ZXJDaHJvbWl1bTsKIGNsYXNzIExheWVyUGFpbnRlckNocm9taXVtOwogCiBjbGFzcyBO
b25Db21wb3NpdGVkQ29udGVudEhvc3QgOiBwdWJsaWMgR3JhcGhpY3NMYXllckNsaWVudCB7CkBA
IC01MSwxMCArNTIsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+Tm9uQ29tcG9zaXRlZENvbnRl
bnRIb3N0KCk7CiAKICAgICB2b2lkIGludmFsaWRhdGVSZWN0KGNvbnN0IEludFJlY3QmKTsKLSAg
ICB2b2lkIHNldFJvb3RMYXllcihHcmFwaGljc0xheWVyKik7CisgICAgdm9pZCBzZXRTY3JvbGxM
YXllcihHcmFwaGljc0xheWVyKik7CiAgICAgdm9pZCBzZXRWaWV3cG9ydChjb25zdCBJbnRTaXpl
JiB2aWV3cG9ydFNpemUsIGNvbnN0IEludFNpemUmIGNvbnRlbnRzU2l6ZSwgY29uc3QgSW50UG9p
bnQmIHNjcm9sbFBvc2l0aW9uKTsKICAgICB2b2lkIHByb3RlY3RWaXNpYmxlVGlsZVRleHR1cmVz
KCk7Ci0gICAgR3JhcGhpY3NMYXllciogdG9wTGV2ZWxSb290TGF5ZXIoKSBjb25zdCB7IHJldHVy
biBtX2dyYXBoaWNzTGF5ZXIuZ2V0KCk7IH0KIAogcHJpdmF0ZToKICAgICBleHBsaWNpdCBOb25D
b21wb3NpdGVkQ29udGVudEhvc3QoUGFzc093blB0cjxMYXllclBhaW50ZXJDaHJvbWl1bT4gY29u
dGVudFBhaW50KTsKQEAgLTY2LDYgKzY2LDggQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIGJvb2wg
c2hvd0RlYnVnQm9yZGVycygpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBzaG93UmVwYWludENv
dW50ZXIoKSBjb25zdDsKIAorICAgIExheWVyQ2hyb21pdW0qIHNjcm9sbExheWVyKCk7CisKICAg
ICBPd25QdHI8R3JhcGhpY3NMYXllcj4gbV9ncmFwaGljc0xheWVyOwogICAgIE93blB0cjxMYXll
clBhaW50ZXJDaHJvbWl1bT4gbV9jb250ZW50UGFpbnQ7CiAgICAgSW50U2l6ZSBtX3ZpZXdwb3J0
U2l6ZTsKQEAgLTc0LDQgKzc2LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
IAogI2VuZGlmIC8vIE5vbkNvbXBvc2l0ZWRDb250ZW50SG9zdF9oCi0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9z
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xh
eWVyVHJlZUhvc3QuY3BwCmluZGV4IDA0NjFiZGY5YjdjMThlMjRhN2U4OWZjODk3NGEzZWI2YjU5
ZjEyNWEuLmI5MDE2MTczOTQwZGJjODY0YTk5YjY5OWJiOWNmYzhhOTI3MDkxOWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJU
cmVlSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcApAQCAtNDAsMjAgKzQwLDE5IEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxDQ0xheWVyVHJlZUhvc3Q+IENDTGF5ZXJUcmVlSG9z
dDo6Y3JlYXRlKENDTGF5ZXJUcmVlSG9zdENsaWVudCogY2xpZW50LCBQYXNzUmVmUHRyPExheWVy
Q2hyb21pdW0+IHJvb3RMYXllciwgY29uc3QgQ0NTZXR0aW5ncyYgc2V0dGluZ3MpCitQYXNzUmVm
UHRyPENDTGF5ZXJUcmVlSG9zdD4gQ0NMYXllclRyZWVIb3N0OjpjcmVhdGUoQ0NMYXllclRyZWVI
b3N0Q2xpZW50KiBjbGllbnQsIGNvbnN0IENDU2V0dGluZ3MmIHNldHRpbmdzKQogewotICAgIFJl
ZlB0cjxDQ0xheWVyVHJlZUhvc3Q+IGxheWVyVHJlZUhvc3QgPSBhZG9wdFJlZihuZXcgQ0NMYXll
clRyZWVIb3N0KGNsaWVudCwgcm9vdExheWVyLCBzZXR0aW5ncykpOworICAgIFJlZlB0cjxDQ0xh
eWVyVHJlZUhvc3Q+IGxheWVyVHJlZUhvc3QgPSBhZG9wdFJlZihuZXcgQ0NMYXllclRyZWVIb3N0
KGNsaWVudCwgc2V0dGluZ3MpKTsKICAgICBpZiAoIWxheWVyVHJlZUhvc3QtPmluaXRpYWxpemUo
KSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuIGxheWVyVHJlZUhvc3Q7CiB9CiAKLUND
TGF5ZXJUcmVlSG9zdDo6Q0NMYXllclRyZWVIb3N0KENDTGF5ZXJUcmVlSG9zdENsaWVudCogY2xp
ZW50LCBQYXNzUmVmUHRyPExheWVyQ2hyb21pdW0+IHJvb3RMYXllciwgY29uc3QgQ0NTZXR0aW5n
cyYgc2V0dGluZ3MpCitDQ0xheWVyVHJlZUhvc3Q6OkNDTGF5ZXJUcmVlSG9zdChDQ0xheWVyVHJl
ZUhvc3RDbGllbnQqIGNsaWVudCwgY29uc3QgQ0NTZXR0aW5ncyYgc2V0dGluZ3MpCiAgICAgOiBt
X2NvbXBvc2l0b3JJZGVudGlmaWVyKC0xKQogICAgICwgbV9hbmltYXRpbmcoZmFsc2UpCiAgICAg
LCBtX2NsaWVudChjbGllbnQpCiAgICAgLCBtX2ZyYW1lTnVtYmVyKDApCi0gICAgLCBtX3Jvb3RM
YXllcihyb290TGF5ZXIpCiAgICAgLCBtX3NldHRpbmdzKHNldHRpbmdzKQogICAgICwgbV92aXNp
YmxlKHRydWUpCiAgICAgLCBtX2hhdmVXaGVlbEV2ZW50SGFuZGxlcnMoZmFsc2UpCkBAIC00NDAs
MTYgKzQzOSwxMyBAQCB2b2lkIENDTGF5ZXJUcmVlSG9zdDo6Y2xlYXJQZW5kaW5nVXBkYXRlKCkK
IAogdm9pZCBDQ0xheWVyVHJlZUhvc3Q6OmFwcGx5U2Nyb2xsRGVsdGFzKGNvbnN0IENDU2Nyb2xs
VXBkYXRlU2V0JiBpbmZvKQogewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgaW5mby5zaXpl
KCk7ICsraSkgewotICAgICAgICBpbnQgbGF5ZXJJZCA9IGluZm9baV0ubGF5ZXJJZDsKLSAgICAg
ICAgSW50U2l6ZSBzY3JvbGxEZWx0YSA9IGluZm9baV0uc2Nyb2xsRGVsdGE7CisgICAgLy8gRklY
TUU6IHB1c2hpbmcgc2Nyb2xsIG9mZnNldHMgdG8gbm9uLXJvb3QgbGF5ZXJzIG5vdCBpbXBsZW1l
bnRlZAorICAgIGlmICghaW5mby5zaXplKCkpCisgICAgICAgIHJldHVybjsKIAotICAgICAgICAv
LyBGSVhNRTogcHVzaGluZyBzY3JvbGwgb2Zmc2V0cyB0byBub24tcm9vdCBsYXllcnMgbm90IGlt
cGxlbWVudGVkCi0gICAgICAgIGlmIChyb290TGF5ZXIoKS0+aWQoKSA9PSBsYXllcklkKQotICAg
ICAgICAgICAgbV9jbGllbnQtPmFwcGx5U2Nyb2xsRGVsdGEoc2Nyb2xsRGVsdGEpOwotICAgICAg
ICBlbHNlCi0gICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICB9CisgICAgQVNT
RVJUKGluZm8uc2l6ZSgpID09IDEpOworICAgIEludFNpemUgc2Nyb2xsRGVsdGEgPSBpbmZvWzBd
LnNjcm9sbERlbHRhOworICAgIG1fY2xpZW50LT5hcHBseVNjcm9sbERlbHRhKHNjcm9sbERlbHRh
KTsKIH0KIAogdm9pZCBDQ0xheWVyVHJlZUhvc3Q6OnN0YXJ0UmF0ZUxpbWl0ZXIoR3JhcGhpY3ND
b250ZXh0M0QqIGNvbnRleHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCmluZGV4IDJlMmQ4
ZmM2OWFmMDkyNmZhYjJlNWZkMDEwNGY1NjE0Mzc2YmI1NGQuLjc1MDczMGRjZWJhNzM2NDgzZWNj
ZDI4MDg4NDEwODcwNzMyYjE4Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oCkBAIC0y
Nyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJHcmFwaGljc1R5cGVzM0QuaCIKICNpbmNsdWRlICJJ
bnRSZWN0LmgiCisjaW5jbHVkZSAiTGF5ZXJDaHJvbWl1bS5oIgogI2luY2x1ZGUgIlJhdGVMaW1p
dGVyLmgiCiAjaW5jbHVkZSAiVHJhbnNmb3JtYXRpb25NYXRyaXguaCIKICNpbmNsdWRlICJjYy9D
Q0xheWVyVHJlZUhvc3RDb21tb24uaCIKQEAgLTQ2LDcgKzQ3LDYgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogY2xhc3MgQ0NMYXllclRyZWVIb3N0SW1wbDsKIGNsYXNzIENDVGV4dHVyZVVwZGF0ZXI7
CiBjbGFzcyBHcmFwaGljc0NvbnRleHQzRDsKLWNsYXNzIExheWVyQ2hyb21pdW07CiBjbGFzcyBM
YXllclBhaW50ZXJDaHJvbWl1bTsKIGNsYXNzIFRleHR1cmVBbGxvY2F0b3I7CiBjbGFzcyBUZXh0
dXJlTWFuYWdlcjsKQEAgLTEwMSw3ICsxMDEsNyBAQCBzdHJ1Y3QgTGF5ZXJSZW5kZXJlckNhcGFi
aWxpdGllcyB7CiAKIGNsYXNzIENDTGF5ZXJUcmVlSG9zdCA6IHB1YmxpYyBSZWZDb3VudGVkPEND
TGF5ZXJUcmVlSG9zdD4gewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPENDTGF5ZXJU
cmVlSG9zdD4gY3JlYXRlKENDTGF5ZXJUcmVlSG9zdENsaWVudCosIFBhc3NSZWZQdHI8TGF5ZXJD
aHJvbWl1bT4gcm9vdExheWVyLCBjb25zdCBDQ1NldHRpbmdzJik7CisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8Q0NMYXllclRyZWVIb3N0PiBjcmVhdGUoQ0NMYXllclRyZWVIb3N0Q2xpZW50KiwgY29u
c3QgQ0NTZXR0aW5ncyYpOwogICAgIHZpcnR1YWwgfkNDTGF5ZXJUcmVlSG9zdCgpOwogCiAgICAg
Ly8gQ0NMYXllclRyZWVIb3N0IGludGVyZmFjZSB0byBDQ1Byb3h5LgpAQCAtMTUxLDYgKzE1MSw3
IEBAIHB1YmxpYzoKIAogICAgIExheWVyQ2hyb21pdW0qIHJvb3RMYXllcigpIHsgcmV0dXJuIG1f
cm9vdExheWVyLmdldCgpOyB9CiAgICAgY29uc3QgTGF5ZXJDaHJvbWl1bSogcm9vdExheWVyKCkg
Y29uc3QgeyByZXR1cm4gbV9yb290TGF5ZXIuZ2V0KCk7IH0KKyAgICB2b2lkIHNldFJvb3RMYXll
cihQYXNzUmVmUHRyPExheWVyQ2hyb21pdW0+IHJvb3RMYXllcikgeyBtX3Jvb3RMYXllciA9IHJv
b3RMYXllcjsgfQogCiAgICAgY29uc3QgQ0NTZXR0aW5ncyYgc2V0dGluZ3MoKSBjb25zdCB7IHJl
dHVybiBtX3NldHRpbmdzOyB9CiAKQEAgLTE3Miw3ICsxNzMsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBzdG9wUmF0ZUxpbWl0ZXIoR3JhcGhpY3NDb250ZXh0M0QqKTsKIAogcHJvdGVjdGVkOgotICAg
IENDTGF5ZXJUcmVlSG9zdChDQ0xheWVyVHJlZUhvc3RDbGllbnQqLCBQYXNzUmVmUHRyPExheWVy
Q2hyb21pdW0+IHJvb3RMYXllciwgY29uc3QgQ0NTZXR0aW5ncyYpOworICAgIENDTGF5ZXJUcmVl
SG9zdChDQ0xheWVyVHJlZUhvc3RDbGllbnQqLCBjb25zdCBDQ1NldHRpbmdzJik7CiAgICAgYm9v
bCBpbml0aWFsaXplKCk7CiAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9z
dENvbW1vbi5oCmluZGV4IGU0ZDQ5NjM3NDE4Yjc5YjMwZWMwYzMwZDFmYjBmM2JkYTIxNjM1NWEu
LjI2N2YwM2Y2MGNjNDI3YTUzNWQwYmY1YTgwMDg0ZmQ0YmQzMjgzMzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9z
dENvbW1vbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5oCkBAIC03Nyw4ICs3Nyw2IEBAIEludFJlY3QgQ0NM
YXllclRyZWVIb3N0Q29tbW9uOjpjYWxjdWxhdGVWaXNpYmxlTGF5ZXJSZWN0KExheWVyVHlwZSog
bGF5ZXIpCiAgICAgdHJhbnNmb3JtLnRyYW5zbGF0ZSgtY29udGVudEJvdW5kcy53aWR0aCgpIC8g
Mi4wLCAtY29udGVudEJvdW5kcy5oZWlnaHQoKSAvIDIuMCk7CiAKICAgICBJbnRSZWN0IHZpc2li
bGVMYXllclJlY3QgPSBDQ0xheWVyVHJlZUhvc3RDb21tb246OmNhbGN1bGF0ZVZpc2libGVSZWN0
KHRhcmdldFN1cmZhY2VSZWN0LCBsYXllckJvdW5kUmVjdCwgdHJhbnNmb3JtKTsKLSAgICB2aXNp
YmxlTGF5ZXJSZWN0Lm1vdmUodG9TaXplKGxheWVyLT5zY3JvbGxQb3NpdGlvbigpKSk7Ci0KICAg
ICByZXR1cm4gdmlzaWJsZUxheWVyUmVjdDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3RJbXBsLmNwcAppbmRleCA1MWQ5MmY1MDJiZGE5MDFlY2JhMTY1MGUxYTEzMGU3OTg0MDgw
M2JiLi5mZTA5MzI2ZTRiMjk5MDU2ZjJkNzViM2ViMWU2YWUzMjM4Y2M0NmU2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3RJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcApAQCAtMTIzLDkgKzEyMywyOSBAQCB2b2lk
IENDTGF5ZXJUcmVlSG9zdEltcGw6OnJlYWRiYWNrKHZvaWQqIHBpeGVscywgY29uc3QgSW50UmVj
dCYgcmVjdCkKICAgICBtX2xheWVyUmVuZGVyZXItPmdldEZyYW1lYnVmZmVyUGl4ZWxzKHBpeGVs
cywgcmVjdCk7CiB9CiAKK3N0YXRpYyBDQ0xheWVySW1wbCogZmluZFNjcm9sbExheWVyKENDTGF5
ZXJJbXBsKiBsYXllcikKK3sKKyAgICBpZiAoIWxheWVyKQorICAgICAgICByZXR1cm4gMDsKKwor
ICAgIGlmICghbGF5ZXItPm1heFNjcm9sbFBvc2l0aW9uKCkuaXNaZXJvKCkpCisgICAgICAgIHJl
dHVybiBsYXllcjsKKworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGF5ZXItPmNoaWxkcmVu
KCkuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgQ0NMYXllckltcGwqIGZvdW5kID0gZmluZFNjcm9s
bExheWVyKGxheWVyLT5jaGlsZHJlbigpW2ldLmdldCgpKTsKKyAgICAgICAgaWYgKGZvdW5kKQor
ICAgICAgICAgICAgcmV0dXJuIGZvdW5kOworICAgIH0KKworICAgIHJldHVybiAwOworfQorCiB2
b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OnNldFJvb3RMYXllcihQYXNzUmVmUHRyPENDTGF5ZXJJ
bXBsPiBsYXllcikKIHsKICAgICBtX3Jvb3RMYXllckltcGwgPSBsYXllcjsKKworICAgIC8vIEZJ
WE1FOiBDdXJyZW50bHksIHRoaXMgb25seSBmaW5kcyB0aGUgZmlyc3Qgc2Nyb2xsYWJsZSBsYXll
ci4KKyAgICBtX3Njcm9sbExheWVySW1wbCA9IGZpbmRTY3JvbGxMYXllcihtX3Jvb3RMYXllcklt
cGwuZ2V0KCkpOwogfQogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OnNldFZpc2libGUoYm9v
bCB2aXNpYmxlKQpAQCAtMTc0LDEwICsxOTQsMTAgQEAgdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBs
OjpzZXRab29tQW5pbWF0b3JUcmFuc2Zvcm0oY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIHoK
IHZvaWQgQ0NMYXllclRyZWVIb3N0SW1wbDo6c2Nyb2xsUm9vdExheWVyKGNvbnN0IEludFNpemUm
IHNjcm9sbERlbHRhKQogewogICAgIFRSQUNFX0VWRU5UKCJDQ0xheWVyVHJlZUhvc3RJbXBsOjpz
Y3JvbGxSb290TGF5ZXIiLCB0aGlzLCAwKTsKLSAgICBpZiAoIW1fcm9vdExheWVySW1wbCB8fCAh
bV9yb290TGF5ZXJJbXBsLT5zY3JvbGxhYmxlKCkpCisgICAgaWYgKCFtX3Njcm9sbExheWVySW1w
bCB8fCAhbV9zY3JvbGxMYXllckltcGwtPnNjcm9sbGFibGUoKSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgbV9yb290TGF5ZXJJbXBsLT5zY3JvbGxCeShzY3JvbGxEZWx0YSk7CisgICAgbV9zY3Jv
bGxMYXllckltcGwtPnNjcm9sbEJ5KHNjcm9sbERlbHRhKTsKICAgICBtX2NsaWVudC0+c2V0TmVl
ZHNDb21taXRPbkltcGxUaHJlYWQoKTsKICAgICBtX2NsaWVudC0+c2V0TmVlZHNSZWRyYXdPbklt
cGxUaHJlYWQoKTsKIH0KQEAgLTE5MSwxNCArMjExLDE1IEBAIFBhc3NPd25QdHI8Q0NTY3JvbGxV
cGRhdGVTZXQ+IENDTGF5ZXJUcmVlSG9zdEltcGw6OnByb2Nlc3NTY3JvbGxEZWx0YXMoKQogewog
ICAgIE93blB0cjxDQ1Njcm9sbFVwZGF0ZVNldD4gc2Nyb2xsSW5mbyA9IGFkb3B0UHRyKG5ldyBD
Q1Njcm9sbFVwZGF0ZVNldCgpKTsKICAgICAvLyBGSVhNRTogdHJhY2sgc2Nyb2xscyBmcm9tIGxh
eWVycyBvdGhlciB0aGFuIHRoZSByb290Ci0gICAgaWYgKHJvb3RMYXllcigpICYmICFyb290TGF5
ZXIoKS0+c2Nyb2xsRGVsdGEoKS5pc1plcm8oKSkgeworICAgIGlmIChtX3Njcm9sbExheWVySW1w
bCAmJiAhbV9zY3JvbGxMYXllckltcGwtPnNjcm9sbERlbHRhKCkuaXNaZXJvKCkpIHsKICAgICAg
ICAgQ0NMYXllclRyZWVIb3N0Q29tbW9uOjpTY3JvbGxVcGRhdGVJbmZvIGluZm87Ci0gICAgICAg
IGluZm8ubGF5ZXJJZCA9IHJvb3RMYXllcigpLT5pZCgpOwotICAgICAgICBpbmZvLnNjcm9sbERl
bHRhID0gcm9vdExheWVyKCktPnNjcm9sbERlbHRhKCk7CisgICAgICAgIGluZm8ubGF5ZXJJZCA9
IG1fc2Nyb2xsTGF5ZXJJbXBsLT5pZCgpOworICAgICAgICBpbmZvLnNjcm9sbERlbHRhID0gbV9z
Y3JvbGxMYXllckltcGwtPnNjcm9sbERlbHRhKCk7CiAgICAgICAgIHNjcm9sbEluZm8tPmFwcGVu
ZChpbmZvKTsKIAotICAgICAgICByb290TGF5ZXIoKS0+c2V0U2Nyb2xsUG9zaXRpb24ocm9vdExh
eWVyKCktPnNjcm9sbFBvc2l0aW9uKCkgKyByb290TGF5ZXIoKS0+c2Nyb2xsRGVsdGEoKSk7Ci0g
ICAgICAgIHJvb3RMYXllcigpLT5zZXRTY3JvbGxEZWx0YShJbnRTaXplKCkpOworICAgICAgICBt
X3Njcm9sbExheWVySW1wbC0+c2V0U2Nyb2xsUG9zaXRpb24obV9zY3JvbGxMYXllckltcGwtPnNj
cm9sbFBvc2l0aW9uKCkgKyBtX3Njcm9sbExheWVySW1wbC0+c2Nyb2xsRGVsdGEoKSk7CisgICAg
ICAgIG1fc2Nyb2xsTGF5ZXJJbXBsLT5zZXRQb3NpdGlvbihtX3Njcm9sbExheWVySW1wbC0+cG9z
aXRpb24oKSAtIG1fc2Nyb2xsTGF5ZXJJbXBsLT5zY3JvbGxEZWx0YSgpKTsKKyAgICAgICAgbV9z
Y3JvbGxMYXllckltcGwtPnNldFNjcm9sbERlbHRhKEludFNpemUoKSk7CiAgICAgfQogICAgIHJl
dHVybiBzY3JvbGxJbmZvLnJlbGVhc2UoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9z
dEltcGwuaAppbmRleCA1YTY4ZjBmZTMwODRjZThkMWY1ZTJhNzBjNzAxYWZhN2M3NTAxNDgyLi5i
NTNlMjAwMTkxOGM2NTY2NGMyY2NhNjA1NWVhN2U1ZGUwYjRiNjIyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJ
bXBsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2Mv
Q0NMYXllclRyZWVIb3N0SW1wbC5oCkBAIC0xMTAsNiArMTEwLDcgQEAgcHJvdGVjdGVkOgogcHJp
dmF0ZToKICAgICBPd25QdHI8TGF5ZXJSZW5kZXJlckNocm9taXVtPiBtX2xheWVyUmVuZGVyZXI7
CiAgICAgUmVmUHRyPENDTGF5ZXJJbXBsPiBtX3Jvb3RMYXllckltcGw7CisgICAgUmVmUHRyPEND
TGF5ZXJJbXBsPiBtX3Njcm9sbExheWVySW1wbDsKICAgICBDQ1NldHRpbmdzIG1fc2V0dGluZ3M7
CiAgICAgSW50U2l6ZSBtX3ZpZXdwb3J0U2l6ZTsKICAgICBib29sIG1fdmlzaWJsZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGls
ZWRMYXllckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHAKaW5kZXggMTE1NWE0Y2FkNTM3YzZhNjZlNjM2ZjA0
MDIwYmZhOTZjZjkyYmQ3ZC4uOGJiMzAyZDY1YWUyYjJlMGYxMzAwNzkxYTRjOGM0M2Q1ZjA5Nzg0
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NUaWxlZExheWVySW1wbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHAKQEAgLTEwNCw5ICsxMDQsNiBA
QCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBDQ1RpbGVkTGF5ZXJJbXBsOjp0aWxpbmdUcmFuc2Zvcm0o
KSBjb25zdAogCiAgICAgLy8gVGlsZXIgZHJhd3Mgd2l0aCBhIGRpZmZlcmVudCBvcmlnaW4gZnJv
bSBvdGhlciBsYXllcnMuCiAgICAgdHJhbnNmb3JtLnRyYW5zbGF0ZSgtY29udGVudEJvdW5kcygp
LndpZHRoKCkgLyAyLjAsIC1jb250ZW50Qm91bmRzKCkuaGVpZ2h0KCkgLyAyLjApOwotCi0gICAg
dHJhbnNmb3JtLnRyYW5zbGF0ZSgtc2Nyb2xsUG9zaXRpb24oKS54KCksIC1zY3JvbGxQb3NpdGlv
bigpLnkoKSk7Ci0KICAgICByZXR1cm4gdHJhbnNmb3JtOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCmluZGV4IDZhYjUwY2Jk
YjJkMjQ2NDBlMWQxZTA0ODE3ODJiNjdmNzQzODc3YWEuLmNhNzBiNmJlZDQ0YTUyMTFkOTYxOTYx
NWZjZDcwMTk1NjBkOGJjZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCkBAIC0xMTgwLDYgKzExODAsMTEgQEAgR3JhcGhpY3NM
YXllciogUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyb290R3JhcGhpY3NMYXllcigpIGNvbnN0CiAg
ICAgcmV0dXJuIG1fcm9vdENvbnRlbnRMYXllci5nZXQoKTsKIH0KIAorR3JhcGhpY3NMYXllciog
UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpzY3JvbGxMYXllcigpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fc2Nyb2xsTGF5ZXIuZ2V0KCk7Cit9CisKIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpk
aWRNb3ZlT25zY3JlZW4oKQogewogICAgIGlmICghaW5Db21wb3NpdGluZ01vZGUoKSB8fCBtX3Jv
b3RMYXllckF0dGFjaG1lbnQgIT0gUm9vdExheWVyVW5hdHRhY2hlZCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaAppbmRleCBhY2M1YzM4MTYy
NjFjMGUxZDc2NjVkZGU2M2U1ZTYyNjRjMzg4MjUwLi5hOGFkMzk2ZGNlNWRmMjlmYmE5MmNiZDM5
Yzk3MzRhNjEyYTc4ZTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXJDb21wb3NpdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5oCkBAIC0xMzUsNiArMTM1LDcgQEAgcHVibGljOgogCiAgICAgUmVu
ZGVyTGF5ZXIqIHJvb3RSZW5kZXJMYXllcigpIGNvbnN0OwogICAgIEdyYXBoaWNzTGF5ZXIqIHJv
b3RHcmFwaGljc0xheWVyKCkgY29uc3Q7CisgICAgR3JhcGhpY3NMYXllciogc2Nyb2xsTGF5ZXIo
KSBjb25zdDsKIAogICAgIGVudW0gUm9vdExheWVyQXR0YWNobWVudCB7CiAgICAgICAgIFJvb3RM
YXllclVuYXR0YWNoZWQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJMYXllclRyZWVWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJM
YXllclRyZWVWaWV3SW1wbC5jcHAKaW5kZXggODlkYmJhNjE2NjY0YWE3YmFkZTI2OTA3OTg3OGZh
YTNmNmIxZGIxYS4uMmU2OWVjMzQ3Y2RkMGU1MDVhZTU1ZjJjNTBhY2FhYTk2ZDRkYTFiZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZpZXdJbXBs
LmNwcApAQCAtNDksOSArNDksMTAgQEAgUGFzc1JlZlB0cjxXZWJMYXllclRyZWVWaWV3SW1wbD4g
V2ViTGF5ZXJUcmVlVmlld0ltcGw6OmNyZWF0ZShXZWJMYXllclRyZWVWaWV3Q2wKIH0KIAogV2Vi
TGF5ZXJUcmVlVmlld0ltcGw6OldlYkxheWVyVHJlZVZpZXdJbXBsKFdlYkxheWVyVHJlZVZpZXdD
bGllbnQqIGNsaWVudCwgY29uc3QgV2ViTGF5ZXImIHJvb3QsIGNvbnN0IFdlYkxheWVyVHJlZVZp
ZXc6OlNldHRpbmdzJiBzZXR0aW5ncykgCi0gICAgOiBDQ0xheWVyVHJlZUhvc3QodGhpcywgcm9v
dCwgc2V0dGluZ3MpCisgICAgOiBDQ0xheWVyVHJlZUhvc3QodGhpcywgc2V0dGluZ3MpCiAgICAg
LCBtX2NsaWVudChjbGllbnQpCiB7CisgICAgc2V0Um9vdExheWVyKHJvb3QpOwogfQogCiBXZWJM
YXllclRyZWVWaWV3SW1wbDo6fldlYkxheWVyVHJlZVZpZXdJbXBsKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCA0OGZiM2UwYTk4ZjNhYjJhYzE1NDE1
YjA1NzVlZmFhMzA0MDBhMDgzLi5kZWUxNWM5YjI5YTc5NjEyMWEyMThjZDAzNDVjODE5NjczYTcx
YjZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCkBAIC05
MSw2ICs5MSw3IEBACiAjaW5jbHVkZSAiUG9wdXBDb250YWluZXIuaCIKICNpbmNsdWRlICJQb3B1
cE1lbnVDbGllbnQuaCIKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNrZXIuaCIKKyNpbmNsdWRlICJS
ZW5kZXJMYXllckNvbXBvc2l0b3IuaCIKICNpbmNsdWRlICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVk
ZSAiUmVzb3VyY2VIYW5kbGUuaCIKICNpbmNsdWRlICJTY3JvbGxBbmltYXRvci5oIgpAQCAtMjUx
MCw4ICsyNTExLDE4IEBAIHZvaWQgV2ViVmlld0ltcGw6OnNldFJvb3RHcmFwaGljc0xheWVyKEdy
YXBoaWNzTGF5ZXIqIGxheWVyKQogICAgIG1fcm9vdEdyYXBoaWNzTGF5ZXIgPSBsYXllcjsKIAog
ICAgIHNldElzQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0FjdGl2ZShsYXllcik7Ci0gICAgaWYgKG1f
bm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0KQotICAgICAgICBtX25vbkNvbXBvc2l0ZWRDb250ZW50
SG9zdC0+c2V0Um9vdExheWVyKGxheWVyKTsKKyAgICBpZiAobV9ub25Db21wb3NpdGVkQ29udGVu
dEhvc3QpIHsKKyAgICAgICAgR3JhcGhpY3NMYXllciogc2Nyb2xsTGF5ZXIgPSAwOworICAgICAg
ICBpZiAobGF5ZXIpIHsKKyAgICAgICAgICAgIERvY3VtZW50KiBkb2N1bWVudCA9IHBhZ2UoKS0+
bWFpbkZyYW1lKCktPmRvY3VtZW50KCk7CisgICAgICAgICAgICBSZW5kZXJWaWV3KiByZW5kZXJW
aWV3ID0gZG9jdW1lbnQtPnJlbmRlclZpZXcoKTsKKyAgICAgICAgICAgIFJlbmRlckxheWVyQ29t
cG9zaXRvciogY29tcG9zaXRvciA9IHJlbmRlclZpZXctPmNvbXBvc2l0b3IoKTsKKyAgICAgICAg
ICAgIHNjcm9sbExheWVyID0gY29tcG9zaXRvci0+c2Nyb2xsTGF5ZXIoKTsKKyAgICAgICAgfQor
ICAgICAgICBtX25vbkNvbXBvc2l0ZWRDb250ZW50SG9zdC0+c2V0U2Nyb2xsTGF5ZXIoc2Nyb2xs
TGF5ZXIpOworICAgIH0KKyAgICBpZiAobV9sYXllclRyZWVIb3N0KQorICAgICAgICBtX2xheWVy
VHJlZUhvc3QtPnNldFJvb3RMYXllcihsYXllciA/IGxheWVyLT5wbGF0Zm9ybUxheWVyKCkgOiAw
KTsKIAogICAgIEludFJlY3QgZGFtYWdlZFJlY3QoMCwgMCwgbV9zaXplLndpZHRoLCBtX3NpemUu
aGVpZ2h0KTsKICAgICBpZiAoIW1faXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKQpAQCAt
MjYyNSw3ICsyNjM2LDcgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0SXNBY2NlbGVyYXRlZENvbXBv
c2l0aW5nQWN0aXZlKGJvb2wgYWN0aXZlKQogICAgICAgICBjY1NldHRpbmdzLnNob3dQbGF0Zm9y
bUxheWVyVHJlZSA9IHNldHRpbmdzKCktPnNob3dQbGF0Zm9ybUxheWVyVHJlZSgpOwogCiAgICAg
ICAgIG1fbm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0ID0gTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0
OjpjcmVhdGUoV2ViVmlld0ltcGxDb250ZW50UGFpbnRlcjo6Y3JlYXRlKHRoaXMpKTsKLSAgICAg
ICAgbV9sYXllclRyZWVIb3N0ID0gQ0NMYXllclRyZWVIb3N0OjpjcmVhdGUodGhpcywgbV9ub25D
b21wb3NpdGVkQ29udGVudEhvc3QtPnRvcExldmVsUm9vdExheWVyKCktPnBsYXRmb3JtTGF5ZXIo
KSwgY2NTZXR0aW5ncyk7CisgICAgICAgIG1fbGF5ZXJUcmVlSG9zdCA9IENDTGF5ZXJUcmVlSG9z
dDo6Y3JlYXRlKHRoaXMsIGNjU2V0dGluZ3MpOwogICAgICAgICBpZiAobV9sYXllclRyZWVIb3N0
KSB7CiAgICAgICAgICAgICBtX2xheWVyVHJlZUhvc3QtPnNldEhhdmVXaGVlbEV2ZW50SGFuZGxl
cnMobV9oYXZlV2hlZWxFdmVudEhhbmRsZXJzKTsKICAgICAgICAgICAgIHVwZGF0ZUxheWVyVHJl
ZVZpZXdwb3J0KCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>