<?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>204890</bug_id>
          
          <creation_ts>2019-12-05 08:39:41 -0800</creation_ts>
          <short_desc>Optimize IPC::Connection::SyncMessageState methods</short_desc>
          <delta_ts>2019-12-05 16:01:45 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1595812</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-05 08:39:41 -0800</bug_when>
    <thetext>Optimize IPC::Connection::SyncMessageState methods. We are seeing lock contention on some (app launch) benchmarks, resulting in the main thread yielding for 10ms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1595817</commentid>
    <comment_count>1</comment_count>
      <attachid>384907</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-05 08:48:44 -0800</bug_when>
    <thetext>Created attachment 384907
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1596074</commentid>
    <comment_count>2</comment_count>
      <attachid>384907</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-05 15:56:18 -0800</bug_when>
    <thetext>Comment on attachment 384907
Patch

Clearing flags on attachment: 384907

Committed r253183: &lt;https://trac.webkit.org/changeset/253183&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1596075</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-05 15:56:19 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1596078</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-12-05 15:57:22 -0800</bug_when>
    <thetext>&lt;rdar://problem/57680980&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>384907</attachid>
            <date>2019-12-05 08:48:44 -0800</date>
            <delta_ts>2019-12-05 15:56:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204890-20191205084844.patch</filename>
            <type>text/plain</type>
            <size>9755</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzMTUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJiNzVhZjZkMjE0MDU3NDM3
