<?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>100054</bug_id>
          
          <creation_ts>2012-10-22 16:45:07 -0700</creation_ts>
          <short_desc>position:sticky should stick for the enclosing overflow ancestor</short_desc>
          <delta_ts>2013-05-20 18:45:54 -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>CSS</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ojan Vafai">ojan</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eoconnor</cc>
    
    <cc>ericbidelman</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tabatkins</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>748076</commentid>
    <comment_count>0</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-10-22 16:45:07 -0700</bug_when>
    <thetext>As I&apos;ve thought about this more, I don&apos;t see any reason we&apos;d want the viewport to be any different from other scrollable containers WRT sticky behavior. As long as the containing block is not clipped, the sticky element shouldn&apos;t be either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748078</commentid>
    <comment_count>1</comment_count>
      <attachid>170024</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-10-22 16:45:33 -0700</bug_when>
    <thetext>Created attachment 170024
simple test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748087</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-10-22 16:51:07 -0700</bug_when>
    <thetext>Yes, we plan to do this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>750383</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2012-10-24 22:46:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/12571189&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891100</commentid>
    <comment_count>4</comment_count>
      <attachid>202249</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-05-19 19:29:44 -0700</bug_when>
    <thetext>Created attachment 202249
Patch (not ready for review)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891407</commentid>
    <comment_count>5</comment_count>
      <attachid>202333</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-05-20 17:25:41 -0700</bug_when>
    <thetext>Created attachment 202333
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891497</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-05-20 18:45:54 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/150395</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>170024</attachid>
            <date>2012-10-22 16:45:33 -0700</date>
            <delta_ts>2012-10-22 16:45:33 -0700</delta_ts>
            <desc>simple test case</desc>
            <filename>scratch2.html</filename>
            <type>text/html</type>
            <size>237</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">PGh0bWw+CjxzdHlsZT4KLnN0aWNreSB7CiAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7CiAg
ICB0b3A6IDA7Cn0KPC9zdHlsZT4KPGJvZHkgc3R5bGU9ImhlaWdodDogNjAwcHgiPgo8ZGl2IHN0
eWxlPSJvdmVyZmxvdzogc2Nyb2xsOyBoZWlnaHQ6IDgwMHB4OyI+CiAgICA8ZGl2IGNsYXNzPSJz
dGlja3kiPnN0aWNreTwvZGl2PgogICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiAxMDAwcHg7Ij48L2Rp
dj4KPC9kaXY+
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202249</attachid>
            <date>2013-05-19 19:29:44 -0700</date>
            <delta_ts>2013-05-20 17:25:38 -0700</delta_ts>
            <desc>Patch (not ready for review)</desc>
            <filename>bug-100054-20130519192834.patch</filename>
            <type>text/plain</type>
            <size>6798</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwMzU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2Q2NGJjODRmMDYwM2I3
