<?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>140035</bug_id>
          
          <creation_ts>2015-01-01 16:43:11 -0800</creation_ts>
          <short_desc>Rework code that hides characters in password fields to streamline a little</short_desc>
          <delta_ts>2015-01-02 08:33:41 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1058372</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-01-01 16:43:11 -0800</bug_when>
    <thetext>Rework code that hides characters in password fields to streamline a little</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1058375</commentid>
    <comment_count>1</comment_count>
      <attachid>243876</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-01-01 16:56:05 -0800</bug_when>
    <thetext>Created attachment 243876
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1058422</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-01-02 08:33:41 -0800</bug_when>
    <thetext>Committed r177860: &lt;http://trac.webkit.org/changeset/177860&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243876</attachid>
            <date>2015-01-01 16:56:05 -0800</date>
            <delta_ts>2015-01-01 20:45:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140035-20150101165608.patch</filename>
            <type>text/plain</type>
            <size>16511</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc3ODUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUyM2E4NjllYjA2ODY3N2ExNmNiNTBi
MmM3MzhmYTM3NTUyOGFiYmMuLjIxNTczNDkyMzczMjNhYTRlOWZhZGRhMWJiYTljMDk0NjJlZTBj
NTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTUtMDEtMDEgIERhcmluIEFkbGVyICA8ZGFyaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFJld29yayBjb2RlIHRoYXQgaGlkZXMgY2hhcmFjdGVycyBp
biBwYXNzd29yZCBmaWVsZHMgdG8gc3RyZWFtbGluZSBhIGxpdHRsZQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQwMDM1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmNw
cDoKKyAgICAgICAgKFdURjo6U3RyaW5nSW1wbDo6ZmlsbCk6IERlbGV0ZWQuCisgICAgICAgICog
d3RmL3RleHQvU3RyaW5nSW1wbC5oOiBEZWxldGVkIFN0cmluZ0ltcGw6OmZpbGwuCisgICAgICAg
ICogd3RmL3RleHQvV1RGU3RyaW5nLmg6CisgICAgICAgIChXVEY6OlN0cmluZzo6ZmlsbCk6IERl
bGV0ZWQuCisKIDIwMTQtMTItMjYgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4KIAog
ICAgICAgICBCdWlsZCBmaXguCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWNiNzQ3MjZjNDI3MmMwMjczM2FlYzQy
NzVmYzYyYTRmMjgyNDUzNS4uZjY4MGRiOWE5MWFhYzk2ODVlMmIxMWFjZTFkNWQ2NmZmYWIwMjhj
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUzIEBACisyMDE1LTAxLTAxICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZXdvcmsgY29kZSB0aGF0IGhpZGVzIGNoYXJh
Y3RlcnMgaW4gcGFzc3dvcmQgZmllbGRzIHRvIHN0cmVhbWxpbmUgYSBsaXR0bGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MDAzNQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZWRpdGluZy9JbnNlcnRJ
bnRvVGV4dE5vZGVDb21tYW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc2VydEludG9UZXh0
Tm9kZUNvbW1hbmQ6OmRvQXBwbHkpOiBQYXNzIHRoZSBvZmZzZXQgYWZ0ZXIgdGhlIGNoYXJhY3Rl
cgorICAgICAgICB3ZSB3YW50IHRvIHJldmVhbCBpbnN0ZWFkIG9mIHRoZSBvZmZzZXQgYmVmb3Jl
LiBUaGlzIGlzIG1vcmUgZnV0dXJlIHByb29mIGlmIHdlCisgICAgICAgIGV2ZXIgd2FudCB0byBo
YW5kbGluZyBzdXJyb2dhdGUgcGFpcnMgb3IgY29tYmluaW5nIG1hcmtzLCByYXRoZXIgdGhhbiBo
YXJkCisgICAgICAgIGNvZGluZyB0aGUgbGlrZWx5IGluY29ycmVjdCBydWxlIG9mICJnbyBiYWNr
IGJ5IG9uZSBjb2RlIHVuaXQiLiBBbHNvIGdvdCByaWQgb2YKKyAgICAgICAgdGhlIGlzU2VjdXJl
IGNoZWNrIGhlcmUsIHNpbmNlIFJlbmRlclRleHQgY2FuIGRvIHRoYXQgY2hlY2sgaW5zaWRlIHRo
ZQorICAgICAgICBtb21lbnRhcmlseVJldmVhbExhc3RUeXBlZENoYXJhY3RlciBpbnN0ZWFkLgor
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRleHQuY3BwOiBUd2Vha2VkIHRoZSBTZWN1cmVU
ZXh0VGltZXIgY2xhc3M6IE1hcmtlZCBpdCBmaW5hbAorICAgICAgICBhbmQgbWFkZSBpdCBkZXJp
dmUgZnJvbSBUaW1lckJhc2UgcHJpdmF0ZWx5LiBNYWRlIHRoZSBjb25zdHJ1Y3RvciBleHBsaWNp
dCBhbmQKKyAgICAgICAgbWFkZSBpdCB0YWtlIGEgcmVmZXJlbmNlIHJhdGhlciB0aGFuIGEgcG9p
bnRlci4gVXNlIGluaXRpYWxpemF0aW9uIGluIHRoZSBjbGFzcworICAgICAgICB0byBzZXQgdXAg
dGhlIHZhcmlhYmxlLCBhbmQgdXNlIDAgYXMgdGhlIHNwZWNpYWwgdmFsdWUgaW5zdGVhZCBvZiAt
MSBzaW5jZSB3ZQorICAgICAgICBub3cgc3RvcmUgdGhlIG9mZnNldCAqYWZ0ZXIqIHRoZSBjaGFy
YWN0ZXIgdG8gYmUgcmV2ZWFsZWQuCisgICAgICAgIChXZWJDb3JlOjpzZWN1cmVUZXh0VGltZXJz
KTogVXNlIHRoaXMgZnVuY3Rpb24gYW5kIE5ldmVyRGVzdHJveWVkIHJhdGhlciB0aGFuCisgICAg
ICAgIGEgZ2xvYmFsIHZhcmlhYmxlIGdTZWN1cmVUZXh0VGltZXJzLiBBbHNvIHVzZSB1bmlxdWVf
cHRyIGZvciB0aGUgbWFwIHNvIHdlCisgICAgICAgIGRvbid0IGhhdmUgdG8gZGVsZXRlIGV4cGxp
Y2l0bHkgYW55IG1vcmUuCisgICAgICAgIChXZWJDb3JlOjpTZWN1cmVUZXh0VGltZXI6OlNlY3Vy
ZVRleHRUaW1lcik6IE1vdmVkIG91dCBvZiB0aGUgY2xhc3MgZGVmaW5pdGlvbgorICAgICAgICBz
byB0aGUgY2xhc3MgaWEgYSBsaXR0bGUgZWFzaWVyIHRvIHJlYWQuCisgICAgICAgIChXZWJDb3Jl
OjpTZWN1cmVUZXh0VGltZXI6OnJlc3RhcnQpOiBSZW5hbWVkIHNpbmNlIHRoZSBmdW5jdGlvbiBu
YW1lIGRvZXNuJ3QKKyAgICAgICAgaGF2ZSB0byBkZXNjcmliZSBpdHMgYXJndW1lbnQ7IHRoZSBm
dW5jdGlvbiBpcyBvbmx5IGNhbGxlZCBpbiBvbmUgcGxhY2UuCisgICAgICAgIChXZWJDb3JlOjpT
ZWN1cmVUZXh0VGltZXI6OnRha2VPZmZzZXRBZnRlckxhc3RUeXBlZENoYXJhY3Rlcik6IENoYW5n
ZWQgbmFtZQorICAgICAgICBhbmQgbWFkZSB0aGlzIGEgb25lLXNob3QgdGhhdCBhbHdheXMgemVy
b2VzIHRoZSBvZmZzZXQuCisgICAgICAgIChXZWJDb3JlOjpTZWN1cmVUZXh0VGltZXI6OmZpcmVk
KTogTW92ZWQgb3V0IG9mIGxpbmUgYW5kIHR3ZWFrZWQgYXMgYWJvdmUuCisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJUZXh0Ojp3aWxsQmVEZXN0cm95ZWQpOiBTaW1wbGlmaWVkIG5vdyB0aGF0IHRo
ZSBmdW5jdGlvbgorICAgICAgICBzZWN1cmVUZXh0VGltZXJzKCkgYWx3YXlzIHJldHVybnMgYSBt
YXAgYW5kIHdlIGNhbiBqdXN0IHJlbW92ZSBzaW5jZSB0aGUKKyAgICAgICAgdmFsdWVzIGluIHRo
ZSBtYXAgYXJlIHVuaXF1ZV9wdHIsIHNvIHRha2UgY2FyZSBvZiBkZWxldGlvbi4KKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRleHQ6OnNldFJlbmRlcmVkVGV4dCk6IFR3ZWFrZWQgdGhlIGNvZGUg
dGhhdCBjYWxscyBzZWN1cmVUZXh0CisgICAgICAgIHRvIG1ha2UgdGhlIGlPUyBjYXNlIGNsZWFy
ZXIuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUZXh0OjpzZWN1cmVUZXh0KTogUmV3cm90ZSB0
aGUgZnVuY3Rpb24uIE5ldyB2ZXJzaW9uIG5vCisgICAgICAgIGxvbmdlciByZWxpZXMgb24gYSBz
cGVjaWFsIFN0cmluZzo6ZmlsbCBmdW5jdGlvbjsgaXQncyBraW5kIG9mIHN0cmFuZ2UgdGhhdAor
ICAgICAgICBTdHJpbmcgaGFkIGEgYnVpbHQgaW4gY29uY2VwdCBvZiByZXBsYWNpbmcgYSBzdHJp
bmcgd2l0aCBvbmUgdGhhdCBoYXMgdGhlCisgICAgICAgIHNhbWUgbGVuZ3RoIGJ1dCBhbGwgd2l0
aCBhIG1hc2tpbmcgY2hhcmFjdGVyLiBUaGlzIG5ldyBhcHByb2FjaCBpcyBjbGVhbmVyLgorICAg
ICAgICBJIGhhZCB3cml0dGVuIGEgdmVyc2lvbiB0aGF0IGhhbmRsZXMgc3Vycm9nYXRlIHBhaXJz
IGFuZCBjb21iaW5pbmcgbWFya3MsCisgICAgICAgIGJ1dCB0aGVuIGluc3RlYWQgd3JvdGUgYSBj
b21tZW50IGV4cGxhaW5pbmcgd2h5IHRoYXQncyBub3QgbmVlZGVkL2hlbHBmdWwuCisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJUZXh0Ojptb21lbnRhcmlseVJldmVhbExhc3RUeXBlZENoYXJhY3Rl
cik6IEFkZGVkIGEgY2hlY2sgc28KKyAgICAgICAgdGhpcyBkb2VzIG5vdGhpbmcgaWYgd2UgYXJl
IG5vdCBzZWN1cmluZyB0aGUgdGV4dC4gQWxzbyB1cGRhdGVkIGxvZ2ljIHNvIHRoYXQKKyAgICAg
ICAgdGhpcyBkb2Vzbid0IGRvdWJsZSBoYXNoIGFueSBtb3JlIGFuZCB1cGRhdGVkIGZvciBvdGhl
ciBjaGFuZ2VzIGxpa2UgdXNpbmcKKyAgICAgICAgYSByZWZlcmVuY2UgaW5zdGVhZCBvZiBhIHBv
aW50ZXIuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGV4dC5oOiBSZW1vdmVkIHRoZSB1
bm5lZWRlZCBpc1NlY3VyZSBmdW5jdGlvbiBhbmQgdXBkYXRlZAorICAgICAgICB0aGUgYXJndW1l
bnQgbmFtZSBpbiBtb21lbnRhcmlseVJldmVhbExhc3RUeXBlZENoYXJhY3RlciBzaW5jZSBpdCdz
IG5vdyB0aGUKKyAgICAgICAgb2Zmc2V0IGFmdGVyIHRoZSBjaGFyYWN0ZXIsIG5vdCBiZWZvcmUg
dGhlIGNoYXJhY3Rlci4KKwogMjAxNS0wMS0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtpT1NdIEZpeCBtZW1vcnkgbGVhayBpbiBGZWF0dXJlQ291bnRlcgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmNwcCBiL1NvdXJjZS9X
VEYvd3RmL3RleHQvU3RyaW5nSW1wbC5jcHAKaW5kZXggZDA0YzRhZGM2ZTZhYWIwZGNjMmFlOTBj
ZWM4YTc2N2ZhNWJiYjBiYS4uMjhhMjNiNDIzOThmOThjMDM1YzE4Mzk5NjM1N2I4MjYwZjdiY2Nj
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmNwcAorKysgYi9T
b3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuY3BwCkBAIC01OTYsMjIgKzU5Niw2IEBAIFJl
ZjxTdHJpbmdJbXBsPiBTdHJpbmdJbXBsOjp1cHBlcihjb25zdCBBdG9taWNTdHJpbmcmIGxvY2Fs
ZUlkZW50aWZpZXIpCiAgICAgcmV0dXJuIG5ld1N0cmluZy5yZWxlYXNlTm9uTnVsbCgpOwogfQog
Ci1SZWY8U3RyaW5nSW1wbD4gU3RyaW5nSW1wbDo6ZmlsbChVQ2hhciBjaGFyYWN0ZXIpCi17Ci0g
ICAgaWYgKCEoY2hhcmFjdGVyICYgfjB4N0YpKSB7Ci0gICAgICAgIExDaGFyKiBkYXRhOwotICAg
ICAgICBhdXRvIG5ld0ltcGwgPSBjcmVhdGVVbmluaXRpYWxpemVkKG1fbGVuZ3RoLCBkYXRhKTsK
LSAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG1fbGVuZ3RoOyArK2kpCi0gICAgICAg
ICAgICBkYXRhW2ldID0gY2hhcmFjdGVyOwotICAgICAgICByZXR1cm4gbmV3SW1wbDsKLSAgICB9
Ci0gICAgVUNoYXIqIGRhdGE7Ci0gICAgYXV0byBuZXdJbXBsID0gY3JlYXRlVW5pbml0aWFsaXpl
ZChtX2xlbmd0aCwgZGF0YSk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG1fbGVuZ3Ro
OyArK2kpCi0gICAgICAgIGRhdGFbaV0gPSBjaGFyYWN0ZXI7Ci0gICAgcmV0dXJuIG5ld0ltcGw7
Ci19Ci0KIFJlZjxTdHJpbmdJbXBsPiBTdHJpbmdJbXBsOjpmb2xkQ2FzZSgpCiB7CiAgICAgLy8g
RklYTUU6IFdoeSBkb2Vzbid0IHRoaXMgZnVuY3Rpb24gaGF2ZSBhIHByZWZsaWdodCBsaWtlIHRo
ZSBvbmUgaW4gU3RyaW5nSW1wbDo6bG93ZXI/CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCmluZGV4
IGYyNmVkY2IwNWNkYzNiN2I0YzI4ZTkzYTYzNGUzMGJlYThlYWQ4ZTAuLmI2NmIwY2M2YzUyZjA4
OTFmZmEwOGQzYzY5NTlkZGYwMTdlMzljZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3Rl
eHQvU3RyaW5nSW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCkBA
IC02MzksOSArNjM5LDYgQEAgcHVibGljOgogICAgIFdURl9FWFBPUlRfU1RSSU5HX0FQSSBSZWY8
U3RyaW5nSW1wbD4gbG93ZXIoY29uc3QgQXRvbWljU3RyaW5nJiBsb2NhbGVJZGVudGlmaWVyKTsK
ICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgUmVmPFN0cmluZ0ltcGw+IHVwcGVyKGNvbnN0IEF0
b21pY1N0cmluZyYgbG9jYWxlSWRlbnRpZmllcik7CiAKLSAgICBXVEZfRVhQT1JUX1NUUklOR19B
UEkgUmVmPFN0cmluZ0ltcGw+IGZpbGwoVUNoYXIpOwotICAgIC8vIEZJWE1FOiBEbyB3ZSBuZWVk
IGZpbGwoY2hhcikgb3IgY2FuIHdlIGp1c3QgZG8gdGhlIHJpZ2h0IHRoaW5nIGlmIFVDaGFyIGlz
IEFTQ0lJPwotCiAgICAgUmVmPFN0cmluZ0ltcGw+IGZvbGRDYXNlKCk7CiAKICAgICBSZWY8U3Ry
aW5nSW1wbD4gc3RyaXBXaGl0ZVNwYWNlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90
ZXh0L1dURlN0cmluZy5oIGIvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAppbmRleCBi
MDQ4NDNmMWUzOGY0NzdiMDI3ODAxNDc4OWRjZmUyYWY0OTIwOTEwLi4zNDEyMjIyYmQ5MGMxMDJi
MmRiNjdiNTRlMDZiMDJkOTUwNzI2MTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0
L1dURlN0cmluZy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKQEAgLTMw
Niw4ICszMDYsNiBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiAqdGhpczsKICAgICB9CiAKLSAg
ICB2b2lkIGZpbGwoVUNoYXIgYykgeyBpZiAobV9pbXBsKSBtX2ltcGwgPSBtX2ltcGwtPmZpbGwo
Yyk7IH0KLQogICAgIFdURl9FWFBPUlRfU1RSSU5HX0FQSSB2b2lkIHRydW5jYXRlKHVuc2lnbmVk
IGxlbik7CiAgICAgV1RGX0VYUE9SVF9TVFJJTkdfQVBJIHZvaWQgcmVtb3ZlKHVuc2lnbmVkIHBv
cywgaW50IGxlbiA9IDEpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0lu
c2VydEludG9UZXh0Tm9kZUNvbW1hbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9JbnNl
cnRJbnRvVGV4dE5vZGVDb21tYW5kLmNwcAppbmRleCBmNTUzZjkzNDUwYTA1MmZiNDc0ZGM3YzZl
Y2U1Y2JhMmMyNDA2MzhjLi41Mzk0ZTdlMDliMTgyZTIwYzMwMjY4MDg4NzhkY2Y2NjY0NjkxYmYx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0luc2VydEludG9UZXh0Tm9kZUNv
bW1hbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvSW5zZXJ0SW50b1RleHROb2Rl
Q29tbWFuZC5jcHAKQEAgLTYwLDkgKzYwLDggQEAgdm9pZCBJbnNlcnRJbnRvVGV4dE5vZGVDb21t
YW5kOjpkb0FwcGx5KCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHBhc3N3b3JkRWNob0Vu
YWJsZWQpIHsKLSAgICAgICAgUmVuZGVyVGV4dCogcmVuZGVyVGV4dCA9IG1fbm9kZS0+cmVuZGVy
ZXIoKTsKLSAgICAgICAgaWYgKHJlbmRlclRleHQgJiYgcmVuZGVyVGV4dC0+aXNTZWN1cmUoKSkK
LSAgICAgICAgICAgIHJlbmRlclRleHQtPm1vbWVudGFyaWx5UmV2ZWFsTGFzdFR5cGVkQ2hhcmFj
dGVyKG1fb2Zmc2V0ICsgbV90ZXh0Lmxlbmd0aCgpIC0gMSk7CisgICAgICAgIGlmIChSZW5kZXJU
ZXh0KiByZW5kZXJUZXh0ID0gbV9ub2RlLT5yZW5kZXJlcigpKQorICAgICAgICAgICAgcmVuZGVy
VGV4dC0+bW9tZW50YXJpbHlSZXZlYWxMYXN0VHlwZWRDaGFyYWN0ZXIobV9vZmZzZXQgKyBtX3Rl
eHQubGVuZ3RoKCkpOwogICAgIH0KIAogICAgIG1fbm9kZS0+aW5zZXJ0RGF0YShtX29mZnNldCwg
bV90ZXh0LCBJR05PUkVfRVhDRVBUSU9OKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
ZXh0LmNwcAppbmRleCAwYjIzYmY0MWRhOTkwMTZlMDA2YjhmZTk0OWViMjliMjdiZDRjZWEyLi45
NDA3YWQyMjNhYmU5M2I3MDljMjgwMmE5NmNkMWJhNTY0NzM4NmI5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHQuY3BwCkBAIC0xLDcgKzEsNyBAQAogLyoKICAqIChDKSAxOTk5
IExhcnMgS25vbGwgKGtub2xsQGtkZS5vcmcpCiAgKiAoQykgMjAwMCBEaXJrIE11ZWxsZXIgKG11
ZWxsZXJAa2RlLm9yZykKLSAqIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywg
MjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MDQtMjAwNywgMjAxMy0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENv
cHlyaWdodCAoQykgMjAwNiBBbmRyZXcgV2VsbGluZ3RvbiAocHJvdG9uQHdpcmV0YXBwZWQubmV0
KQogICogQ29weXJpZ2h0IChDKSAyMDA2IEdyYWhhbSBEZW5uaXMgKGdyYWhhbS5kZW5uaXNAZ21h
aWwuY29tKQogICoKQEAgLTc1LDM4ICs3NSw1MyBAQCBzdHJ1Y3QgU2FtZVNpemVBc1JlbmRlclRl
eHQgOiBwdWJsaWMgUmVuZGVyT2JqZWN0IHsKIAogQ09NUElMRV9BU1NFUlQoc2l6ZW9mKFJlbmRl
clRleHQpID09IHNpemVvZihTYW1lU2l6ZUFzUmVuZGVyVGV4dCksIFJlbmRlclRleHRfc2hvdWxk
X3N0YXlfc21hbGwpOwogCi1jbGFzcyBTZWN1cmVUZXh0VGltZXI7Ci10eXBlZGVmIEhhc2hNYXA8
UmVuZGVyVGV4dCosIFNlY3VyZVRleHRUaW1lcio+IFNlY3VyZVRleHRUaW1lck1hcDsKLXN0YXRp
YyBTZWN1cmVUZXh0VGltZXJNYXAqIGdTZWN1cmVUZXh0VGltZXJzID0gMDsKLQotY2xhc3MgU2Vj
dXJlVGV4dFRpbWVyIDogcHVibGljIFRpbWVyQmFzZSB7CitjbGFzcyBTZWN1cmVUZXh0VGltZXIg
ZmluYWwgOiBwcml2YXRlIFRpbWVyQmFzZSB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7
CiBwdWJsaWM6Ci0gICAgU2VjdXJlVGV4dFRpbWVyKFJlbmRlclRleHQqIHJlbmRlclRleHQpCi0g
ICAgICAgIDogbV9yZW5kZXJUZXh0KHJlbmRlclRleHQpCi0gICAgICAgICwgbV9sYXN0VHlwZWRD
aGFyYWN0ZXJPZmZzZXQoLTEpCi0gICAgewotICAgIH0KKyAgICBleHBsaWNpdCBTZWN1cmVUZXh0
VGltZXIoUmVuZGVyVGV4dCYpOworICAgIHZvaWQgcmVzdGFydCh1bnNpZ25lZCBvZmZzZXRBZnRl
ckxhc3RUeXBlZENoYXJhY3Rlcik7CiAKLSAgICB2b2lkIHJlc3RhcnRXaXRoTmV3VGV4dCh1bnNp
Z25lZCBsYXN0VHlwZWRDaGFyYWN0ZXJPZmZzZXQpCi0gICAgewotICAgICAgICBtX2xhc3RUeXBl
ZENoYXJhY3Rlck9mZnNldCA9IGxhc3RUeXBlZENoYXJhY3Rlck9mZnNldDsKLSAgICAgICAgY29u
c3QgU2V0dGluZ3MmIHNldHRpbmdzID0gbV9yZW5kZXJUZXh0LT5mcmFtZSgpLnNldHRpbmdzKCk7
Ci0gICAgICAgIHN0YXJ0T25lU2hvdChzZXR0aW5ncy5wYXNzd29yZEVjaG9EdXJhdGlvbkluU2Vj
b25kcygpKTsKLSAgICB9Ci0gICAgdm9pZCBpbnZhbGlkYXRlKCkgeyBtX2xhc3RUeXBlZENoYXJh
Y3Rlck9mZnNldCA9IC0xOyB9Ci0gICAgdW5zaWduZWQgbGFzdFR5cGVkQ2hhcmFjdGVyT2Zmc2V0
KCkgeyByZXR1cm4gbV9sYXN0VHlwZWRDaGFyYWN0ZXJPZmZzZXQ7IH0KKyAgICB1bnNpZ25lZCB0
YWtlT2Zmc2V0QWZ0ZXJMYXN0VHlwZWRDaGFyYWN0ZXIoKTsKIAogcHJpdmF0ZToKLSAgICB2aXJ0
dWFsIHZvaWQgZmlyZWQoKQotICAgIHsKLSAgICAgICAgQVNTRVJUKGdTZWN1cmVUZXh0VGltZXJz
LT5jb250YWlucyhtX3JlbmRlclRleHQpKTsKLSAgICAgICAgbV9yZW5kZXJUZXh0LT5zZXRUZXh0
KG1fcmVuZGVyVGV4dC0+dGV4dCgpLCB0cnVlIC8qIGZvcmNpbmcgc2V0dGluZyB0ZXh0IGFzIGl0
IG1heSBiZSBtYXNrZWQgbGF0ZXIgKi8pOwotICAgIH0KLQotICAgIFJlbmRlclRleHQqIG1fcmVu
ZGVyVGV4dDsKLSAgICBpbnQgbV9sYXN0VHlwZWRDaGFyYWN0ZXJPZmZzZXQ7CisgICAgdmlydHVh
bCB2b2lkIGZpcmVkKCkgb3ZlcnJpZGU7CisgICAgUmVuZGVyVGV4dCYgbV9yZW5kZXJlcjsKKyAg
ICB1bnNpZ25lZCBtX29mZnNldEFmdGVyTGFzdFR5cGVkQ2hhcmFjdGVyIHsgMCB9OwogfTsKIAor
dHlwZWRlZiBIYXNoTWFwPFJlbmRlclRleHQqLCBzdGQ6OnVuaXF1ZV9wdHI8U2VjdXJlVGV4dFRp
bWVyPj4gU2VjdXJlVGV4dFRpbWVyTWFwOworCitzdGF0aWMgU2VjdXJlVGV4dFRpbWVyTWFwJiBz
ZWN1cmVUZXh0VGltZXJzKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8U2VjdXJlVGV4
dFRpbWVyTWFwPiBtYXA7CisgICAgcmV0dXJuIG1hcC5nZXQoKTsKK30KKworaW5saW5lIFNlY3Vy
ZVRleHRUaW1lcjo6U2VjdXJlVGV4dFRpbWVyKFJlbmRlclRleHQmIHJlbmRlcmVyKQorICAgIDog
bV9yZW5kZXJlcihyZW5kZXJlcikKK3sKK30KKworaW5saW5lIHZvaWQgU2VjdXJlVGV4dFRpbWVy
OjpyZXN0YXJ0KHVuc2lnbmVkIG9mZnNldEFmdGVyTGFzdFR5cGVkQ2hhcmFjdGVyKQoreworICAg
IG1fb2Zmc2V0QWZ0ZXJMYXN0VHlwZWRDaGFyYWN0ZXIgPSBvZmZzZXRBZnRlckxhc3RUeXBlZENo
YXJhY3RlcjsKKyAgICBzdGFydE9uZVNob3QobV9yZW5kZXJlci5mcmFtZSgpLnNldHRpbmdzKCku
cGFzc3dvcmRFY2hvRHVyYXRpb25JblNlY29uZHMoKSk7Cit9CisKK2lubGluZSB1bnNpZ25lZCBT
ZWN1cmVUZXh0VGltZXI6OnRha2VPZmZzZXRBZnRlckxhc3RUeXBlZENoYXJhY3RlcigpCit7Cisg
ICAgdW5zaWduZWQgb2Zmc2V0ID0gbV9vZmZzZXRBZnRlckxhc3RUeXBlZENoYXJhY3RlcjsKKyAg
ICBtX29mZnNldEFmdGVyTGFzdFR5cGVkQ2hhcmFjdGVyID0gMDsKKyAgICByZXR1cm4gb2Zmc2V0
OworfQorCit2b2lkIFNlY3VyZVRleHRUaW1lcjo6ZmlyZWQoKQoreworICAgIEFTU0VSVChzZWN1
cmVUZXh0VGltZXJzKCkuZ2V0KCZtX3JlbmRlcmVyKSA9PSB0aGlzKTsKKyAgICBtX29mZnNldEFm
dGVyTGFzdFR5cGVkQ2hhcmFjdGVyID0gMDsKKyAgICBtX3JlbmRlcmVyLnNldFRleHQobV9yZW5k
ZXJlci50ZXh0KCksIHRydWUgLyogZm9yY2luZyBzZXR0aW5nIHRleHQgYXMgaXQgbWF5IGJlIG1h
c2tlZCBsYXRlciAqLyk7Cit9CisKIHN0YXRpYyBIYXNoTWFwPGNvbnN0IFJlbmRlclRleHQqLCBT
dHJpbmc+JiBvcmlnaW5hbFRleHRNYXAoKQogewogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxI
YXNoTWFwPGNvbnN0IFJlbmRlclRleHQqLCBTdHJpbmc+PiBtYXA7CkBAIC0yNjUsOCArMjgwLDcg
QEAgdm9pZCBSZW5kZXJUZXh0OjpyZW1vdmVBbmREZXN0cm95VGV4dEJveGVzKCkKIAogdm9pZCBS
ZW5kZXJUZXh0Ojp3aWxsQmVEZXN0cm95ZWQoKQogewotICAgIGlmIChTZWN1cmVUZXh0VGltZXIq
IHNlY3VyZVRleHRUaW1lciA9IGdTZWN1cmVUZXh0VGltZXJzID8gZ1NlY3VyZVRleHRUaW1lcnMt
PnRha2UodGhpcykgOiAwKQotICAgICAgICBkZWxldGUgc2VjdXJlVGV4dFRpbWVyOworICAgIHNl
Y3VyZVRleHRUaW1lcnMoKS5yZW1vdmUodGhpcyk7CiAKICAgICByZW1vdmVBbmREZXN0cm95VGV4
dEJveGVzKCk7CiAgICAgUmVuZGVyT2JqZWN0Ojp3aWxsQmVEZXN0cm95ZWQoKTsKQEAgLTEwNDQs
MzAgKzEwNTgsMjggQEAgdm9pZCBSZW5kZXJUZXh0OjpzZXRSZW5kZXJlZFRleHQoY29uc3QgU3Ry
aW5nJiB0ZXh0KQogCiAgICAgYXBwbHlUZXh0VHJhbnNmb3JtKHN0eWxlKCksIG1fdGV4dCwgcHJl
dmlvdXNDaGFyYWN0ZXIoKSk7CiAKLSAgICAvLyBXZSB1c2UgdGhlIHNhbWUgY2hhcmFjdGVycyBo
ZXJlIGFzIGZvciBsaXN0IG1hcmtlcnMuCi0gICAgLy8gU2VlIHRoZSBsaXN0TWFya2VyVGV4dCBm
dW5jdGlvbiBpbiBSZW5kZXJMaXN0TWFya2VyLmNwcC4KICAgICBzd2l0Y2ggKHN0eWxlKCkudGV4
dFNlY3VyaXR5KCkpIHsKICAgICBjYXNlIFRTTk9ORToKICAgICAgICAgYnJlYWs7CisjaWYgIVBM
QVRGT1JNKElPUykKKyAgICAvLyBXZSB1c2UgdGhlIHNhbWUgY2hhcmFjdGVycyBoZXJlIGFzIGZv
ciBsaXN0IG1hcmtlcnMuCisgICAgLy8gU2VlIHRoZSBsaXN0TWFya2VyVGV4dCBmdW5jdGlvbiBp
biBSZW5kZXJMaXN0TWFya2VyLmNwcC4KICAgICBjYXNlIFRTQ0lSQ0xFOgotI2lmIFBMQVRGT1JN
KElPUykKLSAgICAgICAgc2VjdXJlVGV4dChibGFja0NpcmNsZSk7Ci0jZWxzZQogICAgICAgICBz
ZWN1cmVUZXh0KHdoaXRlQnVsbGV0KTsKLSNlbmRpZgogICAgICAgICBicmVhazsKICAgICBjYXNl
IFRTRElTQzoKLSNpZiBQTEFURk9STShJT1MpCi0gICAgICAgIHNlY3VyZVRleHQoYmxhY2tDaXJj
bGUpOwotI2Vsc2UKICAgICAgICAgc2VjdXJlVGV4dChidWxsZXQpOwotI2VuZGlmCiAgICAgICAg
IGJyZWFrOwogICAgIGNhc2UgVFNTUVVBUkU6Ci0jaWYgUExBVEZPUk0oSU9TKQotICAgICAgICBz
ZWN1cmVUZXh0KGJsYWNrQ2lyY2xlKTsKLSNlbHNlCiAgICAgICAgIHNlY3VyZVRleHQoYmxhY2tT
cXVhcmUpOworICAgICAgICBicmVhazsKKyNlbHNlCisgICAgLy8gRklYTUU6IFdoeSB0aGlzIHF1
aXJrIG9uIGlPUz8KKyAgICBjYXNlIFRTQ0lSQ0xFOgorICAgIGNhc2UgVFNESVNDOgorICAgIGNh
c2UgVFNTUVVBUkU6CisgICAgICAgIHNlY3VyZVRleHQoYmxhY2tDaXJjbGUpOworICAgICAgICBi
cmVhazsKICNlbmRpZgogICAgIH0KIApAQCAtMTA4NSwyNiArMTA5NywzNiBAQCB2b2lkIFJlbmRl
clRleHQ6OnNldFJlbmRlcmVkVGV4dChjb25zdCBTdHJpbmcmIHRleHQpCiAgICAgfQogfQogCi12
b2lkIFJlbmRlclRleHQ6OnNlY3VyZVRleHQoVUNoYXIgbWFzaykKK3ZvaWQgUmVuZGVyVGV4dDo6
c2VjdXJlVGV4dChVQ2hhciBtYXNraW5nQ2hhcmFjdGVyKQogewotICAgIGlmICghdGV4dExlbmd0
aCgpKQorICAgIC8vIFRoaXMgaGlkZXMgdGhlIHRleHQgYnkgcmVwbGFjaW5nIGFsbCB0aGUgY2hh
cmFjdGVycyB3aXRoIHRoZSBtYXNraW5nIGNoYXJhY3Rlci4KKyAgICAvLyBPZmZzZXRzIHdpdGhp
biB0aGUgaGlkZGVuIHRleHQgaGF2ZSB0byBtYXRjaCBvZmZzZXRzIHdpdGhpbiB0aGUgb3JpZ2lu
YWwgdGV4dAorICAgIC8vIHRvIGhhbmRsZSB0aGluZ3MgbGlrZSBjYXJldHMgYW5kIHNlbGVjdGlv
biwgc28gdGhpcyB3b24ndCB3b3JrIHJpZ2h0IGlmIGFueQorICAgIC8vIG9mIHRoZSBjaGFyYWN0
ZXJzIGFyZSBzdXJyb2dhdGUgcGFpcnMgb3IgY29tYmluaW5nIG1hcmtzLiBUaHVzLCB0aGlzIGZ1
bmN0aW9uCisgICAgLy8gZG9lcyBub3QgYXR0ZW1wdCB0byBoYW5kbGUgZWl0aGVyIG9mIHRob3Nl
LgorCisgICAgdW5zaWduZWQgbGVuZ3RoID0gdGV4dExlbmd0aCgpOworICAgIGlmICghbGVuZ3Ro
KQogICAgICAgICByZXR1cm47CiAKLSAgICBpbnQgbGFzdFR5cGVkQ2hhcmFjdGVyT2Zmc2V0VG9S
ZXZlYWwgPSAtMTsKLSAgICBTdHJpbmcgcmV2ZWFsZWRUZXh0OwotICAgIFNlY3VyZVRleHRUaW1l
ciogc2VjdXJlVGV4dFRpbWVyID0gZ1NlY3VyZVRleHRUaW1lcnMgPyBnU2VjdXJlVGV4dFRpbWVy
cy0+Z2V0KHRoaXMpIDogbnVsbHB0cjsKLSAgICBpZiAoc2VjdXJlVGV4dFRpbWVyICYmIHNlY3Vy
ZVRleHRUaW1lci0+aXNBY3RpdmUoKSkgewotICAgICAgICBsYXN0VHlwZWRDaGFyYWN0ZXJPZmZz
ZXRUb1JldmVhbCA9IHNlY3VyZVRleHRUaW1lci0+bGFzdFR5cGVkQ2hhcmFjdGVyT2Zmc2V0KCk7
Ci0gICAgICAgIGlmIChsYXN0VHlwZWRDaGFyYWN0ZXJPZmZzZXRUb1JldmVhbCA+PSAwKQotICAg
ICAgICAgICAgcmV2ZWFsZWRUZXh0ID0gbV90ZXh0LnN1YnN0cmluZyhsYXN0VHlwZWRDaGFyYWN0
ZXJPZmZzZXRUb1JldmVhbCwgMSk7Ci0gICAgfQorICAgIFVDaGFyIGNoYXJhY3RlclRvUmV2ZWFs
ID0gMDsKKyAgICB1bnNpZ25lZCByZXZlYWxlZENoYXJhY3RlcnNPZmZzZXQ7CiAKLSAgICBtX3Rl
eHQuZmlsbChtYXNrKTsKLSAgICBpZiAobGFzdFR5cGVkQ2hhcmFjdGVyT2Zmc2V0VG9SZXZlYWwg
Pj0gMCkgewotICAgICAgICBtX3RleHQucmVwbGFjZShsYXN0VHlwZWRDaGFyYWN0ZXJPZmZzZXRU
b1JldmVhbCwgMSwgcmV2ZWFsZWRUZXh0KTsKLSAgICAgICAgLy8gbV90ZXh0IG1heSBiZSB1cGRh
dGVkIGxhdGVyIGJlZm9yZSB0aW1lciBmaXJlcy4gV2UgaW52YWxpZGF0ZSB0aGUgbGFzdFR5cGVk
Q2hhcmFjdGVyT2Zmc2V0IHRvIGF2b2lkIGluY29uc2lzdGVuY3kuCi0gICAgICAgIHNlY3VyZVRl
eHRUaW1lci0+aW52YWxpZGF0ZSgpOworICAgIGlmIChTZWN1cmVUZXh0VGltZXIqIHRpbWVyID0g
c2VjdXJlVGV4dFRpbWVycygpLmdldCh0aGlzKSkgeworICAgICAgICAvLyBXZSB0YWtlIHRoZSBv
ZmZzZXQgb3V0IG9mIHRoZSB0aW1lciB0byBtYWtlIHRoaXMgb25lLXNob3QuIFdlIGNvdW50IG9u
IHRoaXMgYmVpbmcgY2FsbGVkIG9ubHkgb25jZS4KKyAgICAgICAgLy8gSWYgaXQncyBjYWxsZWQg
YSBzZWNvbmQgdGltZSB3ZSBhc3N1bWUgdGhlIHRleHQgaXMgZGlmZmVyZW50IGFuZCBhIGNoYXJh
Y3RlciBzaG91bGQgbm90IGJlIHJldmVhbGVkLgorICAgICAgICByZXZlYWxlZENoYXJhY3RlcnNP
ZmZzZXQgPSB0aW1lci0+dGFrZU9mZnNldEFmdGVyTGFzdFR5cGVkQ2hhcmFjdGVyKCk7CisgICAg
ICAgIGlmIChyZXZlYWxlZENoYXJhY3RlcnNPZmZzZXQgJiYgcmV2ZWFsZWRDaGFyYWN0ZXJzT2Zm
c2V0IDw9IGxlbmd0aCkKKyAgICAgICAgICAgIGNoYXJhY3RlclRvUmV2ZWFsID0gbV90ZXh0Wy0t
cmV2ZWFsZWRDaGFyYWN0ZXJzT2Zmc2V0XTsKICAgICB9CisKKyAgICBVQ2hhciogY2hhcmFjdGVy
czsKKyAgICBtX3RleHQgPSBTdHJpbmc6OmNyZWF0ZVVuaW5pdGlhbGl6ZWQobGVuZ3RoLCBjaGFy
YWN0ZXJzKTsKKworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkKKyAg
ICAgICAgY2hhcmFjdGVyc1tpXSA9IG1hc2tpbmdDaGFyYWN0ZXI7CisgICAgaWYgKGNoYXJhY3Rl
clRvUmV2ZWFsKQorICAgICAgICBjaGFyYWN0ZXJzW3JldmVhbGVkQ2hhcmFjdGVyc09mZnNldF0g
PSBjaGFyYWN0ZXJUb1JldmVhbDsKIH0KIAogdm9pZCBSZW5kZXJUZXh0OjpzZXRUZXh0KGNvbnN0
IFN0cmluZyYgdGV4dCwgYm9vbCBmb3JjZSkKQEAgLTE1MzcsMTcgKzE1NTksMTQgQEAgYm9vbCBS
ZW5kZXJUZXh0Ojpjb21wdXRlQ2FuVXNlU2ltcGxlRm9udENvZGVQYXRoKCkgY29uc3QKICAgICBy
ZXR1cm4gRm9udDo6Y2hhcmFjdGVyUmFuZ2VDb2RlUGF0aChjaGFyYWN0ZXJzMTYoKSwgbGVuZ3Ro
KCkpID09IEZvbnQ6OlNpbXBsZTsKIH0KIAotdm9pZCBSZW5kZXJUZXh0Ojptb21lbnRhcmlseVJl
dmVhbExhc3RUeXBlZENoYXJhY3Rlcih1bnNpZ25lZCBsYXN0VHlwZWRDaGFyYWN0ZXJPZmZzZXQp
Cit2b2lkIFJlbmRlclRleHQ6Om1vbWVudGFyaWx5UmV2ZWFsTGFzdFR5cGVkQ2hhcmFjdGVyKHVu
c2lnbmVkIG9mZnNldEFmdGVyTGFzdFR5cGVkQ2hhcmFjdGVyKQogewotICAgIGlmICghZ1NlY3Vy
ZVRleHRUaW1lcnMpCi0gICAgICAgIGdTZWN1cmVUZXh0VGltZXJzID0gbmV3IFNlY3VyZVRleHRU
aW1lck1hcDsKLQotICAgIFNlY3VyZVRleHRUaW1lciogc2VjdXJlVGV4dFRpbWVyID0gZ1NlY3Vy
ZVRleHRUaW1lcnMtPmdldCh0aGlzKTsKLSAgICBpZiAoIXNlY3VyZVRleHRUaW1lcikgewotICAg
ICAgICBzZWN1cmVUZXh0VGltZXIgPSBuZXcgU2VjdXJlVGV4dFRpbWVyKHRoaXMpOwotICAgICAg
ICBnU2VjdXJlVGV4dFRpbWVycy0+YWRkKHRoaXMsIHNlY3VyZVRleHRUaW1lcik7Ci0gICAgfQot
ICAgIHNlY3VyZVRleHRUaW1lci0+cmVzdGFydFdpdGhOZXdUZXh0KGxhc3RUeXBlZENoYXJhY3Rl
ck9mZnNldCk7CisgICAgaWYgKHN0eWxlKCkudGV4dFNlY3VyaXR5KCkgPT0gVFNOT05FKQorICAg
ICAgICByZXR1cm47CisgICAgYXV0byYgc2VjdXJlVGV4dFRpbWVyID0gc2VjdXJlVGV4dFRpbWVy
cygpLmFkZCh0aGlzLCBudWxscHRyKS5pdGVyYXRvci0+dmFsdWU7CisgICAgaWYgKCFzZWN1cmVU
ZXh0VGltZXIpCisgICAgICAgIHNlY3VyZVRleHRUaW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8U2Vj
dXJlVGV4dFRpbWVyPigqdGhpcyk7CisgICAgc2VjdXJlVGV4dFRpbWVyLT5yZXN0YXJ0KG9mZnNl
dEFmdGVyTGFzdFR5cGVkQ2hhcmFjdGVyKTsKIH0KIAogU3RyaW5nVmlldyBSZW5kZXJUZXh0Ojpz
dHJpbmdWaWV3KGludCBzdGFydCwgaW50IHN0b3ApIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRleHQuaAppbmRleCA2NTliMWMxMjc0ZmYzNTUzNWJiODViZDZhMjdiMDAxYzQ5Yzlm
MWIxLi40M2U0MGJjNmRkZGJlMDE2NzQ0MjZhYjM0ZTIyNzAxZTVkYmJmMDdhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0LmgKQEAgLTEzOCw4ICsxMzgsNyBAQCBwdWJsaWM6CiAK
ICAgICBib29sIGNvbnRhaW5zUmV2ZXJzZWRUZXh0KCkgY29uc3QgeyByZXR1cm4gbV9jb250YWlu
c1JldmVyc2VkVGV4dDsgfQogCi0gICAgYm9vbCBpc1NlY3VyZSgpIGNvbnN0IHsgcmV0dXJuIHN0
eWxlKCkudGV4dFNlY3VyaXR5KCkgIT0gVFNOT05FOyB9Ci0gICAgdm9pZCBtb21lbnRhcmlseVJl
dmVhbExhc3RUeXBlZENoYXJhY3Rlcih1bnNpZ25lZCBsYXN0VHlwZWRDaGFyYWN0ZXJPZmZzZXQp
OworICAgIHZvaWQgbW9tZW50YXJpbHlSZXZlYWxMYXN0VHlwZWRDaGFyYWN0ZXIodW5zaWduZWQg
b2Zmc2V0QWZ0ZXJMYXN0VHlwZWRDaGFyYWN0ZXIpOwogCiAgICAgSW5saW5lVGV4dEJveCogZmlu
ZE5leHRJbmxpbmVUZXh0Qm94KGludCBvZmZzZXQsIGludCYgcG9zKSBjb25zdCB7IHJldHVybiBt
X2xpbmVCb3hlcy5maW5kTmV4dChvZmZzZXQsIHBvcyk7IH0KIAo=
</data>
<flag name="review"
          id="268803"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>