<?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>221488</bug_id>
          
          <creation_ts>2021-02-05 10:30:47 -0800</creation_ts>
          <short_desc>WebGL IPC messages are delivered out of order</short_desc>
          <delta_ts>2021-02-10 14:40:42 -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>WebGL</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=221566</see_also>
          <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>
          <dependson>221396</dependson>
          <blocked>217211</blocked>
    
    <blocked>219641</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Kimmo Kinnunen">kkinnunen</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>dino</cc>
    
    <cc>kbr</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1726159</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-05 10:30:47 -0800</bug_when>
    <thetext>WebGL IPC messages are delivered out of order

Sync messages are delivered before earlier async messages, if some other WebKit part waits on sync replies.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1726169</commentid>
    <comment_count>1</comment_count>
      <attachid>419430</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-05 10:37:34 -0800</bug_when>
    <thetext>Created attachment 419430
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1726309</commentid>
    <comment_count>2</comment_count>
      <attachid>419430</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2021-02-05 16:02:15 -0800</bug_when>
    <thetext>Comment on attachment 419430
Patch

Looks good to me. (The EWS failures are all failures to apply the patch.) Chromium had this exact bug in its IPC subsystem some time ago and I recall working on the fix. r+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1726708</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2021-02-08 11:03:37 -0800</bug_when>
    <thetext>I&apos;m somewhat skeptical that this won&apos;t introduce deadlocks in more cases than you are warning about in the comment. I won&apos;t have an opportunity to think it through, so feel free to ignore my comment, but it may be good to give Chris some time to comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1726711</commentid>
    <comment_count>4</comment_count>
      <attachid>419430</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-02-08 11:11:10 -0800</bug_when>
    <thetext>Comment on attachment 419430
Patch

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

&gt; Source/WebKit/Platform/IPC/Connection.h:77
&gt; +    // Note: causes timeouts if all parties in the synchronous message chain send synchronous messages with this flag

This does not look right to me. We forbid re-entrency from IPC in the WebProcess due to security bugs. Therefore, the other process must always break the deadlock by dispatching when waiting for a sync message.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1726731</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-02-08 12:20:08 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #4)
&gt; Comment on attachment 419430 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=419430&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/Platform/IPC/Connection.h:77
&gt; &gt; +    // Note: causes timeouts if all parties in the synchronous message chain send synchronous messages with this flag
&gt; 
&gt; This does not look right to me. We forbid re-entrency from IPC in the
&gt; WebProcess due to security bugs. Therefore, the other process must always
&gt; break the deadlock by dispatching when waiting for a sync message.

This is the logic that prevents WebProcess re-entrency on IPC:
    // Use this flag to force synchronous messages to be treated as asynchronous messages in the WebProcess.
    // Otherwise, the WebProcess would process incoming synchronous IPC while waiting for a synchronous IPC
    // reply from the Network process, which would be unsafe.
    m_connection-&gt;setOnlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage(true);

We are currently missing this logic on the GPUProcess connection but this is a bug that I will fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727701</commentid>
    <comment_count>6</comment_count>
      <attachid>419886</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-02-10 12:13:54 -0800</bug_when>
    <thetext>Created attachment 419886
new approach</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727726</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-10 13:04:20 -0800</bug_when>
    <thetext>Committed r272680: &lt;https://commits.webkit.org/r272680&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 419886.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727814</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-10 14:40:42 -0800</bug_when>
    <thetext>&lt;rdar://problem/74206986&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419430</attachid>
            <date>2021-02-05 10:37:34 -0800</date>
            <delta_ts>2021-02-10 12:13:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221488-20210205203733.patch</filename>
            <type>text/plain</type>
            <size>4765</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNDA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI1MGI3YjEyZWQ5ZWQ1ODE1