YzQ3YTdjNmNmMWEwYzgwMWRmYjY5NTguLjgyYTdjNmM5ZThhOGE5OTlhZTZhZTE0MjAyMzNmY2M1
MjY1ODlmNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAKKzIwMTktMTItMDUgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBPcHRpbWl6ZSBJUEM6OkNvbm5lY3Rp
b246OlN5bmNNZXNzYWdlU3RhdGUgbWV0aG9kcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA0ODkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgT3B0aW1pemUgSVBDOjpDb25uZWN0aW9uOjpTeW5jTWVzc2Fn
ZVN0YXRlIG1ldGhvZHMuIFdlIGFyZSBzZWVpbmcgbG9jayBjb250ZW50aW9uIG9uIHNvbWUgKGFw
cCBsYXVuY2gpCisgICAgICAgIGJlbmNobWFya3MsIHJlc3VsdGluZyBpbiB0aGUgbWFpbiB0aHJl
YWQgeWllbGRpbmcgZm9yIDEwbXMuCisKKyAgICAgICAgKiBQbGF0Zm9ybS9JUEMvQ29ubmVjdGlv
bi5jcHA6CisgICAgICAgIChJUEM6OkNvbm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGUpOiBNYWtl
IGNvbnN0cnVjdG9yIHByaXZhdGUgc2luY2UgdGhpcyBpcyBhIHNpbmdsZXRvbiBjbGFzcy4KKyAg
ICAgICAgKElQQzo6Q29ubmVjdGlvbjo6Q29ubmVjdGlvbkFuZEluY29taW5nTWVzc2FnZSk6IEFk
ZCBjb252ZW5pZW5jZSBkaXNwYXRjaCgpIG1ldGhvZC4KKworICAgICAgICAoSVBDOjpDb25uZWN0
aW9uOjpTeW5jTWVzc2FnZVN0YXRlOjpwcm9jZXNzSW5jb21pbmdNZXNzYWdlKToKKyAgICAgICAg
RHJvcCB0aGUgbG9jayBhcyBlYXJseSBhcyBwb3NzaWJsZSwgKmJlZm9yZSogY2FsbGluZyBSdW5M
b29wOjptYWluKCkuZGlzcGF0Y2goKS4KKworICAgICAgICAoSVBDOjpDb25uZWN0aW9uOjpTeW5j
TWVzc2FnZVN0YXRlOjpkaXNwYXRjaE1lc3NhZ2VzKToKKyAgICAgICAgRHJvcCBhbGxvd2VkQ29u
bmVjdGlvbiBwYXJhbWV0ZXIgYW5kIHNpbXBsaWZ5IHRoZSBjb2RlIGEgbG90IGFzIGEgcmVzdWx0
LiBPbmx5IGRpc3BhdGNoTWVzc2FnZXNBbmRSZXNldERpZFNjaGVkdWxlRGlzcGF0Y2hNZXNzYWdl
c0ZvckNvbm5lY3Rpb24oKQorICAgICAgICBuZWVkZWQgdGhlIHBhc3MgYW4gYWxsb3dlZENvbm5l
Y3Rpb24gYnV0IGhhdmluZyBkaXNwYXRjaE1lc3NhZ2VzQW5kUmVzZXREaWRTY2hlZHVsZURpc3Bh
dGNoTWVzc2FnZXNGb3JDb25uZWN0aW9uKCkgY2FsbCBkaXNwYXRjaE1lc3NhZ2VzKCkgd2FzCisg
ICAgICAgIGluZWZmaWNpZW50IHNpbmNlIGl0IHdvdWxkIGNhdXNlIHVzIHRvIGdyYWIgdGhlIGxv
Y2sgaW4gZGlzcGF0Y2hNZXNzYWdlc0FuZFJlc2V0RGlkU2NoZWR1bGVEaXNwYXRjaE1lc3NhZ2Vz
Rm9yQ29ubmVjdGlvbigpIHRvIHVwZGF0ZQorICAgICAgICBtX2RpZFNjaGVkdWxlRGlzcGF0Y2hN
ZXNzYWdlc1dvcmtTZXQsIHRoZW4gcmVsZWFzZSBpdCwgdGhlbiBncmFiIHRoZSBsb2NrIGFnYWlu
IGluIGRpc3BhdGNoTWVzc2FnZXMoKSBmb3IgbV9tZXNzYWdlc1RvRGlzcGF0Y2hXaGlsZVdhaXRp
bmdGb3JTeW5jUmVwbHkuCisKKyAgICAgICAgKElQQzo6Q29ubmVjdGlvbjo6U3luY01lc3NhZ2VT
dGF0ZTo6ZGlzcGF0Y2hNZXNzYWdlc0FuZFJlc2V0RGlkU2NoZWR1bGVEaXNwYXRjaE1lc3NhZ2Vz
Rm9yQ29ubmVjdGlvbik6CisgICAgICAgIEdyYWIgdGhlIGxvY2sgb25seSBvbmNlIHRvIHVwZGF0
ZSBtX2RpZFNjaGVkdWxlRGlzcGF0Y2hNZXNzYWdlc1dvcmtTZXQgYW5kIG1fbWVzc2FnZXNUb0Rp
c3BhdGNoV2hpbGVXYWl0aW5nRm9yU3luY1JlcGx5LCBpbnN0ZWFkIG9mIGRvaW5nIGl0IGluIDIK
KyAgICAgICAgc2VwYXJhdGUgc3RlcHMsIGVhY2ggb25lIHRha2luZyB0aGUgbG9jay4KKworICAg
ICAgICAoSVBDOjpDb25uZWN0aW9uOjp3YWl0Rm9yTWVzc2FnZSk6CisgICAgICAgIChJUEM6OkNv
bm5lY3Rpb246OndhaXRGb3JTeW5jUmVwbHkpOgorICAgICAgICAoSVBDOjpDb25uZWN0aW9uOjpk
aXNwYXRjaFN5bmNNZXNzYWdlKToKKyAgICAgICAgc3RvcCBwYXNzaW5nIGEgbnVsbCBhbGxvd2Vk
Q29ubmVjdGlvbiB3aGVuIGNhbGxpbmcgZGlzcGF0Y2hNZXNzYWdlcygpLgorCiAyMDE5LTEyLTA1
ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR0xp
Yl0gRGlzcGxheSBHU3RyZWFtZXIgdmVyc2lvbiBpbiBhYm91dDpncHUgcGFnZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcAppbmRleCA4ODkwNGFjN2VhNDMzNmZiMDVj
YWRjNjNhZTJiZmFlYTZkMzE4MzQ0Li4zOTE4MWQ4YjRjZDNmMDliZTU2ZmNlMWJmMzViMjFjZjZh
ZDY4Yzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcApAQCAt
NzYsNyArNzYsNiBAQCBjbGFzcyBDb25uZWN0aW9uOjpTeW5jTWVzc2FnZVN0YXRlIHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgU3luY01lc3NhZ2VTdGF0ZSYgc2luZ2xldG9uKCk7CiAKLSAgICBTeW5j
TWVzc2FnZVN0YXRlKCk7CiAgICAgflN5bmNNZXNzYWdlU3RhdGUoKSA9IGRlbGV0ZTsKIAogICAg
IHZvaWQgd2FrZVVwQ2xpZW50UnVuTG9vcCgpCkBAIC05MywxMiArOTIsMTUgQEAgcHVibGljOgog
ICAgIC8vIHdhaXRpbmcgZm9yIGEgcmVwbHkgdG8gYSBzeW5jaHJvbm91cyBtZXNzYWdlLgogICAg
IGJvb2wgcHJvY2Vzc0luY29taW5nTWVzc2FnZShDb25uZWN0aW9uJiwgc3RkOjp1bmlxdWVfcHRy
PERlY29kZXI+Jik7CiAKLSAgICAvLyBEaXNwYXRjaCBwZW5kaW5nIHN5bmMgbWVzc2FnZXMuIGlm
IGFsbG93ZWRDb25uZWN0aW9uIGlzIG5vdCBudWxsLCB3aWxsIG9ubHkgZGlzcGF0Y2ggbWVzc2Fn
ZXMKLSAgICAvLyBmcm9tIHRoYXQgY29ubmVjdGlvbiBhbmQgcHV0IHRoZSBvdGhlciBtZXNzYWdl
cyBiYWNrIGluIHRoZSBxdWV1ZS4KLSAgICB2b2lkIGRpc3BhdGNoTWVzc2FnZXMoQ29ubmVjdGlv
biogYWxsb3dlZENvbm5lY3Rpb24pOworICAgIC8vIERpc3BhdGNoIHBlbmRpbmcgc3luYyBtZXNz
YWdlcy4KKyAgICB2b2lkIGRpc3BhdGNoTWVzc2FnZXMoKTsKIAogcHJpdmF0ZToKLSAgICB2b2lk
IGRpc3BhdGNoTWVzc2FnZUFuZFJlc2V0RGlkU2NoZWR1bGVEaXNwYXRjaE1lc3NhZ2VzRm9yQ29u
bmVjdGlvbihDb25uZWN0aW9uJik7CisgICAgZnJpZW5kIGNsYXNzIExhenlOZXZlckRlc3Ryb3ll
ZDxDb25uZWN0aW9uOjpTeW5jTWVzc2FnZVN0YXRlPjsKKyAgICBTeW5jTWVzc2FnZVN0YXRlKCkg
PSBkZWZhdWx0OworCisgICAgLy8gRGlzcGF0Y2ggcGVuZGluZyBzeW5jIG1lc3NhZ2VzIGZvciBn
aXZlbiBjb25uZWN0aW9uLgorICAgIHZvaWQgZGlzcGF0Y2hNZXNzYWdlc0FuZFJlc2V0RGlkU2No
ZWR1bGVEaXNwYXRjaE1lc3NhZ2VzRm9yQ29ubmVjdGlvbihDb25uZWN0aW9uJik7CiAKICAgICBC
aW5hcnlTZW1hcGhvcmUgbV93YWl0Rm9yU3luY1JlcGx5U2VtYXBob3JlOwogCkBAIC0xMTEsNiAr
MTEzLDExIEBAIHByaXZhdGU6CiAgICAgc3RydWN0IENvbm5lY3Rpb25BbmRJbmNvbWluZ01lc3Nh
Z2UgewogICAgICAgICBSZWY8Q29ubmVjdGlvbj4gY29ubmVjdGlvbjsKICAgICAgICAgc3RkOjp1
bmlxdWVfcHRyPERlY29kZXI+IG1lc3NhZ2U7CisKKyAgICAgICAgdm9pZCBkaXNwYXRjaCgpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIGNvbm5lY3Rpb24tPmRpc3BhdGNoTWVzc2FnZShXVEZNb3Zl
KG1lc3NhZ2UpKTsKKyAgICAgICAgfQogICAgIH07CiAgICAgVmVjdG9yPENvbm5lY3Rpb25BbmRJ
bmNvbWluZ01lc3NhZ2U+IG1fbWVzc2FnZXNUb0Rpc3BhdGNoV2hpbGVXYWl0aW5nRm9yU3luY1Jl
cGx5OwogfTsKQEAgLTEyNywxMCArMTM0LDYgQEAgQ29ubmVjdGlvbjo6U3luY01lc3NhZ2VTdGF0
ZSYgQ29ubmVjdGlvbjo6U3luY01lc3NhZ2VTdGF0ZTo6c2luZ2xldG9uKCkKICAgICByZXR1cm4g
c3luY01lc3NhZ2VTdGF0ZTsKIH0KIAotQ29ubmVjdGlvbjo6U3luY01lc3NhZ2VTdGF0ZTo6U3lu
Y01lc3NhZ2VTdGF0ZSgpCi17Ci19Ci0KIGJvb2wgQ29ubmVjdGlvbjo6U3luY01lc3NhZ2VTdGF0
ZTo6cHJvY2Vzc0luY29taW5nTWVzc2FnZShDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBzdGQ6OnVu
aXF1ZV9wdHI8RGVjb2Rlcj4mIG1lc3NhZ2UpCiB7CiAgICAgc3dpdGNoIChtZXNzYWdlLT5zaG91
bGREaXNwYXRjaE1lc3NhZ2VXaGVuV2FpdGluZ0ZvclN5bmNSZXBseSgpKSB7CkBAIC0xNDQsMTgg
KzE0NywxNyBAQCBib29sIENvbm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6OnByb2Nlc3NJbmNv
bWluZ01lc3NhZ2UoQ29ubmVjdGlvbiYgY29ubmVjdGlvbgogICAgICAgICBicmVhazsKICAgICB9
CiAKLSAgICBDb25uZWN0aW9uQW5kSW5jb21pbmdNZXNzYWdlIGNvbm5lY3Rpb25BbmRJbmNvbWlu
Z01lc3NhZ2UgeyBjb25uZWN0aW9uLCBXVEZNb3ZlKG1lc3NhZ2UpIH07Ci0KKyAgICBib29sIHNo
b3VsZERpc3BhdGNoOwogICAgIHsKICAgICAgICAgc3RkOjpsb2NrX2d1YXJkPExvY2s+IGxvY2so
bV9tdXRleCk7Ci0gICAgICAgIAotICAgICAgICBpZiAobV9kaWRTY2hlZHVsZURpc3BhdGNoTWVz
c2FnZXNXb3JrU2V0LmFkZCgmY29ubmVjdGlvbikuaXNOZXdFbnRyeSkgewotICAgICAgICAgICAg
UnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRDb25uZWN0aW9uID0gUmVm
PENvbm5lY3Rpb24+KGNvbm5lY3Rpb24pXSgpIG11dGFibGUgewotICAgICAgICAgICAgICAgIGRp
c3BhdGNoTWVzc2FnZUFuZFJlc2V0RGlkU2NoZWR1bGVEaXNwYXRjaE1lc3NhZ2VzRm9yQ29ubmVj
dGlvbihwcm90ZWN0ZWRDb25uZWN0aW9uKTsKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9Cisg
ICAgICAgIHNob3VsZERpc3BhdGNoID0gbV9kaWRTY2hlZHVsZURpc3BhdGNoTWVzc2FnZXNXb3Jr
U2V0LmFkZCgmY29ubmVjdGlvbikuaXNOZXdFbnRyeTsKKyAgICAgICAgbV9tZXNzYWdlc1RvRGlz
cGF0Y2hXaGlsZVdhaXRpbmdGb3JTeW5jUmVwbHkuYXBwZW5kKENvbm5lY3Rpb25BbmRJbmNvbWlu
Z01lc3NhZ2UgeyBjb25uZWN0aW9uLCBXVEZNb3ZlKG1lc3NhZ2UpIH0pOworICAgIH0KIAotICAg
ICAgICBtX21lc3NhZ2VzVG9EaXNwYXRjaFdoaWxlV2FpdGluZ0ZvclN5bmNSZXBseS5hcHBlbmQo
V1RGTW92ZShjb25uZWN0aW9uQW5kSW5jb21pbmdNZXNzYWdlKSk7CisgICAgaWYgKHNob3VsZERp
c3BhdGNoKSB7CisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbdGhpcywgcHJvdGVj
dGVkQ29ubmVjdGlvbiA9IG1ha2VSZWYoY29ubmVjdGlvbildKCkgbXV0YWJsZSB7CisgICAgICAg
ICAgICBkaXNwYXRjaE1lc3NhZ2VzQW5kUmVzZXREaWRTY2hlZHVsZURpc3BhdGNoTWVzc2FnZXNG
b3JDb25uZWN0aW9uKHByb3RlY3RlZENvbm5lY3Rpb24pOworICAgICAgICB9KTsKICAgICB9CiAK
ICAgICB3YWtlVXBDbGllbnRSdW5Mb29wKCk7CkBAIC0xNjMsMjggKzE2NSwzOCBAQCBib29sIENv
bm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6OnByb2Nlc3NJbmNvbWluZ01lc3NhZ2UoQ29ubmVj
dGlvbiYgY29ubmVjdGlvbgogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIENvbm5lY3Rpb246
OlN5bmNNZXNzYWdlU3RhdGU6OmRpc3BhdGNoTWVzc2FnZXMoQ29ubmVjdGlvbiogYWxsb3dlZENv
bm5lY3Rpb24pCit2b2lkIENvbm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6OmRpc3BhdGNoTWVz
c2FnZXMoKQogewogICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKICAgICBWZWN0b3I8
Q29ubmVjdGlvbkFuZEluY29taW5nTWVzc2FnZT4gbWVzc2FnZXNUb0Rpc3BhdGNoV2hpbGVXYWl0
aW5nRm9yU3luY1JlcGx5OworICAgIHsKKyAgICAgICAgc3RkOjpsb2NrX2d1YXJkPExvY2s+IGxv
Y2sobV9tdXRleCk7CisgICAgICAgIG1fbWVzc2FnZXNUb0Rpc3BhdGNoV2hpbGVXYWl0aW5nRm9y
U3luY1JlcGx5LnN3YXAobWVzc2FnZXNUb0Rpc3BhdGNoV2hpbGVXYWl0aW5nRm9yU3luY1JlcGx5
KTsKKyAgICB9CisKKyAgICBmb3IgKGF1dG8mIGNvbm5lY3Rpb25BbmRJbmNvbWluZ01lc3NhZ2Ug
OiBtZXNzYWdlc1RvRGlzcGF0Y2hXaGlsZVdhaXRpbmdGb3JTeW5jUmVwbHkpCisgICAgICAgIGNv
bm5lY3Rpb25BbmRJbmNvbWluZ01lc3NhZ2UuZGlzcGF0Y2goKTsKK30KIAordm9pZCBDb25uZWN0
aW9uOjpTeW5jTWVzc2FnZVN0YXRlOjpkaXNwYXRjaE1lc3NhZ2VzQW5kUmVzZXREaWRTY2hlZHVs
ZURpc3BhdGNoTWVzc2FnZXNGb3JDb25uZWN0aW9uKENvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCit7
CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKworICAgIFZlY3RvcjxDb25uZWN0aW9u
QW5kSW5jb21pbmdNZXNzYWdlPiBtZXNzYWdlc1RvRGlzcGF0Y2hXaGlsZVdhaXRpbmdGb3JTeW5j
UmVwbHk7CiAgICAgewogICAgICAgICBzdGQ6OmxvY2tfZ3VhcmQ8TG9jaz4gbG9jayhtX211dGV4
KTsKKyAgICAgICAgQVNTRVJUKG1fZGlkU2NoZWR1bGVEaXNwYXRjaE1lc3NhZ2VzV29ya1NldC5j
b250YWlucygmY29ubmVjdGlvbikpOworICAgICAgICBtX2RpZFNjaGVkdWxlRGlzcGF0Y2hNZXNz
YWdlc1dvcmtTZXQucmVtb3ZlKCZjb25uZWN0aW9uKTsKICAgICAgICAgbV9tZXNzYWdlc1RvRGlz
cGF0Y2hXaGlsZVdhaXRpbmdGb3JTeW5jUmVwbHkuc3dhcChtZXNzYWdlc1RvRGlzcGF0Y2hXaGls
ZVdhaXRpbmdGb3JTeW5jUmVwbHkpOwogICAgIH0KIAogICAgIFZlY3RvcjxDb25uZWN0aW9uQW5k
SW5jb21pbmdNZXNzYWdlPiBtZXNzYWdlc1RvUHV0QmFjazsKLQogICAgIGZvciAoYXV0byYgY29u
bmVjdGlvbkFuZEluY29taW5nTWVzc2FnZSA6IG1lc3NhZ2VzVG9EaXNwYXRjaFdoaWxlV2FpdGlu
Z0ZvclN5bmNSZXBseSkgewotICAgICAgICBpZiAoYWxsb3dlZENvbm5lY3Rpb24gJiYgYWxsb3dl
ZENvbm5lY3Rpb24gIT0gY29ubmVjdGlvbkFuZEluY29taW5nTWVzc2FnZS5jb25uZWN0aW9uLnB0
cigpKSB7Ci0gICAgICAgICAgICAvLyBUaGlzIGluY29taW5nIG1lc3NhZ2UgYmVsb25ncyB0byBh
bm90aGVyIGNvbm5lY3Rpb24gYW5kIHdlIGRvbid0IHdhbnQgdG8gZGlzcGF0Y2ggaXQgbm93Ci0g
ICAgICAgICAgICAvLyBzbyBtYXJrIGl0IHRvIGJlIHB1dCBiYWNrIGluIHRoZSBtZXNzYWdlIHF1
ZXVlLgorICAgICAgICBpZiAoJmNvbm5lY3Rpb24gPT0gY29ubmVjdGlvbkFuZEluY29taW5nTWVz
c2FnZS5jb25uZWN0aW9uLnB0cigpKQorICAgICAgICAgICAgY29ubmVjdGlvbkFuZEluY29taW5n
TWVzc2FnZS5kaXNwYXRjaCgpOworICAgICAgICBlbHNlCiAgICAgICAgICAgICBtZXNzYWdlc1Rv
UHV0QmFjay5hcHBlbmQoV1RGTW92ZShjb25uZWN0aW9uQW5kSW5jb21pbmdNZXNzYWdlKSk7Ci0g
ICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotCi0gICAgICAgIGNvbm5lY3Rpb25BbmRJ
bmNvbWluZ01lc3NhZ2UuY29ubmVjdGlvbi0+ZGlzcGF0Y2hNZXNzYWdlKFdURk1vdmUoY29ubmVj
dGlvbkFuZEluY29taW5nTWVzc2FnZS5tZXNzYWdlKSk7CiAgICAgfQogCiAgICAgaWYgKCFtZXNz
YWdlc1RvUHV0QmFjay5pc0VtcHR5KCkpIHsKQEAgLTE5NCwxNyArMjA2LDYgQEAgdm9pZCBDb25u
ZWN0aW9uOjpTeW5jTWVzc2FnZVN0YXRlOjpkaXNwYXRjaE1lc3NhZ2VzKENvbm5lY3Rpb24qIGFs
bG93ZWRDb25uZWN0aW8KICAgICB9CiB9CiAKLXZvaWQgQ29ubmVjdGlvbjo6U3luY01lc3NhZ2VT
dGF0ZTo6ZGlzcGF0Y2hNZXNzYWdlQW5kUmVzZXREaWRTY2hlZHVsZURpc3BhdGNoTWVzc2FnZXNG
b3JDb25uZWN0aW9uKENvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCi17Ci0gICAgewotICAgICAgICBz
dGQ6OmxvY2tfZ3VhcmQ8TG9jaz4gbG9jayhtX211dGV4KTsKLSAgICAgICAgQVNTRVJUKG1fZGlk
U2NoZWR1bGVEaXNwYXRjaE1lc3NhZ2VzV29ya1NldC5jb250YWlucygmY29ubmVjdGlvbikpOwot
ICAgICAgICBtX2RpZFNjaGVkdWxlRGlzcGF0Y2hNZXNzYWdlc1dvcmtTZXQucmVtb3ZlKCZjb25u
ZWN0aW9uKTsKLSAgICB9Ci0KLSAgICBkaXNwYXRjaE1lc3NhZ2VzKCZjb25uZWN0aW9uKTsKLX0K
LQogLy8gUmVwcmVzZW50cyBhIHN5bmMgcmVxdWVzdCBmb3Igd2hpY2ggd2UncmUgd2FpdGluZyBv
biBhIHJlcGx5Lgogc3RydWN0IENvbm5lY3Rpb246OlBlbmRpbmdTeW5jUmVwbHkgewogICAgIC8v
IFRoZSByZXF1ZXN0IElELgpAQCAtNTA2LDcgKzUwNyw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxEZWNv
ZGVyPiBDb25uZWN0aW9uOjp3YWl0Rm9yTWVzc2FnZShTdHJpbmdSZWZlcmVuY2UgbWVzc2FnZVJl
Y2VpCiAgICAgLy8gTm93IHdhaXQgZm9yIGl0IHRvIGJlIHNldC4KICAgICB3aGlsZSAodHJ1ZSkg
ewogICAgICAgICAvLyBIYW5kbGUgYW55IG1lc3NhZ2VzIHRoYXQgYXJlIGJsb2NrZWQgb24gYSBy
ZXNwb25zZSBmcm9tIHVzLgotICAgICAgICBTeW5jTWVzc2FnZVN0YXRlOjpzaW5nbGV0b24oKS5k
aXNwYXRjaE1lc3NhZ2VzKG51bGxwdHIpOworICAgICAgICBTeW5jTWVzc2FnZVN0YXRlOjpzaW5n
bGV0b24oKS5kaXNwYXRjaE1lc3NhZ2VzKCk7CiAKICAgICAgICAgc3RkOjp1bmlxdWVfbG9jazxM
b2NrPiBsb2NrKG1fd2FpdEZvck1lc3NhZ2VNdXRleCk7CiAKQEAgLTU4Nyw3ICs1ODgsNyBAQCBz
dGQ6OnVuaXF1ZV9wdHI8RGVjb2Rlcj4gQ29ubmVjdGlvbjo6d2FpdEZvclN5bmNSZXBseSh1aW50
NjRfdCBzeW5jUmVxdWVzdElELCBTZQogICAgIGJvb2wgdGltZWRPdXQgPSBmYWxzZTsKICAgICB3
aGlsZSAoIXRpbWVkT3V0KSB7CiAgICAgICAgIC8vIEZpcnN0LCBjaGVjayBpZiB3ZSBoYXZlIGFu
eSBtZXNzYWdlcyB0aGF0IHdlIG5lZWQgdG8gcHJvY2Vzcy4KLSAgICAgICAgU3luY01lc3NhZ2VT
dGF0ZTo6c2luZ2xldG9uKCkuZGlzcGF0Y2hNZXNzYWdlcyhudWxscHRyKTsKKyAgICAgICAgU3lu
Y01lc3NhZ2VTdGF0ZTo6c2luZ2xldG9uKCkuZGlzcGF0Y2hNZXNzYWdlcygpOwogICAgICAgICAK
ICAgICAgICAgewogICAgICAgICAgICAgTG9ja0hvbGRlciBsb2NrZXIobV9zeW5jUmVwbHlTdGF0
ZU11dGV4KTsKQEAgLTg2OCw3ICs4NjksNyBAQCB2b2lkIENvbm5lY3Rpb246OmRpc3BhdGNoU3lu
Y01lc3NhZ2UoRGVjb2RlciYgZGVjb2RlcikKICAgICAgICAgUkVMRUFTRV9BU1NFUlQodW53cmFw
cGVkRGVjb2Rlcik7CiAgICAgICAgIHByb2Nlc3NJbmNvbWluZ01lc3NhZ2UoV1RGTW92ZSh1bndy
YXBwZWREZWNvZGVyKSk7CiAKLSAgICAgICAgU3luY01lc3NhZ2VTdGF0ZTo6c2luZ2xldG9uKCku
ZGlzcGF0Y2hNZXNzYWdlcyhudWxscHRyKTsKKyAgICAgICAgU3luY01lc3NhZ2VTdGF0ZTo6c2lu
Z2xldG9uKCkuZGlzcGF0Y2hNZXNzYWdlcygpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8vIEhh
bmQgb2ZmIGJvdGggdGhlIGRlY29kZXIgYW5kIGVuY29kZXIgdG8gdGhlIGNsaWVudC4KICAgICAg
ICAgbV9jbGllbnQuZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKCp0aGlzLCBkZWNvZGVyLCByZXBseUVu
Y29kZXIpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>