MDk0NzhkY2M4ZmRjY2VlMDg5MWQ4MTJjNy4uY2YxNGI0MzAyYmUzZjI3ZjZmNWVkMGY4NGJkMjU4
NWE0NDNlMTk3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI0IEBACiAyMDEzLTA1LTE5ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAgIHBvc2l0aW9uOnN0
aWNreSBzaG91bGQgc3RpY2sgZm9yIGVhY2ggc2Nyb2xsYWJsZSBhbmNlc3RvcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwMDU0CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBXcml0ZSBtZSEK
KworICAgICAgICBObyBuZXcgdGVzdHMgKE9PUFMhKS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJCb3hNb2RlbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjplbmNsb3NpbmdPdmVy
Zmxvd0NsaXBCb3gpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJCb3hNb2RlbE9iamVjdDo6Y29tcHV0ZVN0aWNreVBvc2l0aW9uQ29uc3RyYWludHMpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OnN0aWNreVBvc2l0aW9uT2Zmc2V0
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6Y29tcHV0ZVN0aWNreVZpZXdwb3J0
Q29uc3RyYWludHMpOgorCisyMDEzLTA1LTE5ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJA
YXBwbGUuY29tPgorCiAgICAgICAgIENoYW5nZSB0aGUgdGVybWlub2xvZ3kgdXNlZCBieSByZW5k
ZXJpbmcgY29kZSB3aGVuIHBhaW50aW5nIGEgZ2l2ZW4gbm9kZSBhbmQgaXRzIGNoaWxkcmVuIGZy
b20gInBhaW50aW5nUm9vdCIgdG8gInN1YnRyZWVQYWludFJvb3QiCiAgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTY0MTcKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKaW5kZXggYmM2MjI3MjJh
ZmQzODkyZjBkYjkyNTZjZGZhZWMwNmNmNzVhMzY2Ny4uMWMxZGM3N2JiMTM0NzBmMjliOTFlYzli
MWU4ZTI3NGI4ZWJkZGJhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJveE1vZGVsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94TW9kZWxPYmplY3QuY3BwCkBAIC01MTksNyArNTE5LDE5IEBAIExheW91dFBvaW50IFJl
bmRlckJveE1vZGVsT2JqZWN0OjphZGp1c3RlZFBvc2l0aW9uUmVsYXRpdmVUb09mZnNldFBhcmVu
dChjb25zdCBMCiAgICAgcmV0dXJuIHJlZmVyZW5jZVBvaW50OwogfQogCi12b2lkIFJlbmRlckJv
eE1vZGVsT2JqZWN0Ojpjb21wdXRlU3RpY2t5UG9zaXRpb25Db25zdHJhaW50cyhTdGlja3lQb3Np
dGlvblZpZXdwb3J0Q29uc3RyYWludHMmIGNvbnN0cmFpbnRzLCBjb25zdCBGbG9hdFJlY3QmIHZp
ZXdwb3J0UmVjdCkgY29uc3QKK3N0YXRpYyBSZW5kZXJCb3gqIGVuY2xvc2luZ092ZXJmbG93Q2xp
cEJveChjb25zdCBSZW5kZXJCb3hNb2RlbE9iamVjdCogcmVuZGVyZXIpCit7CisgICAgUmVuZGVy
TGF5ZXIqIGxheWVyID0gcmVuZGVyZXItPmVuY2xvc2luZ0xheWVyKCk7CisgICAgd2hpbGUgKGxh
eWVyKSB7CisgICAgICAgIGlmIChsYXllci0+cmVuZGVyZXIoKS0+aGFzT3ZlcmZsb3dDbGlwKCkp
CisgICAgICAgICAgICByZXR1cm4gdG9SZW5kZXJCb3gobGF5ZXItPnJlbmRlcmVyKCkpOworCisg
ICAgICAgIGxheWVyID0gbGF5ZXItPnBhcmVudCgpOworICAgIH0KKyAgICByZXR1cm4gMDsKK30K
Kwordm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6Y29tcHV0ZVN0aWNreVBvc2l0aW9uQ29uc3Ry
YWludHMoU3RpY2t5UG9zaXRpb25WaWV3cG9ydENvbnN0cmFpbnRzJiBjb25zdHJhaW50cywgY29u
c3QgRmxvYXRSZWN0JiBjb25zdHJhaW5pbmdSZWN0KSBjb25zdAogewogICAgIFJlbmRlckJsb2Nr
KiBjb250YWluaW5nQmxvY2sgPSB0aGlzLT5jb250YWluaW5nQmxvY2soKTsKIApAQCAtNTQ3LDQ1
ICs1NTksNTkgQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6Y29tcHV0ZVN0aWNreVBvc2l0
aW9uQ29uc3RyYWludHMoU3RpY2t5UG9zaXRpb25WaWV3cG8KICAgICAvLyBNYXAgdG8gdGhlIHZp
ZXcgdG8gYXZvaWQgaW5jbHVkaW5nIHBhZ2Ugc2NhbGUgZmFjdG9yLgogICAgIEZsb2F0UmVjdCBh
YnNDb250YWluZXJGcmFtZSA9IGNvbnRhaW5pbmdCbG9jay0+bG9jYWxUb0NvbnRhaW5lclF1YWQo
RmxvYXRSZWN0KEZsb2F0UG9pbnQoKSwgY29udGFpbmluZ0Jsb2NrLT5zaXplKCkpLCB2aWV3KCkp
LmJvdW5kaW5nQm94KCk7CiAKKyAgICBpZiAoY29udGFpbmluZ0Jsb2NrLT5oYXNPdmVyZmxvd0Ns
aXAoKSkgeworICAgICAgICBJbnRTaXplIHNjcm9sbE9mZnNldCA9IGNvbnRhaW5pbmdCbG9jay0+
bGF5ZXIoKS0+c2Nyb2xsT2Zmc2V0KCk7CisgICAgICAgIHN0aWNreUxvY2F0aW9uIC09IHNjcm9s
bE9mZnNldDsKKyAgICB9CisKICAgICAvLyBXZSBjYW4ndCBjYWxsIGxvY2FsVG9BYnNvbHV0ZSBv
biB8dGhpc3wgYmVjYXVzZSB0aGF0IHdpbGwgcmVjdXIuIEZJWE1FOiBGb3Igbm93LCBhc3N1bWUg
dGhhdCB8dGhpc3wgaXMgbm90IHRyYW5zZm9ybWVkLgogICAgIEZsb2F0UmVjdCBhYnNvbHV0ZVN0
aWNreUJveFJlY3QoYWJzQ29udGFpbmVyRnJhbWUubG9jYXRpb24oKSArIHN0aWNreUxvY2F0aW9u
LCBmbGlwcGVkU3RpY2t5Qm94UmVjdC5zaXplKCkpOwogICAgIGNvbnN0cmFpbnRzLnNldEFic29s
dXRlU3RpY2t5Qm94UmVjdChhYnNvbHV0ZVN0aWNreUJveFJlY3QpOwogCiAgICAgaWYgKCFzdHls
ZSgpLT5sZWZ0KCkuaXNBdXRvKCkpIHsKLSAgICAgICAgY29uc3RyYWludHMuc2V0TGVmdE9mZnNl
dCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLT5sZWZ0KCksIHZpZXdwb3J0UmVjdC53aWR0aCgpLCB2
aWV3KCkpKTsKKyAgICAgICAgY29uc3RyYWludHMuc2V0TGVmdE9mZnNldCh2YWx1ZUZvckxlbmd0
aChzdHlsZSgpLT5sZWZ0KCksIGNvbnN0cmFpbmluZ1JlY3Qud2lkdGgoKSwgdmlldygpKSk7CiAg
ICAgICAgIGNvbnN0cmFpbnRzLmFkZEFuY2hvckVkZ2UoVmlld3BvcnRDb25zdHJhaW50czo6QW5j
aG9yRWRnZUxlZnQpOwogICAgIH0KIAogICAgIGlmICghc3R5bGUoKS0+cmlnaHQoKS5pc0F1dG8o
KSkgewotICAgICAgICBjb25zdHJhaW50cy5zZXRSaWdodE9mZnNldCh2YWx1ZUZvckxlbmd0aChz
dHlsZSgpLT5yaWdodCgpLCB2aWV3cG9ydFJlY3Qud2lkdGgoKSwgdmlldygpKSk7CisgICAgICAg
IGNvbnN0cmFpbnRzLnNldFJpZ2h0T2Zmc2V0KHZhbHVlRm9yTGVuZ3RoKHN0eWxlKCktPnJpZ2h0
KCksIGNvbnN0cmFpbmluZ1JlY3Qud2lkdGgoKSwgdmlldygpKSk7CiAgICAgICAgIGNvbnN0cmFp
bnRzLmFkZEFuY2hvckVkZ2UoVmlld3BvcnRDb25zdHJhaW50czo6QW5jaG9yRWRnZVJpZ2h0KTsK
ICAgICB9CiAKICAgICBpZiAoIXN0eWxlKCktPnRvcCgpLmlzQXV0bygpKSB7Ci0gICAgICAgIGNv
bnN0cmFpbnRzLnNldFRvcE9mZnNldCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLT50b3AoKSwgdmll
d3BvcnRSZWN0LmhlaWdodCgpLCB2aWV3KCkpKTsKKyAgICAgICAgY29uc3RyYWludHMuc2V0VG9w
T2Zmc2V0KHZhbHVlRm9yTGVuZ3RoKHN0eWxlKCktPnRvcCgpLCBjb25zdHJhaW5pbmdSZWN0Lmhl
aWdodCgpLCB2aWV3KCkpKTsKICAgICAgICAgY29uc3RyYWludHMuYWRkQW5jaG9yRWRnZShWaWV3
cG9ydENvbnN0cmFpbnRzOjpBbmNob3JFZGdlVG9wKTsKICAgICB9CiAKICAgICBpZiAoIXN0eWxl
KCktPmJvdHRvbSgpLmlzQXV0bygpKSB7Ci0gICAgICAgIGNvbnN0cmFpbnRzLnNldEJvdHRvbU9m
ZnNldCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLT5ib3R0b20oKSwgdmlld3BvcnRSZWN0LmhlaWdo
dCgpLCB2aWV3KCkpKTsKKyAgICAgICAgY29uc3RyYWludHMuc2V0Qm90dG9tT2Zmc2V0KHZhbHVl
Rm9yTGVuZ3RoKHN0eWxlKCktPmJvdHRvbSgpLCBjb25zdHJhaW5pbmdSZWN0LmhlaWdodCgpLCB2
aWV3KCkpKTsKICAgICAgICAgY29uc3RyYWludHMuYWRkQW5jaG9yRWRnZShWaWV3cG9ydENvbnN0
cmFpbnRzOjpBbmNob3JFZGdlQm90dG9tKTsKICAgICB9CiB9CiAKIExheW91dFNpemUgUmVuZGVy
Qm94TW9kZWxPYmplY3Q6OnN0aWNreVBvc2l0aW9uT2Zmc2V0KCkgY29uc3QKIHsKLSAgICBMYXlv
dXRSZWN0IHZpZXdwb3J0UmVjdCA9IHZpZXcoKS0+ZnJhbWVWaWV3KCktPnZpZXdwb3J0Q29uc3Ry
YWluZWRWaXNpYmxlQ29udGVudFJlY3QoKTsKLSAgICBmbG9hdCBzY2FsZSA9IDE7Ci0gICAgaWYg
KEZyYW1lKiBmcmFtZSA9IHZpZXcoKS0+ZnJhbWVWaWV3KCktPmZyYW1lKCkpCi0gICAgICAgIHNj
YWxlID0gZnJhbWUtPmZyYW1lU2NhbGVGYWN0b3IoKTsKLSAgICAKLSAgICB2aWV3cG9ydFJlY3Qu
c2NhbGUoMSAvIHNjYWxlKTsKKyAgICBGbG9hdFJlY3QgY29uc3RyYWluaW5nUmVjdDsKKworICAg
IFJlbmRlckJveCogZW5jbG9zaW5nQ2xpcHBpbmdCb3ggPSBlbmNsb3NpbmdPdmVyZmxvd0NsaXBC
b3godGhpcyk7CisgICAgaWYgKGVuY2xvc2luZ0NsaXBwaW5nQm94KSB7CisgICAgICAgIExheW91
dFJlY3QgY2xpcFJlY3QgPSBlbmNsb3NpbmdDbGlwcGluZ0JveC0+b3ZlcmZsb3dDbGlwUmVjdChM
YXlvdXRQb2ludCgpLCAwKTsgLy8gRklYTUU6IGJyb2tlbiBpbiByZWdpb25zLgorICAgICAgICBj
b25zdHJhaW5pbmdSZWN0ID0gZW5jbG9zaW5nQ2xpcHBpbmdCb3gtPmxvY2FsVG9Db250YWluZXJR
dWFkKEZsb2F0UmVjdChjbGlwUmVjdCksIHZpZXcoKSkuYm91bmRpbmdCb3goKTsKKyAgICB9IGVs
c2UgeworICAgICAgICBMYXlvdXRSZWN0IHZpZXdwb3J0UmVjdCA9IHZpZXcoKS0+ZnJhbWVWaWV3
KCktPnZpZXdwb3J0Q29uc3RyYWluZWRWaXNpYmxlQ29udGVudFJlY3QoKTsKKyAgICAgICAgZmxv
YXQgc2NhbGUgPSAxOworICAgICAgICBpZiAoRnJhbWUqIGZyYW1lID0gdmlldygpLT5mcmFtZVZp
ZXcoKS0+ZnJhbWUoKSkKKyAgICAgICAgICAgIHNjYWxlID0gZnJhbWUtPmZyYW1lU2NhbGVGYWN0
b3IoKTsKKyAgICAgICAgCisgICAgICAgIHZpZXdwb3J0UmVjdC5zY2FsZSgxIC8gc2NhbGUpOwor
ICAgICAgICBjb25zdHJhaW5pbmdSZWN0ID0gdmlld3BvcnRSZWN0OworICAgIH0KICAgICAKICAg
ICBTdGlja3lQb3NpdGlvblZpZXdwb3J0Q29uc3RyYWludHMgY29uc3RyYWludHM7Ci0gICAgY29t
cHV0ZVN0aWNreVBvc2l0aW9uQ29uc3RyYWludHMoY29uc3RyYWludHMsIHZpZXdwb3J0UmVjdCk7
CisgICAgY29tcHV0ZVN0aWNreVBvc2l0aW9uQ29uc3RyYWludHMoY29uc3RyYWludHMsIGNvbnN0
cmFpbmluZ1JlY3QpOwogICAgIAogICAgIC8vIFRoZSBzdGlja3kgb2Zmc2V0IGlzIHBoeXNpY2Fs
LCBzbyB3ZSBjYW4ganVzdCByZXR1cm4gdGhlIGRlbHRhIGNvbXB1dGVkIGluIGFic29sdXRlIGNv
b3JkcyAodGhvdWdoIGl0IG1heSBiZSB3cm9uZyB3aXRoIHRyYW5zZm9ybXMpLgotICAgIHJldHVy
biBMYXlvdXRTaXplKGNvbnN0cmFpbnRzLmNvbXB1dGVTdGlja3lPZmZzZXQodmlld3BvcnRSZWN0
KSk7CisgICAgcmV0dXJuIExheW91dFNpemUoY29uc3RyYWludHMuY29tcHV0ZVN0aWNreU9mZnNl
dChjb25zdHJhaW5pbmdSZWN0KSk7CiB9CiAKIExheW91dFNpemUgUmVuZGVyQm94TW9kZWxPYmpl
Y3Q6Om9mZnNldEZvckluRmxvd1Bvc2l0aW9uKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKaW5kZXggYjBhYjcxYmZkZDBi
NGRjMGQyNWQyYjYyMmFlYzdiM2Y1NmVkN2Y3My4uODAzOGJmZjliYTAzZmM2ZDg5MDRlMzZiYTQ0
YTNhODk3N2I2NTM3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5jcHAKQEAgLTMwOTIsNiArMzA5Miw4IEBAIEZpeGVkUG9zaXRpb25W
aWV3cG9ydENvbnN0cmFpbnRzIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6Y29tcHV0ZUZpeGVkVmll
d3BvcnRDb25zCiBTdGlja3lQb3NpdGlvblZpZXdwb3J0Q29uc3RyYWludHMgUmVuZGVyTGF5ZXJD
b21wb3NpdG9yOjpjb21wdXRlU3RpY2t5Vmlld3BvcnRDb25zdHJhaW50cyhSZW5kZXJMYXllciog
bGF5ZXIpIGNvbnN0CiB7CiAgICAgQVNTRVJUKGxheWVyLT5pc0NvbXBvc2l0ZWQoKSk7CisgICAg
CisgICAgLy8gRklYTUU6IG9ubHkgZG8gZm9yIHZpZXdwb3J0LWFuY2hvcmVkCiAKICAgICBGcmFt
ZVZpZXcqIGZyYW1lVmlldyA9IG1fcmVuZGVyVmlldy0+ZnJhbWVWaWV3KCk7CiAgICAgTGF5b3V0
UmVjdCB2aWV3cG9ydFJlY3QgPSBmcmFtZVZpZXctPnZpZXdwb3J0Q29uc3RyYWluZWRWaXNpYmxl
Q29udGVudFJlY3QoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202333</attachid>
            <date>2013-05-20 17:25:41 -0700</date>
            <delta_ts>2013-05-20 17:34:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-100054-20130520172432.patch</filename>
            <type>text/plain</type>
            <size>21068</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwMzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjg1NWUwZGRkNTJlNTNh
