<?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>194511</bug_id>
          
          <creation_ts>2019-02-11 13:12:07 -0800</creation_ts>
          <short_desc>Branch-Only: Use Async message infrastructure for storageAccess API</short_desc>
          <delta_ts>2019-02-14 12:29:22 -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="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1504972</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-02-11 13:12:07 -0800</bug_when>
    <thetext>Back-port the async message handling implementation of the StorageAccess API methods.

The generated Async message handling code does a better job of handling the bookkeeping and error handling of cross-process message passing, and gives us fewer opportunities to make errors leading to dropped messages or sending messages multiple times.

Update the StorageAccess API calls to use autogenerated message handlers since this improves stability and correctness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1504973</commentid>
    <comment_count>1</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-02-11 13:13:00 -0800</bug_when>
    <thetext>Note: This code was generated against the safari-607-branch, so likely will not apply to trunk (and therefore EWS).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1504974</commentid>
    <comment_count>2</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-02-11 13:17:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/40966400&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1504975</commentid>
    <comment_count>3</comment_count>
      <attachid>361706</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-02-11 13:19:46 -0800</bug_when>
    <thetext>Created attachment 361706
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1505031</commentid>
    <comment_count>4</comment_count>
      <attachid>361706</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-02-11 15:54:33 -0800</bug_when>
    <thetext>Comment on attachment 361706
Patch