YTFhYmNkZjQyMWJiNTQ2MjllZTZiMzguLjE0OTZhZDczYWUyMWU2MTUxMTBiYmVmODYzNzk4MWFm
MGM2NDFmM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDItMDUgIEtpbW1vIEtp
bm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBJUEMgbWVzc2Fn
ZXMgYXJlIGRlbGl2ZXJlZCBvdXQgb2Ygb3JkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTQ4OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFN5bmMgbWVzc2FnZXMgYXJlIGRlbGl2ZXJlZCBiZWZvcmUg
ZWFybGllciBhc3luYyBtZXNzYWdlcywgaWYgc29tZSBvdGhlcgorICAgICAgICBXZWJLaXQgcGFy
dCB3YWl0cyBvbiBzeW5jIHJlcGxpZXMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBtYWtlcyB0
aGUgZXhpc3RpbmcgV2ViR0wgLS11c2UtZ3B1LXByb2Nlc3MgdGVzdHMgYSBiaXQgbGVzcworICAg
ICAgICBmbGFrZXkuCisKKyAgICAgICAgKiBQbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHA6Cisg
ICAgICAgIChJUEM6OkNvbm5lY3Rpb246OnNlbmRTeW5jTWVzc2FnZSk6CisgICAgICAgICogUGxh
dGZvcm0vSVBDL0Nvbm5lY3Rpb24uaDoKKyAgICAgICAgQWRkIG5ldyBTZW5kU3luY09wdGlvbjog
RGlzcGF0Y2hJblJlY2VpdmVPcmRlci4gVGhpcyBtZWFucyB0aGF0IHN5bmNocm9ub3VzIG1lc3Nh
Z2VzCisgICAgICAgIGJlIGRpc3BhdGNoZWQgaW4gbm9ybWFsIG9yZGVyLCBlLmcuIHRoZWlyIHJl
Y2VpdmUgb3JkZXIuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVH
cmFwaGljc0NvbnRleHRHTFByb3h5Lmg6CisgICAgICAgIFVzZSB0aGUgZmxhZy4KKwogMjAyMS0w
Mi0wNCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkgc2hvdWxkIHN1cHBvcnQgbG9zaW5nIHRoZSBjb250
ZXh0IGFuZCBzaG91bGQgbG9zZSB0aGUgY29udGV4dCBvbiB0aW1lb3V0cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcAppbmRleCBjZGFmMTNhNWQ2YjJhZDBhNTE3Njdi
ZGMwNTExOTBkMWVmYzQ2YzJlLi45MWFlNmZhNzc0N2NhNGM0NmQzNDM5OTgzYTkzOTIwMWI0MjA2
Y2I2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcApAQCAtNjEw
LDkgKzYxMCwxNSBAQCBzdGQ6OnVuaXF1ZV9wdHI8RGVjb2Rlcj4gQ29ubmVjdGlvbjo6c2VuZFN5
bmNNZXNzYWdlKHVpbnQ2NF90IHN5bmNSZXF1ZXN0SUQsIHN0ZAogICAgICsrbV9pblNlbmRTeW5j
Q291bnQ7CiAKICAgICAvLyBGaXJzdCBzZW5kIHRoZSBtZXNzYWdlLgotICAgIE9wdGlvblNldDxT
ZW5kT3B0aW9uPiBzZW5kT3B0aW9ucyA9IElQQzo6U2VuZE9wdGlvbjo6RGlzcGF0Y2hNZXNzYWdl
RXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5OwotICAgIGlmIChzZW5kU3luY09wdGlvbnMuY29u
dGFpbnMoU2VuZFN5bmNPcHRpb246OkZvcmNlRGlzcGF0Y2hXaGVuRGVzdGluYXRpb25Jc1dhaXRp
bmdGb3JVbmJvdW5kZWRTeW5jUmVwbHkpKQotICAgICAgICBzZW5kT3B0aW9ucyA9IHNlbmRPcHRp
b25zIHwgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVuV2hlbldhaXRpbmdGb3JV
bmJvdW5kZWRTeW5jUmVwbHk7CisgICAgT3B0aW9uU2V0PFNlbmRPcHRpb24+IHNlbmRPcHRpb25z
OworICAgIGlmIChzZW5kU3luY09wdGlvbnMuY29udGFpbnMoU2VuZFN5bmNPcHRpb246OkRpc3Bh
dGNoSW5SZWNlaXZlT3JkZXIpKQorICAgICAgICBBU1NFUlQoIXNlbmRTeW5jT3B0aW9ucy5jb250
YWlucyhTZW5kU3luY09wdGlvbjo6Rm9yY2VEaXNwYXRjaFdoZW5EZXN0aW5hdGlvbklzV2FpdGlu
Z0ZvclVuYm91bmRlZFN5bmNSZXBseSkpOworICAgIGVsc2UgeworICAgICAgICBzZW5kT3B0aW9u
cyA9IHNlbmRPcHRpb25zIHwgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVuV2hl
bldhaXRpbmdGb3JTeW5jUmVwbHk7CisgICAgICAgIGlmIChzZW5kU3luY09wdGlvbnMuY29udGFp
bnMoU2VuZFN5bmNPcHRpb246OkZvcmNlRGlzcGF0Y2hXaGVuRGVzdGluYXRpb25Jc1dhaXRpbmdG
b3JVbmJvdW5kZWRTeW5jUmVwbHkpKQorICAgICAgICAgICAgc2VuZE9wdGlvbnMgPSBzZW5kT3B0
aW9ucyB8IElQQzo6U2VuZE9wdGlvbjo6RGlzcGF0Y2hNZXNzYWdlRXZlbldoZW5XYWl0aW5nRm9y
VW5ib3VuZGVkU3luY1JlcGx5OworICAgIH0KKwogCiAgICAgYXV0byBtZXNzYWdlTmFtZSA9IGVu
Y29kZXItPm1lc3NhZ2VOYW1lKCk7CiAgICAgc2VuZE1lc3NhZ2UoV1RGTW92ZShlbmNvZGVyKSwg
c2VuZE9wdGlvbnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29u
bmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5oCmluZGV4
IGMwNGFjZjg4MDQ1MTM2YTVkNDA5ZWIwMTc3MDgzZmI2NzZkNDE1NjAuLjYxMDNjOGQ4MTBkN2M3
ODJhY2ZkY2MzNGEzYjZhMmI4ZmQ2NjEwMGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxh
dGZvcm0vSVBDL0Nvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9D
b25uZWN0aW9uLmgKQEAgLTY5LDYgKzY5LDE0IEBAIGVudW0gY2xhc3MgU2VuZFN5bmNPcHRpb24g
ewogICAgIEluZm9ybVBsYXRmb3JtUHJvY2Vzc1dpbGxTdXNwZW5kID0gMSA8PCAwLAogICAgIFVz
ZUZ1bGx5U3luY2hyb25vdXNNb2RlRm9yVGVzdGluZyA9IDEgPDwgMSwKICAgICBGb3JjZURpc3Bh
dGNoV2hlbkRlc3RpbmF0aW9uSXNXYWl0aW5nRm9yVW5ib3VuZGVkU3luY1JlcGx5ID0gMSA8PCAy
LAorCisgICAgLy8gRGlzcGF0Y2hlcyB0aGUgc2VudCBzeW5jaHJvbm91cyBtZXNzYWdlIGFuZCBh
bGwgcHJldmlvdXMgYW5kIGZ1dHVyZSBhc3luY2hyb25vdXMgbWVzc2FnZXMgaW4gdGhlIG9yZGVy
IHRoZXkgYXJlIHJlY2VpdmVkLgorICAgIC8vIFdpdGhvdXQgdGhpcyBmbGFnLCB0aGUgc3luY2hy
b25vdXMgbWVzc2FnZSBtaWdodCBiZSByZW9yZGVyZWQgcmVsYXRpdmUgdG8gYXN5bmNocm9ub3Vz
IG1lc3NhZ2VzIGR1cmluZworICAgIC8vIHN5bmNocm9ub3VzIG1lc3NhZ2UgcmVwbHkgd2FpdC4K
KyAgICAvLyBNdXR1YWxseSBleGNsdXNpdmUgd2l0aCBGb3JjZURpc3BhdGNoV2hlbkRlc3RpbmF0
aW9uSXNXYWl0aW5nRm9yVW5ib3VuZGVkU3luY1JlcGx5LgorICAgIC8vIE5vdGU6IGNhdXNlcyB0
aW1lb3V0cyBpZiBhbGwgcGFydGllcyBpbiB0aGUgc3luY2hyb25vdXMgbWVzc2FnZSBjaGFpbiBz
ZW5kIHN5bmNocm9ub3VzIG1lc3NhZ2VzIHdpdGggdGhpcyBmbGFnCisgICAgLy8gdG8gZWFjaCBv
dGhlci4KKyAgICBEaXNwYXRjaEluUmVjZWl2ZU9yZGVyID0gMSA8PCAzLAogfTsKIAogZW51bSBj
bGFzcyBXYWl0Rm9yT3B0aW9uIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvZ3JhcGhpY3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
LmgKaW5kZXggNTQxNzJmYjBiNTE2YjYzOWU5NTEwOTY0ZGEzYWRkYWQ2NmEyM2FmMy4uNjEwZWIw
MTViNTEzZWRmY2YxMTgwOTMxNmZhODJiZTRjNGQ3YjVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFw
aGljc0NvbnRleHRHTFByb3h5LmgKQEAgLTM0MCw3ICszNDAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAg
dGVtcGxhdGU8dHlwZW5hbWUgVD4KICAgICBXQVJOX1VOVVNFRF9SRVRVUk4gSVBDOjpDb25uZWN0
aW9uOjpTZW5kU3luY1Jlc3VsdCBzZW5kU3luYyhUJiYgbWVzc2FnZSwgdHlwZW5hbWUgVDo6UmVw
bHkmJiByZXBseSkKICAgICB7Ci0gICAgICAgIHJldHVybiBjb25uZWN0aW9uKCkuc2VuZFN5bmMo
V1RGTW92ZShtZXNzYWdlKSwgV1RGTW92ZShyZXBseSksIG1fZ3JhcGhpY3NDb250ZXh0R0xJZGVu
dGlmaWVyLnRvVUludDY0KCksIGRlZmF1bHRTZW5kVGltZW91dCk7CisgICAgICAgIHJldHVybiBj
b25uZWN0aW9uKCkuc2VuZFN5bmMoV1RGTW92ZShtZXNzYWdlKSwgV1RGTW92ZShyZXBseSksIG1f
Z3JhcGhpY3NDb250ZXh0R0xJZGVudGlmaWVyLnRvVUludDY0KCksIGRlZmF1bHRTZW5kVGltZW91
dCwgSVBDOjpTZW5kU3luY09wdGlvbjo6RGlzcGF0Y2hJblJlY2VpdmVPcmRlcik7CiAgICAgfQog
ICAgIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fZ3B1UHJv
Y2Vzc0Nvbm5lY3Rpb24tPmNvbm5lY3Rpb24oKTsgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419886</attachid>
            <date>2021-02-10 12:13:54 -0800</date>
            <delta_ts>2021-02-10 13:04:21 -0800</delta_ts>
            <desc>new approach</desc>
            <filename>bug-221488-20210210221352.patch</filename>
            <type>text/plain</type>
            <size>3939</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyNTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGY4ZGJiYjM4M2RiYzA4NTc5