MzZmMDkxODM0YmU1NDlhMDZiNzczZDRmOS4uNzg3OTEyMmEwZGJlNGQ0NDk2ODA0N2I4M2UyYzIy
MWFkMDcwNTg2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEzLTA1LTIwICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIHBvc2l0aW9uOnN0
aWNreSBzaG91bGQgc3RpY2sgZm9yIHRoZSBlbmNsb3Npbmcgb3ZlcmZsb3cgYW5jZXN0b3IKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDA1NAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgTWFr
ZSBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3kgYmUgY29uc3RyYWluZWQgYnkgYW4gZW5jbG9zaW5n
IGFuY2VzdG9yCisgICAgICAgIHdpdGggbm9uLXZpc2libGUgb3ZlcmZsb3cgaWYgdGhlcmUgaXMg
b25lLCByYXRoZXIgdGhhbiBiZWluZyBjb25zdGFpbmVkCisgICAgICAgIGFsd2F5cyBieSB0aGUg
dmlld3BvcnQuCisKKyAgICAgICAgVGVzdDogZmFzdC9jc3Mvc3RpY2t5L3N0aWNreS10b3Atb3Zl
cmZsb3cuaHRtbAorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0Ojpjb21wdXRlU3RpY2t5
UG9zaXRpb25Db25zdHJhaW50cyk6IFJlbmFtZQorICAgICAgICB2aWV3cG9ydFJlY3QgdG8gY29u
c3RyYWluaW5nUmVjdCwgc2luY2UgaXQgaXNuJ3QganVzdCBhYm91dCB0aGUgdmlld3BvcnQgYW55
IG1vcmUuCisgICAgICAgIEZpeCBhbiBpc3N1ZSB3aGVyZSBqdXN0IGFkZGluZyBzdGlja3lMb2Nh
dGlvbiB0byBhYnNDb250YWluZXJGcmFtZS5sb2NhdGlvbigpIHdhcworICAgICAgICBpbmNvcnJl
Y3Qgd2hlbiB0aGUgY29udGFpbmVyIGlzIHNjcm9sbGVkOyB3ZSBhbHNvIGhhdmUgdG8gdGFrZSB0
aGUgc2Nyb2xsIG9mZnNldAorICAgICAgICBpbnRvIGFjY291bnQsIGFuZCB0aGF0IG9mZnNldCBp
cyBzdG9yZWQgaW4gdGhlIGxheWVyIHRyZWUuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hN
b2RlbE9iamVjdDo6c3RpY2t5UG9zaXRpb25PZmZzZXQpOgorICAgICAgICBMb29rIGZvciBhbiBl
bmNsb3NpbmcgbGF5ZXIgd2l0aCBvdmVyZmxvdyBjbGlwcGluZywgYW5kLCBpZiBmb3VuZCwgdXNl
IGl0IHRvCisgICAgICAgIGNvbXB1dGUgdGhlIHN0aWNreSBjb25zdHJhaW50IHJlY3QuCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmg6IEFkZCBhIGhlbHBmdWwgSW5jbHVkZVNlbGZP
ck5vdCwgYW5kIGZpeCBzZXZlcmFsIG1lbWJlciBmdW5jdGlvbnMKKyAgICAgICAgdG8gdXNlIGl0
IHBsYWNlIG9mIGhhcmQtdG8tcmVhZCBib29sZWFuIGFyZ3VtZW50cy4KKyAgICAgICAgQWRkIGVu
Y2xvc2luZ092ZXJmbG93Q2xpcExheWVyKEluY2x1ZGVTZWxmT3JOb3QpLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTGF5ZXI6OmFuY2VzdG9yQ29tcG9zaXRpbmdMYXllcik6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVy
OjplbmNsb3NpbmdPdmVyZmxvd0NsaXBMYXllcik6IE5ldyBmdW5jdGlvbiwgZmluZHMgdGhlIGVu
Y2xvc2luZworICAgICAgICBsYXllciB3aXRoIG92ZXJmbG93IGNsaXAuCisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJMYXllcjo6ZW5jbG9zaW5nQ29tcG9zaXRpbmdMYXllcik6IFVzZSBJbmNsdWRl
U2VsZk9yTm90LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmVuY2xvc2luZ0NvbXBv
c2l0aW5nTGF5ZXJGb3JSZXBhaW50KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJM
YXllcjo6ZW5jbG9zaW5nRmlsdGVyTGF5ZXIpOiBEaXR0by4KKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVy
Q29tcG9zaXRvcjo6cmVwYWludEluQ29tcG9zaXRlZEFuY2VzdG9yKTogVXNlIEluY2x1ZGVTZWxm
T3JOb3QuCisgICAgICAgIChXZWJDb3JlOjppc1ZpZXdwb3J0Q29uc3RyYWluZWRGaXhlZE9yU3Rp
Y2t5TGF5ZXIpOiBSZW5hbWVkIGZyb20gaXNSb290bW9zdEZpeGVkT3JTdGlja3lMYXllcgorICAg
ICAgICBhbmQgbW92ZWQgdXAgc28gd2UgY2FuIHVzZSBpdCBpbiByZXF1aXJlc0NvbXBvc2l0aW5n
Rm9yUG9zaXRpb24oKS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6
cmVxdWlyZXNDb21wb3NpdGluZ0ZvclBvc2l0aW9uKTogT25seSBtYWtlIHN0aWNreSBjb21wb3Np
dGVkIGlmCisgICAgICAgIGl0J3Mgdmlld3BvcnQtY29uc3RyYWluZWQuCisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZVZpZXdwb3J0Q29uc3RyYWludFN0YXR1
cyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OmNvbXB1dGVTdGlj
a3lWaWV3cG9ydENvbnN0cmFpbnRzKTogRGVjbGFyZSBTdGlja3lQb3NpdGlvblZpZXdwb3J0Q29u
c3RyYWludHMKKyAgICAgICAgb25lIGxpbmUgZG93biB0byBqdXN0IGJlZm9yZSBpdCBnZXRzIHVz
ZWQuCisKIDIwMTMtMDUtMjAgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlbW92ZSBjdXN0b20gYmluZGluZyBmb3IgdGhlIENsaXBib2FyZCBjbGVhckRhdGEgZnVu
Y3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmpl
Y3QuY3BwCmluZGV4IGJjNjIyNzIyYWZkMzg5MmYwZGI5MjU2Y2RmYWVjMDZjZjc1YTM2NjcuLjkw
NTI1ZDBiYmNlMGFjZGI5N2MwMTIzYjU4YmQ3NjliMjcwYzZkNjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcApAQCAtNTE5LDcgKzUx
OSw3IEBAIExheW91dFBvaW50IFJlbmRlckJveE1vZGVsT2JqZWN0OjphZGp1c3RlZFBvc2l0aW9u
UmVsYXRpdmVUb09mZnNldFBhcmVudChjb25zdCBMCiAgICAgcmV0dXJuIHJlZmVyZW5jZVBvaW50
OwogfQogCi12b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0Ojpjb21wdXRlU3RpY2t5UG9zaXRpb25D
b25zdHJhaW50cyhTdGlja3lQb3NpdGlvblZpZXdwb3J0Q29uc3RyYWludHMmIGNvbnN0cmFpbnRz
LCBjb25zdCBGbG9hdFJlY3QmIHZpZXdwb3J0UmVjdCkgY29uc3QKK3ZvaWQgUmVuZGVyQm94TW9k
ZWxPYmplY3Q6OmNvbXB1dGVTdGlja3lQb3NpdGlvbkNvbnN0cmFpbnRzKFN0aWNreVBvc2l0aW9u
Vmlld3BvcnRDb25zdHJhaW50cyYgY29uc3RyYWludHMsIGNvbnN0IEZsb2F0UmVjdCYgY29uc3Ry
YWluaW5nUmVjdCkgY29uc3QKIHsKICAgICBSZW5kZXJCbG9jayogY29udGFpbmluZ0Jsb2NrID0g
dGhpcy0+Y29udGFpbmluZ0Jsb2NrKCk7CiAKQEAgLTU0Nyw0NSArNTQ3LDYxIEBAIHZvaWQgUmVu
ZGVyQm94TW9kZWxPYmplY3Q6OmNvbXB1dGVTdGlja3lQb3NpdGlvbkNvbnN0cmFpbnRzKFN0aWNr
eVBvc2l0aW9uVmlld3BvCiAgICAgLy8gTWFwIHRvIHRoZSB2aWV3IHRvIGF2b2lkIGluY2x1ZGlu
ZyBwYWdlIHNjYWxlIGZhY3Rvci4KICAgICBGbG9hdFJlY3QgYWJzQ29udGFpbmVyRnJhbWUgPSBj
b250YWluaW5nQmxvY2stPmxvY2FsVG9Db250YWluZXJRdWFkKEZsb2F0UmVjdChGbG9hdFBvaW50
KCksIGNvbnRhaW5pbmdCbG9jay0+c2l6ZSgpKSwgdmlldygpKS5ib3VuZGluZ0JveCgpOwogCisg
ICAgaWYgKGNvbnRhaW5pbmdCbG9jay0+aGFzT3ZlcmZsb3dDbGlwKCkpIHsKKyAgICAgICAgSW50
U2l6ZSBzY3JvbGxPZmZzZXQgPSBjb250YWluaW5nQmxvY2stPmxheWVyKCktPnNjcm9sbE9mZnNl
dCgpOworICAgICAgICBzdGlja3lMb2NhdGlvbiAtPSBzY3JvbGxPZmZzZXQ7CisgICAgfQorCiAg
ICAgLy8gV2UgY2FuJ3QgY2FsbCBsb2NhbFRvQWJzb2x1dGUgb24gfHRoaXN8IGJlY2F1c2UgdGhh
dCB3aWxsIHJlY3VyLiBGSVhNRTogRm9yIG5vdywgYXNzdW1lIHRoYXQgfHRoaXN8IGlzIG5vdCB0
cmFuc2Zvcm1lZC4KICAgICBGbG9hdFJlY3QgYWJzb2x1dGVTdGlja3lCb3hSZWN0KGFic0NvbnRh
aW5lckZyYW1lLmxvY2F0aW9uKCkgKyBzdGlja3lMb2NhdGlvbiwgZmxpcHBlZFN0aWNreUJveFJl
Y3Quc2l6ZSgpKTsKICAgICBjb25zdHJhaW50cy5zZXRBYnNvbHV0ZVN0aWNreUJveFJlY3QoYWJz
b2x1dGVTdGlja3lCb3hSZWN0KTsKIAogICAgIGlmICghc3R5bGUoKS0+bGVmdCgpLmlzQXV0bygp
KSB7Ci0gICAgICAgIGNvbnN0cmFpbnRzLnNldExlZnRPZmZzZXQodmFsdWVGb3JMZW5ndGgoc3R5
bGUoKS0+bGVmdCgpLCB2aWV3cG9ydFJlY3Qud2lkdGgoKSwgdmlldygpKSk7CisgICAgICAgIGNv
bnN0cmFpbnRzLnNldExlZnRPZmZzZXQodmFsdWVGb3JMZW5ndGgoc3R5bGUoKS0+bGVmdCgpLCBj
b25zdHJhaW5pbmdSZWN0LndpZHRoKCksIHZpZXcoKSkpOwogICAgICAgICBjb25zdHJhaW50cy5h
ZGRBbmNob3JFZGdlKFZpZXdwb3J0Q29uc3RyYWludHM6OkFuY2hvckVkZ2VMZWZ0KTsKICAgICB9
CiAKICAgICBpZiAoIXN0eWxlKCktPnJpZ2h0KCkuaXNBdXRvKCkpIHsKLSAgICAgICAgY29uc3Ry
YWludHMuc2V0UmlnaHRPZmZzZXQodmFsdWVGb3JMZW5ndGgoc3R5bGUoKS0+cmlnaHQoKSwgdmll
d3BvcnRSZWN0LndpZHRoKCksIHZpZXcoKSkpOworICAgICAgICBjb25zdHJhaW50cy5zZXRSaWdo
dE9mZnNldCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLT5yaWdodCgpLCBjb25zdHJhaW5pbmdSZWN0
LndpZHRoKCksIHZpZXcoKSkpOwogICAgICAgICBjb25zdHJhaW50cy5hZGRBbmNob3JFZGdlKFZp
ZXdwb3J0Q29uc3RyYWludHM6OkFuY2hvckVkZ2VSaWdodCk7CiAgICAgfQogCiAgICAgaWYgKCFz
dHlsZSgpLT50b3AoKS5pc0F1dG8oKSkgewotICAgICAgICBjb25zdHJhaW50cy5zZXRUb3BPZmZz
ZXQodmFsdWVGb3JMZW5ndGgoc3R5bGUoKS0+dG9wKCksIHZpZXdwb3J0UmVjdC5oZWlnaHQoKSwg
dmlldygpKSk7CisgICAgICAgIGNvbnN0cmFpbnRzLnNldFRvcE9mZnNldCh2YWx1ZUZvckxlbmd0
aChzdHlsZSgpLT50b3AoKSwgY29uc3RyYWluaW5nUmVjdC5oZWlnaHQoKSwgdmlldygpKSk7CiAg
ICAgICAgIGNvbnN0cmFpbnRzLmFkZEFuY2hvckVkZ2UoVmlld3BvcnRDb25zdHJhaW50czo6QW5j
aG9yRWRnZVRvcCk7CiAgICAgfQogCiAgICAgaWYgKCFzdHlsZSgpLT5ib3R0b20oKS5pc0F1dG8o
KSkgewotICAgICAgICBjb25zdHJhaW50cy5zZXRCb3R0b21PZmZzZXQodmFsdWVGb3JMZW5ndGgo
c3R5bGUoKS0+Ym90dG9tKCksIHZpZXdwb3J0UmVjdC5oZWlnaHQoKSwgdmlldygpKSk7CisgICAg
ICAgIGNvbnN0cmFpbnRzLnNldEJvdHRvbU9mZnNldCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLT5i
b3R0b20oKSwgY29uc3RyYWluaW5nUmVjdC5oZWlnaHQoKSwgdmlldygpKSk7CiAgICAgICAgIGNv
bnN0cmFpbnRzLmFkZEFuY2hvckVkZ2UoVmlld3BvcnRDb25zdHJhaW50czo6QW5jaG9yRWRnZUJv
dHRvbSk7CiAgICAgfQogfQogCiBMYXlvdXRTaXplIFJlbmRlckJveE1vZGVsT2JqZWN0OjpzdGlj
a3lQb3NpdGlvbk9mZnNldCgpIGNvbnN0CiB7Ci0gICAgTGF5b3V0UmVjdCB2aWV3cG9ydFJlY3Qg
PSB2aWV3KCktPmZyYW1lVmlldygpLT52aWV3cG9ydENvbnN0cmFpbmVkVmlzaWJsZUNvbnRlbnRS
ZWN0KCk7Ci0gICAgZmxvYXQgc2NhbGUgPSAxOwotICAgIGlmIChGcmFtZSogZnJhbWUgPSB2aWV3
KCktPmZyYW1lVmlldygpLT5mcmFtZSgpKQotICAgICAgICBzY2FsZSA9IGZyYW1lLT5mcmFtZVNj
YWxlRmFjdG9yKCk7Ci0gICAgCi0gICAgdmlld3BvcnRSZWN0LnNjYWxlKDEgLyBzY2FsZSk7Cisg
ICAgRmxvYXRSZWN0IGNvbnN0cmFpbmluZ1JlY3Q7CisKKyAgICBBU1NFUlQoaGFzTGF5ZXIoKSk7
CisgICAgUmVuZGVyTGF5ZXIqIGVuY2xvc2luZ0NsaXBwaW5nTGF5ZXIgPSBsYXllcigpLT5lbmNs
b3NpbmdPdmVyZmxvd0NsaXBMYXllcihFeGNsdWRlU2VsZik7CisgICAgaWYgKGVuY2xvc2luZ0Ns
aXBwaW5nTGF5ZXIpIHsKKyAgICAgICAgUmVuZGVyQm94KiBlbmNsb3NpbmdDbGlwcGluZ0JveCA9
IHRvUmVuZGVyQm94KGVuY2xvc2luZ0NsaXBwaW5nTGF5ZXItPnJlbmRlcmVyKCkpOworICAgICAg
ICBMYXlvdXRSZWN0IGNsaXBSZWN0ID0gZW5jbG9zaW5nQ2xpcHBpbmdCb3gtPm92ZXJmbG93Q2xp
cFJlY3QoTGF5b3V0UG9pbnQoKSwgMCk7IC8vIEZJWE1FOiBtYWtlIHRoaXMgd29yayBpbiByZWdp
b25zLgorICAgICAgICBjb25zdHJhaW5pbmdSZWN0ID0gZW5jbG9zaW5nQ2xpcHBpbmdCb3gtPmxv
Y2FsVG9Db250YWluZXJRdWFkKEZsb2F0UmVjdChjbGlwUmVjdCksIHZpZXcoKSkuYm91bmRpbmdC
b3goKTsKKyAgICB9IGVsc2UgeworICAgICAgICBMYXlvdXRSZWN0IHZpZXdwb3J0UmVjdCA9IHZp
ZXcoKS0+ZnJhbWVWaWV3KCktPnZpZXdwb3J0Q29uc3RyYWluZWRWaXNpYmxlQ29udGVudFJlY3Qo
KTsKKyAgICAgICAgZmxvYXQgc2NhbGUgPSAxOworICAgICAgICBpZiAoRnJhbWUqIGZyYW1lID0g
dmlldygpLT5mcmFtZVZpZXcoKS0+ZnJhbWUoKSkKKyAgICAgICAgICAgIHNjYWxlID0gZnJhbWUt
PmZyYW1lU2NhbGVGYWN0b3IoKTsKKyAgICAgICAgCisgICAgICAgIHZpZXdwb3J0UmVjdC5zY2Fs
ZSgxIC8gc2NhbGUpOworICAgICAgICBjb25zdHJhaW5pbmdSZWN0ID0gdmlld3BvcnRSZWN0Owor
ICAgIH0KICAgICAKICAgICBTdGlja3lQb3NpdGlvblZpZXdwb3J0Q29uc3RyYWludHMgY29uc3Ry
YWludHM7Ci0gICAgY29tcHV0ZVN0aWNreVBvc2l0aW9uQ29uc3RyYWludHMoY29uc3RyYWludHMs
IHZpZXdwb3J0UmVjdCk7CisgICAgY29tcHV0ZVN0aWNreVBvc2l0aW9uQ29uc3RyYWludHMoY29u
c3RyYWludHMsIGNvbnN0cmFpbmluZ1JlY3QpOwogICAgIAogICAgIC8vIFRoZSBzdGlja3kgb2Zm
c2V0IGlzIHBoeXNpY2FsLCBzbyB3ZSBjYW4ganVzdCByZXR1cm4gdGhlIGRlbHRhIGNvbXB1dGVk
IGluIGFic29sdXRlIGNvb3JkcyAodGhvdWdoIGl0IG1heSBiZSB3cm9uZyB3aXRoIHRyYW5zZm9y
bXMpLgotICAgIHJldHVybiBMYXlvdXRTaXplKGNvbnN0cmFpbnRzLmNvbXB1dGVTdGlja3lPZmZz
ZXQodmlld3BvcnRSZWN0KSk7CisgICAgcmV0dXJuIExheW91dFNpemUoY29uc3RyYWludHMuY29t
cHV0ZVN0aWNreU9mZnNldChjb25zdHJhaW5pbmdSZWN0KSk7CiB9CiAKIExheW91dFNpemUgUmVu
ZGVyQm94TW9kZWxPYmplY3Q6Om9mZnNldEZvckluRmxvd1Bvc2l0aW9uKCkgY29uc3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDBmMGM4N2NhMDBhZWFhYTU5
YjA5YTRlYjNhNWQzNjNhYTVkNDJiZTUuLjY3MWRlZGFmNTA1NTlkZGMzYWNiZTUyOGQ1ZDc5MmQ5
NDgxOTA1M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAt
OTM0LDYgKzkzNCwxOCBAQCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBSZW5kZXJMYXllcjo6cmVuZGVy
YWJsZVRyYW5zZm9ybShQYWludEJlaGF2aW9yIHBhaW50QmVoYXZpbwogICAgIHJldHVybiAqbV90
cmFuc2Zvcm07CiB9CiAKK1JlbmRlckxheWVyKiBSZW5kZXJMYXllcjo6ZW5jbG9zaW5nT3ZlcmZs
b3dDbGlwTGF5ZXIoSW5jbHVkZVNlbGZPck5vdCBpbmNsdWRlU2VsZikgY29uc3QKK3sKKyAgICBj
b25zdCBSZW5kZXJMYXllciogbGF5ZXIgPSAoaW5jbHVkZVNlbGYgPT0gSW5jbHVkZVNlbGYpID8g
dGhpcyA6IHBhcmVudCgpOworICAgIHdoaWxlIChsYXllcikgeworICAgICAgICBpZiAobGF5ZXIt
PnJlbmRlcmVyKCktPmhhc092ZXJmbG93Q2xpcCgpKQorICAgICAgICAgICAgcmV0dXJuIGNvbnN0
X2Nhc3Q8UmVuZGVyTGF5ZXIqPihsYXllcik7CisKKyAgICAgICAgbGF5ZXIgPSBsYXllci0+cGFy
ZW50KCk7CisgICAgfQorICAgIHJldHVybiAwOworfQorCiBzdGF0aWMgYm9vbCBjaGVja0NvbnRh
aW5pbmdCbG9ja0NoYWluRm9yUGFnaW5hdGlvbihSZW5kZXJMYXllck1vZGVsT2JqZWN0KiByZW5k
ZXJlciwgUmVuZGVyQm94KiBhbmNlc3RvckNvbHVtbnNSZW5kZXJlcikKIHsKICAgICBSZW5kZXJW
aWV3KiB2aWV3ID0gcmVuZGVyZXItPnZpZXcoKTsKQEAgLTE0MTcsOSArMTQyOSw5IEBAIGlubGlu
ZSBib29sIFJlbmRlckxheWVyOjpzaG91bGRSZXBhaW50QWZ0ZXJMYXlvdXQoKSBjb25zdAogfQog
CiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQotUmVuZGVyTGF5ZXIqIFJlbmRlckxh
eWVyOjplbmNsb3NpbmdDb21wb3NpdGluZ0xheWVyKGJvb2wgaW5jbHVkZVNlbGYpIGNvbnN0CitS
ZW5kZXJMYXllciogUmVuZGVyTGF5ZXI6OmVuY2xvc2luZ0NvbXBvc2l0aW5nTGF5ZXIoSW5jbHVk
ZVNlbGZPck5vdCBpbmNsdWRlU2VsZikgY29uc3QKIHsKLSAgICBpZiAoaW5jbHVkZVNlbGYgJiYg
aXNDb21wb3NpdGVkKCkpCisgICAgaWYgKGluY2x1ZGVTZWxmID09IEluY2x1ZGVTZWxmICYmIGlz
Q29tcG9zaXRlZCgpKQogICAgICAgICByZXR1cm4gY29uc3RfY2FzdDxSZW5kZXJMYXllcio+KHRo
aXMpOwogCiAgICAgZm9yIChjb25zdCBSZW5kZXJMYXllciogY3VyciA9IGNvbXBvc2l0aW5nQ29u
dGFpbmVyKHRoaXMpOyBjdXJyOyBjdXJyID0gY29tcG9zaXRpbmdDb250YWluZXIoY3VycikpIHsK
QEAgLTE0MzAsOSArMTQ0Miw5IEBAIFJlbmRlckxheWVyKiBSZW5kZXJMYXllcjo6ZW5jbG9zaW5n
Q29tcG9zaXRpbmdMYXllcihib29sIGluY2x1ZGVTZWxmKSBjb25zdAogICAgIHJldHVybiAwOwog
fQogCi1SZW5kZXJMYXllciogUmVuZGVyTGF5ZXI6OmVuY2xvc2luZ0NvbXBvc2l0aW5nTGF5ZXJG
b3JSZXBhaW50KGJvb2wgaW5jbHVkZVNlbGYpIGNvbnN0CitSZW5kZXJMYXllciogUmVuZGVyTGF5
ZXI6OmVuY2xvc2luZ0NvbXBvc2l0aW5nTGF5ZXJGb3JSZXBhaW50KEluY2x1ZGVTZWxmT3JOb3Qg
aW5jbHVkZVNlbGYpIGNvbnN0CiB7Ci0gICAgaWYgKGluY2x1ZGVTZWxmICYmIGlzQ29tcG9zaXRl
ZCgpICYmICFiYWNraW5nKCktPnBhaW50c0ludG9Db21wb3NpdGVkQW5jZXN0b3IoKSkKKyAgICBp
ZiAoaW5jbHVkZVNlbGYgPT0gSW5jbHVkZVNlbGYgJiYgaXNDb21wb3NpdGVkKCkgJiYgIWJhY2tp
bmcoKS0+cGFpbnRzSW50b0NvbXBvc2l0ZWRBbmNlc3RvcigpKQogICAgICAgICByZXR1cm4gY29u
c3RfY2FzdDxSZW5kZXJMYXllcio+KHRoaXMpOwogCiAgICAgZm9yIChjb25zdCBSZW5kZXJMYXll
ciogY3VyciA9IGNvbXBvc2l0aW5nQ29udGFpbmVyKHRoaXMpOyBjdXJyOyBjdXJyID0gY29tcG9z
aXRpbmdDb250YWluZXIoY3VycikpIHsKQEAgLTE0NDUsOSArMTQ1Nyw5IEBAIFJlbmRlckxheWVy
KiBSZW5kZXJMYXllcjo6ZW5jbG9zaW5nQ29tcG9zaXRpbmdMYXllckZvclJlcGFpbnQoYm9vbCBp
bmNsdWRlU2VsZikKICNlbmRpZgogCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQotUmVuZGVyTGF5
ZXIqIFJlbmRlckxheWVyOjplbmNsb3NpbmdGaWx0ZXJMYXllcihib29sIGluY2x1ZGVTZWxmKSBj
b25zdAorUmVuZGVyTGF5ZXIqIFJlbmRlckxheWVyOjplbmNsb3NpbmdGaWx0ZXJMYXllcihJbmNs
dWRlU2VsZk9yTm90IGluY2x1ZGVTZWxmKSBjb25zdAogewotICAgIGNvbnN0IFJlbmRlckxheWVy
KiBjdXJyID0gaW5jbHVkZVNlbGYgPyB0aGlzIDogcGFyZW50KCk7CisgICAgY29uc3QgUmVuZGVy
TGF5ZXIqIGN1cnIgPSAoaW5jbHVkZVNlbGYgPT0gSW5jbHVkZVNlbGYpID8gdGhpcyA6IHBhcmVu
dCgpOwogICAgIGZvciAoOyBjdXJyOyBjdXJyID0gY3Vyci0+cGFyZW50KCkpIHsKICAgICAgICAg
aWYgKGN1cnItPnJlcXVpcmVzRnVsbExheWVySW1hZ2VGb3JGaWx0ZXJzKCkpCiAgICAgICAgICAg
ICByZXR1cm4gY29uc3RfY2FzdDxSZW5kZXJMYXllcio+KGN1cnIpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXIuaAppbmRleCA3NDQ5OTk1MWU5MmUwZDM2MjgwY2UzZTIxNDQ5ZTli
MWMxMGU2NzhkLi42MDJiZTU3ZDIwYWVlZGI5NjM5OThjNzc4NmYzNGMxYjJjNGJmYWE2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaApAQCAtNzYsNiArNzYsNyBAQCBjbGFz
cyBSZW5kZXJMYXllckNvbXBvc2l0b3I7CiAjZW5kaWYKIAogZW51bSBCb3JkZXJSYWRpdXNDbGlw
cGluZ1J1bGUgeyBJbmNsdWRlU2VsZkZvckJvcmRlclJhZGl1cywgRG9Ob3RJbmNsdWRlU2VsZkZv
ckJvcmRlclJhZGl1cyB9OworZW51bSBJbmNsdWRlU2VsZk9yTm90IHsgSW5jbHVkZVNlbGYsIEV4
Y2x1ZGVTZWxmIH07CiAKIGVudW0gUmVwYWludFN0YXR1cyB7CiAgICAgTmVlZHNOb3JtYWxSZXBh
aW50ID0gMCwKQEAgLTU3MCwxNiArNTcxLDE4IEBAIHB1YmxpYzoKICAgICAvLyBUaGUgbGF5ZXIg
cmVsYXRpdmUgdG8gd2hpY2ggY2xpcHBpbmcgcmVjdHMgZm9yIHRoaXMgbGF5ZXIgYXJlIGNvbXB1
dGVkLgogICAgIFJlbmRlckxheWVyKiBjbGlwcGluZ1Jvb3RGb3JQYWludGluZygpIGNvbnN0Owog
CisgICAgUmVuZGVyTGF5ZXIqIGVuY2xvc2luZ092ZXJmbG93Q2xpcExheWVyKEluY2x1ZGVTZWxm
T3JOb3QpIGNvbnN0OworCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogICAgIC8v
IEVuY2xvc2luZyBjb21wb3NpdGluZyBsYXllcjsgaWYgaW5jbHVkZVNlbGYgaXMgdHJ1ZSwgbWF5
IHJldHVybiB0aGlzLgotICAgIFJlbmRlckxheWVyKiBlbmNsb3NpbmdDb21wb3NpdGluZ0xheWVy
KGJvb2wgaW5jbHVkZVNlbGYgPSB0cnVlKSBjb25zdDsKLSAgICBSZW5kZXJMYXllciogZW5jbG9z
aW5nQ29tcG9zaXRpbmdMYXllckZvclJlcGFpbnQoYm9vbCBpbmNsdWRlU2VsZiA9IHRydWUpIGNv
bnN0OworICAgIFJlbmRlckxheWVyKiBlbmNsb3NpbmdDb21wb3NpdGluZ0xheWVyKEluY2x1ZGVT
ZWxmT3JOb3QgPSBJbmNsdWRlU2VsZikgY29uc3Q7CisgICAgUmVuZGVyTGF5ZXIqIGVuY2xvc2lu
Z0NvbXBvc2l0aW5nTGF5ZXJGb3JSZXBhaW50KEluY2x1ZGVTZWxmT3JOb3QgPSBJbmNsdWRlU2Vs
ZikgY29uc3Q7CiAgICAgLy8gQW5jZXN0b3IgY29tcG9zaXRpbmcgbGF5ZXIsIGV4Y2x1ZGluZyB0
aGlzLgotICAgIFJlbmRlckxheWVyKiBhbmNlc3RvckNvbXBvc2l0aW5nTGF5ZXIoKSBjb25zdCB7
IHJldHVybiBlbmNsb3NpbmdDb21wb3NpdGluZ0xheWVyKGZhbHNlKTsgfQorICAgIFJlbmRlckxh
eWVyKiBhbmNlc3RvckNvbXBvc2l0aW5nTGF5ZXIoKSBjb25zdCB7IHJldHVybiBlbmNsb3NpbmdD
b21wb3NpdGluZ0xheWVyKEV4Y2x1ZGVTZWxmKTsgfQogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ1NT
X0ZJTFRFUlMpCi0gICAgUmVuZGVyTGF5ZXIqIGVuY2xvc2luZ0ZpbHRlckxheWVyKGJvb2wgaW5j
bHVkZVNlbGYgPSB0cnVlKSBjb25zdDsKKyAgICBSZW5kZXJMYXllciogZW5jbG9zaW5nRmlsdGVy
TGF5ZXIoSW5jbHVkZVNlbGZPck5vdCA9IEluY2x1ZGVTZWxmKSBjb25zdDsKICAgICBSZW5kZXJM
YXllciogZW5jbG9zaW5nRmlsdGVyUmVwYWludExheWVyKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRG
aWx0ZXJCYWNrZW5kTmVlZHNSZXBhaW50aW5nSW5SZWN0KGNvbnN0IExheW91dFJlY3QmLCBib29s
IGltbWVkaWF0ZSk7CiAgICAgYm9vbCBoYXNBbmNlc3RvcldpdGhGaWx0ZXJPdXRzZXRzKCkgY29u
c3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21w
b3NpdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0
b3IuY3BwCmluZGV4IGIwYWI3MWJmZGQwYjRkYzBkMjVkMmI2MjJhZWM3YjNmNTZlZDdmNzMuLjAz
YTBlYTljYmFjOTY3MDU0YmZhYzgwMzk5YmY5ODkzNGMyY2YwYzUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCkBAIC03NzYsNyAr
Nzc2LDcgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlcGFpbnRPbkNvbXBvc2l0aW5n
Q2hhbmdlKFJlbmRlckxheWVyKiBsYXllcikKIC8vIFRoaXMgbWV0aG9kIGFzc3VtZXMgdGhhdCBs
YXlvdXQgaXMgdXAtdG8tZGF0ZSwgdW5saWtlIHJlcGFpbnRPbkNvbXBvc2l0aW5nQ2hhbmdlKCku
CiB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVwYWludEluQ29tcG9zaXRlZEFuY2VzdG9y
KFJlbmRlckxheWVyKiBsYXllciwgY29uc3QgTGF5b3V0UmVjdCYgcmVjdCkKIHsKLSAgICBSZW5k
ZXJMYXllciogY29tcG9zaXRlZEFuY2VzdG9yID0gbGF5ZXItPmVuY2xvc2luZ0NvbXBvc2l0aW5n
TGF5ZXJGb3JSZXBhaW50KGZhbHNlIC8qZXhjbHVkZSBzZWxmKi8pOworICAgIFJlbmRlckxheWVy
KiBjb21wb3NpdGVkQW5jZXN0b3IgPSBsYXllci0+ZW5jbG9zaW5nQ29tcG9zaXRpbmdMYXllckZv
clJlcGFpbnQoRXhjbHVkZVNlbGYpOwogICAgIGlmIChjb21wb3NpdGVkQW5jZXN0b3IpIHsKICAg
ICAgICAgQVNTRVJUKGNvbXBvc2l0ZWRBbmNlc3Rvci0+YmFja2luZygpKTsKIApAQCAtMjIwNCw2
ICsyMjA0LDIyIEBAIGJvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyZXF1aXJlc0NvbXBvc2l0
aW5nRm9yQmxlbmRpbmcoUmVuZGVyT2JqZWN0KiByZW5kZXJlCiAjZW5kaWYKIH0KIAorc3RhdGlj
IGJvb2wgaXNWaWV3cG9ydENvbnN0cmFpbmVkRml4ZWRPclN0aWNreUxheWVyKGNvbnN0IFJlbmRl
ckxheWVyKiBsYXllcikKK3sKKyAgICBpZiAobGF5ZXItPnJlbmRlcmVyKCktPmlzU3RpY2t5UG9z
aXRpb25lZCgpKQorICAgICAgICByZXR1cm4gIWxheWVyLT5lbmNsb3NpbmdPdmVyZmxvd0NsaXBM
YXllcihFeGNsdWRlU2VsZik7CisKKyAgICBpZiAobGF5ZXItPnJlbmRlcmVyKCktPnN0eWxlKCkt
PnBvc2l0aW9uKCkgIT0gRml4ZWRQb3NpdGlvbikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgZm9yIChSZW5kZXJMYXllciogc3RhY2tpbmdDb250YWluZXIgPSBsYXllci0+c3RhY2tpbmdD
b250YWluZXIoKTsgc3RhY2tpbmdDb250YWluZXI7IHN0YWNraW5nQ29udGFpbmVyID0gc3RhY2tp
bmdDb250YWluZXItPnN0YWNraW5nQ29udGFpbmVyKCkpIHsKKyAgICAgICAgaWYgKHN0YWNraW5n
Q29udGFpbmVyLT5pc0NvbXBvc2l0ZWQoKSAmJiBzdGFja2luZ0NvbnRhaW5lci0+cmVuZGVyZXIo
KS0+c3R5bGUoKS0+cG9zaXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uKQorICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCiBib29sIFJlbmRlckxh
eWVyQ29tcG9zaXRvcjo6cmVxdWlyZXNDb21wb3NpdGluZ0ZvclBvc2l0aW9uKFJlbmRlck9iamVj
dCogcmVuZGVyZXIsIGNvbnN0IFJlbmRlckxheWVyKiBsYXllciwgUmVuZGVyTGF5ZXI6OlZpZXdw
b3J0Q29uc3RyYWluZWROb3RDb21wb3NpdGVkUmVhc29uKiB2aWV3cG9ydENvbnN0cmFpbmVkTm90
Q29tcG9zaXRlZFJlYXNvbikgY29uc3QKIHsKICAgICAvLyBwb3NpdGlvbjpmaXhlZCBlbGVtZW50
cyB0aGF0IGNyZWF0ZSB0aGVpciBvd24gc3RhY2tpbmcgY29udGV4dCAoZS5nLiBoYXZlIGFuIGV4
cGxpY2l0IHotaW5kZXgsCkBAIC0yMjI4LDcgKzIyNDQsNyBAQCBib29sIFJlbmRlckxheWVyQ29t
cG9zaXRvcjo6cmVxdWlyZXNDb21wb3NpdGluZ0ZvclBvc2l0aW9uKFJlbmRlck9iamVjdCogcmVu
ZGVyZQogICAgIH0KIAogICAgIGlmIChpc1N0aWNreSkKLSAgICAgICAgcmV0dXJuIGhhc0Nvb3Jk
aW5hdGVkU2Nyb2xsaW5nKCk7CisgICAgICAgIHJldHVybiBoYXNDb29yZGluYXRlZFNjcm9sbGlu
ZygpICYmIGlzVmlld3BvcnRDb25zdHJhaW5lZEZpeGVkT3JTdGlja3lMYXllcihsYXllcik7CiAK
ICAgICBSZW5kZXJPYmplY3QqIGNvbnRhaW5lciA9IHJlbmRlcmVyLT5jb250YWluZXIoKTsKICAg
ICAvLyBJZiB0aGUgcmVuZGVyZXIgaXMgbm90IGhvb2tlZCB1cCB5ZXQgdGhlbiB3ZSBoYXZlIHRv
IHdhaXQgdW50aWwgaXQgaXMuCkBAIC0zMDExLDI1ICszMDI3LDkgQEAgdm9pZCBSZW5kZXJMYXll
ckNvbXBvc2l0b3I6OmRldmljZU9yUGFnZVNjYWxlRmFjdG9yQ2hhbmdlZCgpCiAgICAgICAgIHJv
b3RMYXllci0+bm90ZURldmljZU9yUGFnZVNjYWxlRmFjdG9yQ2hhbmdlZEluY2x1ZGluZ0Rlc2Nl
bmRhbnRzKCk7CiB9CiAKLXN0YXRpYyBib29sIGlzUm9vdG1vc3RGaXhlZE9yU3RpY2t5TGF5ZXIo
UmVuZGVyTGF5ZXIqIGxheWVyKQotewotICAgIGlmIChsYXllci0+cmVuZGVyZXIoKS0+aXNTdGlj
a3lQb3NpdGlvbmVkKCkpCi0gICAgICAgIHJldHVybiB0cnVlOwotCi0gICAgaWYgKGxheWVyLT5y
ZW5kZXJlcigpLT5zdHlsZSgpLT5wb3NpdGlvbigpICE9IEZpeGVkUG9zaXRpb24pCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQotICAgIGZvciAoUmVuZGVyTGF5ZXIqIHN0YWNraW5nQ29udGFpbmVy
ID0gbGF5ZXItPnN0YWNraW5nQ29udGFpbmVyKCk7IHN0YWNraW5nQ29udGFpbmVyOyBzdGFja2lu
Z0NvbnRhaW5lciA9IHN0YWNraW5nQ29udGFpbmVyLT5zdGFja2luZ0NvbnRhaW5lcigpKSB7Ci0g
ICAgICAgIGlmIChzdGFja2luZ0NvbnRhaW5lci0+aXNDb21wb3NpdGVkKCkgJiYgc3RhY2tpbmdD
b250YWluZXItPnJlbmRlcmVyKCktPnN0eWxlKCktPnBvc2l0aW9uKCkgPT0gRml4ZWRQb3NpdGlv
bikKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsK
LX0KLQogdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZVZpZXdwb3J0Q29uc3RyYWlu
dFN0YXR1cyhSZW5kZXJMYXllciogbGF5ZXIpCiB7Ci0gICAgaWYgKGlzUm9vdG1vc3RGaXhlZE9y
U3RpY2t5TGF5ZXIobGF5ZXIpKQorICAgIGlmIChpc1ZpZXdwb3J0Q29uc3RyYWluZWRGaXhlZE9y
U3RpY2t5TGF5ZXIobGF5ZXIpKQogICAgICAgICBhZGRWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXIo
bGF5ZXIpOwogICAgIGVsc2UKICAgICAgICAgcmVtb3ZlVmlld3BvcnRDb25zdHJhaW5lZExheWVy
KGxheWVyKTsKQEAgLTMwOTIsMTQgKzMwOTIsMTUgQEAgRml4ZWRQb3NpdGlvblZpZXdwb3J0Q29u
c3RyYWludHMgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpjb21wdXRlRml4ZWRWaWV3cG9ydENvbnMK
IFN0aWNreVBvc2l0aW9uVmlld3BvcnRDb25zdHJhaW50cyBSZW5kZXJMYXllckNvbXBvc2l0b3I6
OmNvbXB1dGVTdGlja3lWaWV3cG9ydENvbnN0cmFpbnRzKFJlbmRlckxheWVyKiBsYXllcikgY29u
c3QKIHsKICAgICBBU1NFUlQobGF5ZXItPmlzQ29tcG9zaXRlZCgpKTsKKyAgICAvLyBXZSBzaG91
bGQgbmV2ZXIgZ2V0IGhlcmUgZm9yIHN0aWNraWVzIGNvbnN0cmFpbmVkIGJ5IGFuIGVuY2xvc2lu
ZyBjbGlwcGluZyBsYXllci4KKyAgICBBU1NFUlQoIWxheWVyLT5lbmNsb3NpbmdPdmVyZmxvd0Ns
aXBMYXllcihFeGNsdWRlU2VsZikpOwogCiAgICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX3Jl
bmRlclZpZXctPmZyYW1lVmlldygpOwogICAgIExheW91dFJlY3Qgdmlld3BvcnRSZWN0ID0gZnJh
bWVWaWV3LT52aWV3cG9ydENvbnN0cmFpbmVkVmlzaWJsZUNvbnRlbnRSZWN0KCk7CiAKLSAgICBT
dGlja3lQb3NpdGlvblZpZXdwb3J0Q29uc3RyYWludHMgY29uc3RyYWludHM7Ci0KICAgICBSZW5k
ZXJCb3hNb2RlbE9iamVjdCogcmVuZGVyZXIgPSB0b1JlbmRlckJveE1vZGVsT2JqZWN0KGxheWVy
LT5yZW5kZXJlcigpKTsKIAorICAgIFN0aWNreVBvc2l0aW9uVmlld3BvcnRDb25zdHJhaW50cyBj
b25zdHJhaW50czsKICAgICByZW5kZXJlci0+Y29tcHV0ZVN0aWNreVBvc2l0aW9uQ29uc3RyYWlu
dHMoY29uc3RyYWludHMsIHZpZXdwb3J0UmVjdCk7CiAKICAgICBHcmFwaGljc0xheWVyKiBncmFw
aGljc0xheWVyID0gbGF5ZXItPmJhY2tpbmcoKS0+Z3JhcGhpY3NMYXllcigpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM5
Nzk4ZTUwNGMwNDVlNzVlOWNlY2QzNzNiNzdkZWM4MTIxYzgyNWMuLjc0YTZlYmRkMGE5Y2Y5ODMw
YWYyNDQwMzg0ZWE4MjY5Yjc4YzFjZTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMy0wNS0y
MCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBwb3Np
dGlvbjpzdGlja3kgc2hvdWxkIHN0aWNrIGZvciB0aGUgZW5jbG9zaW5nIG92ZXJmbG93IGFuY2Vz
dG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDAw
NTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAg
ICAgIFJlZmVyZW5jZSB0ZXN0IGZvciBzdGlja3kgYmVoYXZpb3IgaW5zaWRlIG92ZXJmbG93Oi4K
KworICAgICAgICAqIGZhc3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLW92ZXJmbG93LWV4cGVjdGVk
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLW92ZXJm
bG93Lmh0bWw6IEFkZGVkLgorCiAyMDEzLTA1LTIwICBTZW9ranUgS3dvbiAgPHNlb2tqdS5rd29u
QGdtYWlsLmNvbT4KIAogICAgICAgICBbR1RLXSBDbGVhbnVwIFRlc3RFeHBlY3RhdGlvbnMgdG8g
cGFzcyAtLWxpbnQtdGVzdC1maWxlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
c3RpY2t5L3N0aWNreS10b3Atb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLW92ZXJmbG93LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYjI4NDZkZmIwMzIwOWVhYzJlYzExMTY4ZTcxODljYmMxMGM4OGIyNgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLW92ZXJmbG93LWV4
cGVjdGVkLmh0bWwKQEAgLTAsMCArMSw2NiBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgor
PGhlYWQ+Cis8c3R5bGU+CisgICAgLmdyb3VwIHsKKyAgICAgICAgZGlzcGxheTogaW5saW5lLWJs
b2NrOworICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgIHdpZHRoOiAxNTBweDsK
KyAgICAgICAgaGVpZ2h0OiA1MDBweDsKKyAgICB9CisgICAgCisgICAgI292ZXJmbG93IHsKKyAg
ICAgICAgd2lkdGg6IDYwMHB4OworICAgICAgICBoZWlnaHQ6IDU1MHB4OworICAgICAgICBvdmVy
ZmxvdzogaGlkZGVuOworICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKKyAgICB9Cisg
ICAgCisgICAgLnNwYWNlciB7CisgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICB3aWR0aDog
MTBweDsKKyAgICAgICAgaGVpZ2h0OiAxMjAwcHg7CisgICAgfQorICAgIC5jb250YWluZXIgewor
ICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIGhlaWdodDogNDAwcHg7CisgICAgICAgIG91
dGxpbmU6IDJweCBzb2xpZCBibGFjazsKKyAgICB9CisgICAgCisgICAgLmJveCB7CisgICAgICAg
IHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICB9CisKKyAgICAuc3Rp
Y2t5IHsKKyAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgICAgICB0b3A6IDEwMHB4Owor
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICB9Cis8L3N0eWxlPgorPC9oZWFk
PgorPGJvZHk+CisgICAgPGRpdiBpZD0ib3ZlcmZsb3ciPgorICAgICAgICA8ZGl2IGNsYXNzPSJz
cGFjZXIiPjwvZGl2PgorCisgICAgICAgIDxkaXYgY2xhc3M9Imdyb3VwIiBzdHlsZT0idG9wOiAt
MTIwcHgiPgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KKyAgICAgICAgICAg
ICAgICA8ZGl2IGNsYXNzPSJzdGlja3kgYm94IiBzdHlsZT0idG9wOiAyMDBweCI+PC9kaXY+Cisg
ICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisKKyAgICAgICAgPGRpdiBjbGFzcz0i
Z3JvdXAiIHN0eWxlPSJ0b3A6IC0yMHB4Ij4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRh
aW5lciI+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RpY2t5IGJveCIgc3R5bGU9InRv
cDogMTIwcHgiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorCisg
ICAgICAgIDxkaXYgY2xhc3M9Imdyb3VwIiBzdHlsZT0idG9wOiAxMjBweCI+CisgICAgICAgICAg
ICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgorICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0
aWNreSBib3giIHN0eWxlPSJ0b3A6IDAiPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAg
ICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3Mvc3RpY2t5L3N0aWNreS10b3Atb3ZlcmZsb3cuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLW92ZXJmbG93Lmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uY2I0NTFjMDNiZGE1ZjQ3YWQ4YWYwYjZiNTBjMmRjZGNmZWJlZTM2MwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLW92ZXJmbG93Lmh0
bWwKQEAgLTAsMCArMSw4MiBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGhlYWQ+Cis8
c3R5bGU+CisgICAgLmdyb3VwIHsKKyAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOworICAg
ICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgICAgIHdpZHRoOiAxNTBweDsKKyAgICAgICAg
aGVpZ2h0OiA1MDBweDsKKyAgICB9CisgICAgCisgICAgI292ZXJmbG93IHsKKyAgICAgICAgd2lk
dGg6IDYwMHB4OworICAgICAgICBoZWlnaHQ6IDU1MHB4OworICAgICAgICBvdmVyZmxvdzogaGlk
ZGVuOyAvKiBTdGlsbCBzY3JvbGxhYmxlIHdpdGggSlMgKi8KKyAgICAgICAgYm9yZGVyOiAxcHgg
c29saWQgYmxhY2s7CisgICAgfQorICAgIAorICAgIC5zcGFjZXIgeworICAgICAgICBmbG9hdDog
bGVmdDsKKyAgICAgICAgd2lkdGg6IDEwcHg7CisgICAgICAgIGhlaWdodDogMTIwMHB4OworICAg
IH0KKyAgICAuY29udGFpbmVyIHsKKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBoZWln
aHQ6IDQwMHB4OworICAgICAgICBvdXRsaW5lOiAycHggc29saWQgYmxhY2s7CisgICAgfQorICAg
IAorICAgIC5ib3ggeworICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIGhlaWdodDogMjAw
cHg7CisgICAgfQorCisgICAgLnN0aWNreSB7CisgICAgICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0
aWNreTsKKyAgICAgICAgdG9wOiAxMDBweDsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47CisgICAgfQorICAgIAorICAgIC5pbmRpY2F0b3IgeworICAgICAgICBwb3NpdGlvbjogYWJz
b2x1dGU7CisgICAgICAgIHRvcDogMDsKKyAgICAgICAgbGVmdDogMDsKKyAgICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmVkOworICAgIH0KKzwvc3R5bGU+Cis8c2NyaXB0PgorICAgIGZ1bmN0aW9u
IGRvVGVzdCgpCisgICAgeworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3ZlcmZs
b3cnKS5zY3JvbGxUb3AgPSAxMjA7CisgICAgfQorICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVy
KCdsb2FkJywgZG9UZXN0LCBmYWxzZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAg
IDxkaXYgaWQ9Im92ZXJmbG93Ij4KKyAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2VyIj48L2Rpdj4K
KyAgICAgICAgPGRpdiBjbGFzcz0iZ3JvdXAiPgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5k
aWNhdG9yIGJveCIgc3R5bGU9InRvcDogMjAwcHg7Ij48L2Rpdj4KKyAgICAgICAgICAgIDxkaXYg
Y2xhc3M9ImNvbnRhaW5lciI+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RpY2t5IGJv
eCI+PC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisKKyAgICAgICAg
PGRpdiBjbGFzcz0iZ3JvdXAiIHN0eWxlPSJ0b3A6IDEwMHB4Ij4KKyAgICAgICAgICAgIDxkaXYg
Y2xhc3M9ImluZGljYXRvciBib3giIHN0eWxlPSJ0b3A6IDEyMHB4OyI+PC9kaXY+CisgICAgICAg
ICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgorICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9
InN0aWNreSBib3giPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2Pgor
CisgICAgICAgIDxkaXYgY2xhc3M9Imdyb3VwIiBzdHlsZT0idG9wOiAyNDBweCI+CisgICAgICAg
ICAgICA8ZGl2IGNsYXNzPSJpbmRpY2F0b3IgYm94IiBzdHlsZT0idG9wOiAwOyI+PC9kaXY+Cisg
ICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgorICAgICAgICAgICAgICAgIDxkaXYg
Y2xhc3M9InN0aWNreSBib3giPjwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwv
ZGl2PgorICAgIDwvZGl2PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="223761"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>