r=me for the branch
Are all these happening on the main thread?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1505055</commentid>
    <comment_count>5</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-02-11 17:04:49 -0800</bug_when>
    <thetext>(In reply to Alex Christensen from comment #4)
&gt; Comment on attachment 361706 [details]
&gt; Patch
&gt; 
&gt; r=me for the branch
&gt; Are all these happening on the main thread?

Yes, although the code inside ResourceLoadStatistics dispatches to a background thread, before hopping back to main thread to respond.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>361706</attachid>
            <date>2019-02-11 13:19:46 -0800</date>
            <delta_ts>2019-02-11 15:54:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-194511-20190211131946.patch</filename>
            <type>text/plain</type>
            <size>10171</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDEyNzYpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMwIEBACisyMDE5LTAyLTExICBCcmVudCBGdWxn
aGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIEJyYW5jaC1Pbmx5OiBVc2UgQXN5
bmMgbWVzc2FnZSBpbmZyYXN0cnVjdHVyZSBmb3Igc3RvcmFnZUFjY2VzcyBBUEkKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NDUxMQorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNDA5NjY0MDA+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQmFjay1wb3J0IHRoZSB0cnVuayBhc3luYyBtZXNzYWdlIGhhbmRs
aW5nIGltcGxlbWVudGF0aW9uIG9mIHRoZSBTdG9yYWdlQWNjZXNzIEFQSSBtZXRob2RzLgorCisg
ICAgICAgIFRoZSBnZW5lcmF0ZWQgYXN5bmMgbWVzc2FnZSBoYW5kbGluZyBjb2RlIGRvZXMgYSBi
ZXR0ZXIgam9iIG9mIG1hbmFnaW5nIHRoZSBib29ra2VlcGluZyBhbmQgZXJyb3IgaGFuZGxpbmcK
KyAgICAgICAgb2YgY3Jvc3MtcHJvY2VzcyBtZXNzYWdlIHBhc3NpbmcsIGFuZCBnaXZlcyB1cyBm
ZXdlciBvcHBvcnR1bml0aWVzIHRvIG1ha2UgY29kaW5nIGVycm9ycyB0aGF0IG1pZ2h0IGxlYWQK
KyAgICAgICAgdG8gZHJvcHBlZCBtZXNzYWdlcyBvciBzZW5kaW5nIG1lc3NhZ2VzIG11bHRpcGxl
IHRpbWVzLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6aGFzU3RvcmFnZUFjY2Vzcyk6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2VQcm94eTo6cmVxdWVzdFN0b3JhZ2VBY2Nlc3MpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1l
c3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6aGFzU3RvcmFnZUFjY2Vzcyk6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OnJlcXVlc3RTdG9yYWdlQWNjZXNzKToKKyAgICAgICAgKFdlYktpdDo6bmV4
dFJlcXVlc3RTdG9yYWdlQWNjZXNzQ29udGV4dElkKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6c3RvcmFnZUFjY2Vzc1Jlc3BvbnNlKTogRGVsZXRlZC4KKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorCiAyMDE5LTAyLTA3ICBCYWJhayBTaGFmaWVpICA8YnNo
YWZpZWlAYXBwbGUuY29tPgogCiAgICAgICAgIENoZXJyeS1waWNrIHIyNDExNzEuIHJkYXI6Ly9w
cm9ibGVtLzQ3OTA4MTU2CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAJKHJldmlzaW9uIDI0MTI2NCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgyMzgsMTkgKzgyMzgsMTMgQEAgdm9pZCBX
ZWJQYWdlUHJveHk6OmxvYWRTeW5jaHJvbm91c1VSTFNjaAogfQogCiAjaWYgRU5BQkxFKFJFU09V
UkNFX0xPQURfU1RBVElTVElDUykKLXZvaWQgV2ViUGFnZVByb3h5OjpoYXNTdG9yYWdlQWNjZXNz
KFN0cmluZyYmIHN1YkZyYW1lSG9zdCwgU3RyaW5nJiYgdG9wRnJhbWVIb3N0LCB1aW50NjRfdCBm
cmFtZUlELCB1aW50NjRfdCB3ZWJQcm9jZXNzQ29udGV4dElkKQordm9pZCBXZWJQYWdlUHJveHk6
Omhhc1N0b3JhZ2VBY2Nlc3MoU3RyaW5nJiYgc3ViRnJhbWVIb3N0LCBTdHJpbmcmJiB0b3BGcmFt
ZUhvc3QsIHVpbnQ2NF90IGZyYW1lSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCiB7Ci0gICAgbV93ZWJzaXRlRGF0YVN0b3JlLT5oYXNTdG9yYWdl
QWNjZXNzKFdURk1vdmUoc3ViRnJhbWVIb3N0KSwgV1RGTW92ZSh0b3BGcmFtZUhvc3QpLCBmcmFt
ZUlELCBtX3BhZ2VJRCwgW3RoaXMsIHdlYlByb2Nlc3NDb250ZXh0SWRdIChib29sIGhhc0FjY2Vz
cykgewotICAgICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlN0b3JhZ2VB
Y2Nlc3NSZXNwb25zZShoYXNBY2Nlc3MsIHdlYlByb2Nlc3NDb250ZXh0SWQpLCBtX3BhZ2VJRCk7
Ci0gICAgfSk7CisgICAgbV93ZWJzaXRlRGF0YVN0b3JlLT5oYXNTdG9yYWdlQWNjZXNzKFdURk1v
dmUoc3ViRnJhbWVIb3N0KSwgV1RGTW92ZSh0b3BGcmFtZUhvc3QpLCBmcmFtZUlELCBtX3BhZ2VJ
RCwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6
cmVxdWVzdFN0b3JhZ2VBY2Nlc3MoU3RyaW5nJiYgc3ViRnJhbWVIb3N0LCBTdHJpbmcmJiB0b3BG
cmFtZUhvc3QsIHVpbnQ2NF90IGZyYW1lSUQsIHVpbnQ2NF90IHdlYlByb2Nlc3NDb250ZXh0SWQs
IGJvb2wgcHJvbXB0RW5hYmxlZCkKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0U3RvcmFnZUFj
Y2VzcyhTdHJpbmcmJiBzdWJGcmFtZUhvc3QsIFN0cmluZyYmIHRvcEZyYW1lSG9zdCwgdWludDY0
X3QgZnJhbWVJRCwgYm9vbCBwcm9tcHRFbmFibGVkLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJv
b2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewotICAgIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+IGNvbXBsZXRpb25IYW5kbGVyID0gW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVm
KCp0aGlzKSwgd2ViUHJvY2Vzc0NvbnRleHRJZF0gKGJvb2wgYWNjZXNzKSB7Ci0gICAgICAgIG1f
cHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U3RvcmFnZUFjY2Vzc1Jlc3BvbnNlKGFj
Y2Vzcywgd2ViUHJvY2Vzc0NvbnRleHRJZCksIG1fcGFnZUlEKTsKLSAgICB9OwotCiAgICAgbV93
ZWJzaXRlRGF0YVN0b3JlLT5yZXF1ZXN0U3RvcmFnZUFjY2VzcyhTdHJpbmcoc3ViRnJhbWVIb3N0
KSwgU3RyaW5nKHRvcEZyYW1lSG9zdCksIGZyYW1lSUQsIG1fcGFnZUlELCBwcm9tcHRFbmFibGVk
LCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBzdWJGcmFtZUhvc3QsIHRv
cEZyYW1lSG9zdCwgcHJvbXB0RW5hYmxlZCwgZnJhbWVJRCwgY29tcGxldGlvbkhhbmRsZXIgPSBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0gKFN0b3JhZ2VBY2Nlc3NTdGF0dXMgc3RhdHVzKSBt
dXRhYmxlIHsKICAgICAgICAgc3dpdGNoIChzdGF0dXMpIHsKICAgICAgICAgY2FzZSBTdG9yYWdl
QWNjZXNzU3RhdHVzOjpDYW5ub3RSZXF1ZXN0QWNjZXNzOgpJbmRleDogU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmgJKHJldmlzaW9uIDI0MTI2NCkKKysrIFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzgwLDggKzEzODAs
OCBAQCBwdWJsaWM6CiAjZW5kaWYKIAogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJ
Q1MpCi0gICAgdm9pZCBoYXNTdG9yYWdlQWNjZXNzKFN0cmluZyYmIHN1YkZyYW1lSG9zdCwgU3Ry
aW5nJiYgdG9wRnJhbWVIb3N0LCB1aW50NjRfdCBmcmFtZUlELCB1aW50NjRfdCB3ZWJQcm9jZXNz
Q29udGV4dElkKTsKLSAgICB2b2lkIHJlcXVlc3RTdG9yYWdlQWNjZXNzKFN0cmluZyYmIHN1YkZy
YW1lSG9zdCwgU3RyaW5nJiYgdG9wRnJhbWVIb3N0LCB1aW50NjRfdCBmcmFtZUlELCB1aW50NjRf
dCB3ZWJQcm9jZXNzQ29udGV4dElkLCBib29sIHByb21wdCk7CisgICAgdm9pZCBoYXNTdG9yYWdl
QWNjZXNzKFN0cmluZyYmIHN1YkZyYW1lSG9zdCwgU3RyaW5nJiYgdG9wRnJhbWVIb3N0LCB1aW50
NjRfdCBmcmFtZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2b2lk
IHJlcXVlc3RTdG9yYWdlQWNjZXNzKFN0cmluZyYmIHN1YkZyYW1lSG9zdCwgU3RyaW5nJiYgdG9w
RnJhbWVIb3N0LCB1aW50NjRfdCBmcmFtZUlELCBib29sIHByb21wdCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJik7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1F
TlQpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMu
aW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1l
c3NhZ2VzLmluCShyZXZpc2lvbiAyNDEyNjQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTUzNCw4ICs1MzQsOCBA
QCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogICAgIExvYWRTeW5jaHJvbm91c1VSTFNjaGVt
ZVRhc2soc3RydWN0IFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgcGFyYW1ldGVycykg
LT4gKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNl
RXJyb3IgZXJyb3IsIElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKSBEZWxheWVkCiAKICNpZiBFTkFC
TEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQotICAgIEhhc1N0b3JhZ2VBY2Nlc3MoU3RyaW5n
IHN1YkZyYW1lSG9zdCwgU3RyaW5nIHRvcEZyYW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwgdWlu
dDY0X3QgY29udGV4dElEKQotICAgIFJlcXVlc3RTdG9yYWdlQWNjZXNzKFN0cmluZyBzdWJGcmFt
ZUhvc3QsIFN0cmluZyB0b3BGcmFtZUhvc3QsIHVpbnQ2NF90IGZyYW1lSUQsIHVpbnQ2NF90IGNv
bnRleHRJRCwgYm9vbCBwcm9tcHQpCisgICAgSGFzU3RvcmFnZUFjY2VzcyhTdHJpbmcgc3ViRnJh
bWVIb3N0LCBTdHJpbmcgdG9wRnJhbWVIb3N0LCB1aW50NjRfdCBmcmFtZUlEKSAtPiAoYm9vbCBo
YXNBY2Nlc3MpIEFzeW5jCisgICAgUmVxdWVzdFN0b3JhZ2VBY2Nlc3MoU3RyaW5nIHN1YkZyYW1l
SG9zdCwgU3RyaW5nIHRvcEZyYW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwgYm9vbCBwcm9tcHQp
IC0+IChib29sIGdyYW50ZWRBY2Nlc3MpIEFzeW5jCiAjZW5kaWYKIAogI2lmIEVOQUJMRShBVFRB
Q0hNRU5UX0VMRU1FTlQpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcAkocmV2aXNpb24gMjQxMjY0KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYzMzEsNDAgKzYzMzEs
MTUgQEAgdm9pZCBXZWJQYWdlOjpmcmFtZUJlY2FtZVJlbW90ZSh1aW50NjRfdAogfQogCiAjaWYg
RU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKLXN0YXRpYyB1aW50NjRfdCBuZXh0UmVx
dWVzdFN0b3JhZ2VBY2Nlc3NDb250ZXh0SWQoKQordm9pZCBXZWJQYWdlOjpoYXNTdG9yYWdlQWNj
ZXNzKFN0cmluZyYmIHN1YkZyYW1lSG9zdCwgU3RyaW5nJiYgdG9wRnJhbWVIb3N0LCB1aW50NjRf
dCBmcmFtZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogewotICAgIHN0YXRpYyB1aW50NjRfdCBuZXh0Q29udGV4dElkID0gMDsKLSAgICByZXR1
cm4gKytuZXh0Q29udGV4dElkOwotfQotCi12b2lkIFdlYlBhZ2U6Omhhc1N0b3JhZ2VBY2Nlc3Mo
U3RyaW5nJiYgc3ViRnJhbWVIb3N0LCBTdHJpbmcmJiB0b3BGcmFtZUhvc3QsIHVpbnQ2NF90IGZy
YW1lSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2spCi17Ci0gICAg
YXV0byBjb250ZXh0SWQgPSBuZXh0UmVxdWVzdFN0b3JhZ2VBY2Nlc3NDb250ZXh0SWQoKTsKLSAg
ICBhdXRvIGFkZFJlc3VsdCA9IG1fc3RvcmFnZUFjY2Vzc1Jlc3BvbnNlQ2FsbGJhY2tNYXAuYWRk
KGNvbnRleHRJZCwgV1RGTW92ZShjYWxsYmFjaykpOwotICAgIEFTU0VSVChhZGRSZXN1bHQuaXNO
ZXdFbnRyeSk7Ci0gICAgaWYgKGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUpCi0gICAgICAgIHNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SGFzU3RvcmFnZUFjY2VzcyhXVEZNb3ZlKHN1YkZy
YW1lSG9zdCksIFdURk1vdmUodG9wRnJhbWVIb3N0KSwgZnJhbWVJRCwgY29udGV4dElkKSk7Ci0g
ICAgZWxzZQotICAgICAgICBjYWxsYmFjayhmYWxzZSk7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Okhhc1N0b3JhZ2VBY2Nlc3MoV1RGTW92ZShzdWJGcmFt
ZUhvc3QpLCBXVEZNb3ZlKHRvcEZyYW1lSG9zdCksIGZyYW1lSUQpLCBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSk7CiB9CiAgICAgCi12b2lkIFdlYlBhZ2U6OnJlcXVlc3RTdG9yYWdlQWNjZXNz
KFN0cmluZyYmIHN1YkZyYW1lSG9zdCwgU3RyaW5nJiYgdG9wRnJhbWVIb3N0LCB1aW50NjRfdCBm
cmFtZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKQordm9pZCBX
ZWJQYWdlOjpyZXF1ZXN0U3RvcmFnZUFjY2VzcyhTdHJpbmcmJiBzdWJGcmFtZUhvc3QsIFN0cmlu
ZyYmIHRvcEZyYW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBhdXRvIGNvbnRleHRJZCA9IG5l
eHRSZXF1ZXN0U3RvcmFnZUFjY2Vzc0NvbnRleHRJZCgpOwotICAgIGF1dG8gYWRkUmVzdWx0ID0g
bV9zdG9yYWdlQWNjZXNzUmVzcG9uc2VDYWxsYmFja01hcC5hZGQoY29udGV4dElkLCBXVEZNb3Zl
KGNhbGxiYWNrKSk7Ci0gICAgQVNTRVJUKGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKLSAgICBpZiAo
YWRkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSkgewotICAgICAgICBib29sIHByb21wdEVuYWJsZWQg
PSBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnN0b3JhZ2VBY2Nlc3NQ
cm9tcHRzRW5hYmxlZCgpOwotICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJl
cXVlc3RTdG9yYWdlQWNjZXNzKFdURk1vdmUoc3ViRnJhbWVIb3N0KSwgV1RGTW92ZSh0b3BGcmFt
ZUhvc3QpLCBmcmFtZUlELCBjb250ZXh0SWQsIHByb21wdEVuYWJsZWQpKTsKLSAgICB9IGVsc2UK
LSAgICAgICAgY2FsbGJhY2soZmFsc2UpOwotfQotCi12b2lkIFdlYlBhZ2U6OnN0b3JhZ2VBY2Nl
c3NSZXNwb25zZShib29sIHdhc0dyYW50ZWQsIHVpbnQ2NF90IGNvbnRleHRJZCkKLXsKLSAgICBh
dXRvIGNhbGxiYWNrID0gbV9zdG9yYWdlQWNjZXNzUmVzcG9uc2VDYWxsYmFja01hcC50YWtlKGNv
bnRleHRJZCk7Ci0gICAgQVNTRVJUKGNhbGxiYWNrKTsKLSAgICBjYWxsYmFjayh3YXNHcmFudGVk
KTsKKyAgICBib29sIHByb21wdEVuYWJsZWQgPSBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFy
ZWRGZWF0dXJlcygpLnN0b3JhZ2VBY2Nlc3NQcm9tcHRzRW5hYmxlZCgpOworICAgIHNlbmRXaXRo
QXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0U3RvcmFnZUFjY2VzcyhX
VEZNb3ZlKHN1YkZyYW1lSG9zdCksIFdURk1vdmUodG9wRnJhbWVIb3N0KSwgZnJhbWVJRCwgcHJv
bXB0RW5hYmxlZCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KICNlbmRpZgogICAg
IApJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAkocmV2
aXNpb24gMjQxMjY0KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTEwLDcgKzExMTAsNiBAQCBwdWJsaWM6CiAjaWYgRU5B
QkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICB2b2lkIGhhc1N0b3JhZ2VBY2Nlc3Mo
U3RyaW5nJiYgc3ViRnJhbWVIb3N0LCBTdHJpbmcmJiB0b3BGcmFtZUhvc3QsIHVpbnQ2NF90IGZy
YW1lSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2spOwogICAgIHZv
aWQgcmVxdWVzdFN0b3JhZ2VBY2Nlc3MoU3RyaW5nJiYgc3ViRnJhbWVIb3N0LCBTdHJpbmcmJiB0
b3BGcmFtZUhvc3QsIHVpbnQ2NF90IGZyYW1lSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYgY2FsbGJhY2spOwotICAgIHZvaWQgc3RvcmFnZUFjY2Vzc1Jlc3BvbnNlKGJvb2wgd2Fz
R3JhbnRlZCwgdWludDY0X3QgY29udGV4dElkKTsKICNlbmRpZgogCiAgICAgdm9pZCBzaG93U2hh
cmVTaGVldChXZWJDb3JlOjpTaGFyZURhdGFXaXRoUGFyc2VkVVJMJiwgV1RGOjpDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKTsKQEAgLTE3OTMsNyArMTc5Miw2IEBAIHBy
aXZhdGU6CiAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxXZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHk+PiBtX3NjaGVtZVRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwOwogICAgIEhhc2hNYXA8dWlu
dDY0X3QsIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSo+IG1faWRlbnRpZmllclRvVVJMU2NoZW1l
SGFuZGxlclByb3h5TWFwOwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwgV1RGOjpGdW5jdGlvbjx2
b2lkKGJvb2wgZ3JhbnRlZCk+PiBtX3N0b3JhZ2VBY2Nlc3NSZXNwb25zZUNhbGxiYWNrTWFwOwog
ICAgIEhhc2hNYXA8U2hhcmVTaGVldENhbGxiYWNrSUQsIFdURjo6RnVuY3Rpb248dm9pZChib29s
IGNvbXBsZXRlZCk+PiBtX3NoYXJlU2hlZXRSZXNwb25zZUNhbGxiYWNrTWFwOwogCiAjaWYgRU5B
QkxFKEFQUExJQ0FUSU9OX01BTklGRVNUKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCShyZXZpc2lvbiAyNDEyNjQp
CisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmlu
CSh3b3JraW5nIGNvcHkpCkBAIC01MzEsMTAgKzUzMSw2IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2Ug
TGVnYWN5UmVjZWl2ZXIgewogCiAgICAgU2V0SXNTdXNwZW5kZWQoYm9vbCBzdXNwZW5kZWQpCiAK
LSNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQotICAgIFN0b3JhZ2VBY2Nlc3NS
ZXNwb25zZShib29sIHdhc0dyYW50ZWQsIHVpbnQ2NF90IGNvbnRleHRJZCkKLSNlbmRpZgotCiAj
aWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKICAgICBJbnNlcnRBdHRhY2htZW50KFN0cmlu
ZyBpZGVudGlmaWVyLCBPcHRpb25hbDx1aW50NjRfdD4gZmlsZVNpemUsIFN0cmluZyBmaWxlTmFt
ZSwgU3RyaW5nIGNvbnRlbnRUeXBlLCBXZWJLaXQ6OkNhbGxiYWNrSUQgY2FsbGJhY2tJRCkKICAg
ICBVcGRhdGVBdHRhY2htZW50QXR0cmlidXRlcyhTdHJpbmcgaWRlbnRpZmllciwgT3B0aW9uYWw8
dWludDY0X3Q+IGZpbGVTaXplLCBTdHJpbmcgY29udGVudFR5cGUsIFN0cmluZyBmaWxlTmFtZSwg
SVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGVuY2xvc2luZ0ltYWdlRGF0YSwgV2ViS2l0
OjpDYWxsYmFja0lEIGNhbGxiYWNrSUQpCg==
</data>
<flag name="review"
          id="378357"
          type_id="1"
          status="+"
          setter="achristensen"
    />
          </attachment>
      

    </bug>

</bugzilla>