MjJiMjFlODQ5ODA4NTJlM2I2YzVkMTMuLmEwZDI3OWVkNzQxYWEzYjVmODMyNmY2ZDI0MjQ3MzUy
NTU2ZDdiZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDItMDUgIEtpbW1vIEtp
bm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBXZWJHTCBJUEMgbWVzc2Fn
ZXMgYXJlIGRlbGl2ZXJlZCBvdXQgb2Ygb3JkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTQ4OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFN5bmMgbWVzc2FnZXMgYXJlIGRlbGl2ZXJlZCBiZWZvcmUg
ZWFybGllciBhc3luYyBtZXNzYWdlcywgaWYgc29tZSBvdGhlcgorICAgICAgICBXZWJLaXQgcGFy
dCB3YWl0cyBvbiBzeW5jIHJlcGxpZXMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBtYWtlcyB0
aGUgZXhpc3RpbmcgV2ViR0wgLS11c2UtZ3B1LXByb2Nlc3MgdGVzdHMgYSBiaXQgbGVzcworICAg
ICAgICBmbGFrZXkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVH
cmFwaGljc0NvbnRleHRHTFByb3h5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvZ3JhcGhp
Y3MvUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5jcHA6CisgICAgICAgIE1hcmsgYWxsIGFz
eW5jIG1lc3NhZ2VzIHdpdGggSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVuV2hl
bldhaXRpbmdGb3JTeW5jUmVwbHkuCisgICAgICAgIFRoZXJlIGFyZSBubyBtZXNzYWdlcyBpbiB0
aGUgcmVjZWl2ZXIgbWVzc2FnZSBsaXN0IHRoYXQgd291bGQgbWFrZSBzZW5zZQorICAgICAgICB0
byBiZSBkZWxpdmVyZWQgb3V0IG9mIG9yZGVyLgorCiAyMDIxLTAyLTA0ICBLaW1tbyBLaW5udW5l
biAgPGtraW5udW5lbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3RlR3JhcGhpY3NDb250ZXh0
R0xQcm94eSBzaG91bGQgc3VwcG9ydCBsb3NpbmcgdGhlIGNvbnRleHQgYW5kIHNob3VsZCBsb3Nl
IHRoZSBjb250ZXh0IG9uIHRpbWVvdXRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1vdGVHcmFwaGljc0NvbnRleHRH
TFByb3h5LmNwcAppbmRleCAwZTUzZWYzN2Q1ZDBiYmQ2YjY1ODZhNGY4MzVmOTFjMjZkZGE2NjIw
Li42OWZhYzM3OGRkMjBmYWM1NDRiNjI0MjA2OTg4OTdiMDExN2Q3NTJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4
dEdMUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvZ3JhcGhpY3Mv
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eS5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgUmVtb3Rl
R3JhcGhpY3NDb250ZXh0R0xQcm94eTo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eShHUFVQ
cm9jZXNzQ29ubmVjdGlvbiYKIHsKICAgICBncHVQcm9jZXNzQ29ubmVjdGlvbi5hZGRDbGllbnQo
KnRoaXMpOwogICAgIGdwdVByb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VSZWNlaXZlck1hcCgpLmFk
ZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6
bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllci50b1VJ
bnQ2NCgpLCAqdGhpcyk7Ci0gICAgY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OkdQVUNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OkNyZWF0ZUdyYXBoaWNzQ29udGV4dEdMKGF0dHJzLCBtX2dyYXBo
aWNzQ29udGV4dEdMSWRlbnRpZmllciksIDApOworICAgIGNvbm5lY3Rpb24oKS5zZW5kKE1lc3Nh
Z2VzOjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpDcmVhdGVHcmFwaGljc0NvbnRleHRHTChh
dHRycywgbV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpLCAwLCBJUEM6OlNlbmRPcHRpb246
OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseSk7CiB9CiAKIFJlbW90
ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6On5SZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5KCkK
QEAgLTIzNSw3ICsyMzUsNyBAQCB2b2lkIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHk6OmRp
c2Nvbm5lY3RHcHVQcm9jZXNzSWZOZWVkZWQoKQogICAgIGlmIChhdXRvIGdwdVByb2Nlc3NDb25u
ZWN0aW9uID0gc3RkOjpleGNoYW5nZShtX2dwdVByb2Nlc3NDb25uZWN0aW9uLCBudWxscHRyKSkg
ewogICAgICAgICBncHVQcm9jZXNzQ29ubmVjdGlvbi0+cmVtb3ZlQ2xpZW50KCp0aGlzKTsKICAg
ICAgICAgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24tPm1lc3NhZ2VSZWNlaXZlck1hcCgpLnJlbW92ZU1l
c3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eTo6bWVz
c2FnZVJlY2VpdmVyTmFtZSgpLCBtX2dyYXBoaWNzQ29udGV4dEdMSWRlbnRpZmllci50b1VJbnQ2
NCgpKTsKLSAgICAgICAgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24tPmNvbm5lY3Rpb24oKS5zZW5kKE1l
c3NhZ2VzOjpHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpSZWxlYXNlR3JhcGhpY3NDb250ZXh0
R0wobV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIpLCAwKTsKKyAgICAgICAgZ3B1UHJvY2Vz
c0Nvbm5lY3Rpb24tPmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpHUFVDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpSZWxlYXNlR3JhcGhpY3NDb250ZXh0R0wobV9ncmFwaGljc0NvbnRleHRHTElk
ZW50aWZpZXIpLCAwLCBJUEM6OlNlbmRPcHRpb246OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2Fp
dGluZ0ZvclN5bmNSZXBseSk7CiAgICAgfQogICAgIEFTU0VSVChpc0NvbnRleHRMb3N0KCkpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9ncmFwaGljcy9SZW1v
dGVHcmFwaGljc0NvbnRleHRHTFByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuaAppbmRleCA1NDE3MmZiMGI1
MTZiNjM5ZTk1MTA5NjRkYTNhZGRhZDY2YTIzYWYzLi4wYTczOGI0NmVlMjU3N2FhMjliMjM4OWFm
YTY0NzMyZjEyNTY4Nzk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHkuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL2dyYXBoaWNzL1JlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHku
aApAQCAtMzM0LDcgKzMzNCw3IEBAIHByb3RlY3RlZDoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBU
PgogICAgIFdBUk5fVU5VU0VEX1JFVFVSTiBib29sIHNlbmQoVCYmIG1lc3NhZ2UpCiAgICAgewot
ICAgICAgICBjb25uZWN0aW9uKCkuc2VuZChXVEZNb3ZlKG1lc3NhZ2UpLCBtX2dyYXBoaWNzQ29u
dGV4dEdMSWRlbnRpZmllci50b1VJbnQ2NCgpKTsKKyAgICAgICAgY29ubmVjdGlvbigpLnNlbmQo
V1RGTW92ZShtZXNzYWdlKSwgbV9ncmFwaGljc0NvbnRleHRHTElkZW50aWZpZXIudG9VSW50NjQo
KSwgSVBDOjpTZW5kT3B0aW9uOjpEaXNwYXRjaE1lc3NhZ2VFdmVuV2hlbldhaXRpbmdGb3JTeW5j
UmVwbHkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgICAgdGVtcGxhdGU8dHlwZW5h
bWUgVD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>