<?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>79366</bug_id>
          
          <creation_ts>2012-02-23 08:04:32 -0800</creation_ts>
          <short_desc>[BlackBerry] InputHandler requires cleanup of Navigation Mode handling.</short_desc>
          <delta_ts>2012-02-23 17:27:01 -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>New Bugs</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>0</everconfirmed>
          <reporter name="Mike Fenton">mifenton</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>rwlbuis</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>563120</commentid>
    <comment_count>0</comment_count>
    <who name="Mike Fenton">mifenton</who>
    <bug_when>2012-02-23 08:04:32 -0800</bug_when>
    <thetext>SSIA.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563123</commentid>
    <comment_count>1</comment_count>
      <attachid>128480</attachid>
    <who name="Mike Fenton">mifenton</who>
    <bug_when>2012-02-23 08:10:05 -0800</bug_when>
    <thetext>Created attachment 128480
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563125</commentid>
    <comment_count>2</comment_count>
      <attachid>128480</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-02-23 08:19:16 -0800</bug_when>
    <thetext>Comment on attachment 128480
Patch

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

&gt; Source/WebKit/blackberry/WebKitSupport/SelectionHandler.cpp:406
&gt; +        m_webPage-&gt;m_inputHandler-&gt;handleKeyboardInput(BlackBerry::Platform::KeyboardEvent(character, BlackBerry::Platform::KeyboardEvent::KeyDown, KEYMOD_SHIFT));

Maybe you dont need BlackBerry prefix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563126</commentid>
    <comment_count>3</comment_count>
      <attachid>128480</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-02-23 08:24:59 -0800</bug_when>
    <thetext>Comment on attachment 128480
Patch

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

Looks good, BlackBerry:: prefix cleanup can be done later.

&gt;&gt; Source/WebKit/blackberry/WebKitSupport/SelectionHandler.cpp:406
&gt;&gt; +        m_webPage-&gt;m_inputHandler-&gt;handleKeyboardInput(BlackBerry::Platform::KeyboardEvent(character, BlackBerry::Platform::KeyboardEvent::KeyDown, KEYMOD_SHIFT));
&gt; 
&gt; Maybe you dont need BlackBerry prefix.

Maybe you dont need BlackBerry prefix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563730</commentid>
    <comment_count>4</comment_count>
      <attachid>128480</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-23 17:26:56 -0800</bug_when>
    <thetext>Comment on attachment 128480
Patch

Clearing flags on attachment: 128480

Committed r108702: &lt;http://trac.webkit.org/changeset/108702&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563732</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-23 17:27:01 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128480</attachid>
            <date>2012-02-23 08:10:05 -0800</date>
            <delta_ts>2012-02-23 17:26:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>0001-2012-02-22-Mike-Fenton-mifenton-rim.com.patch</filename>
            <type>text/plain</type>
            <size>21685</size>
            <attacher name="Mike Fenton">mifenton</attacher>
            
              <data encoding="base64">RnJvbSA2YTY4NzNlNGFkMWU1NWRjYjkzM2Y0MmRmYmE2ODgyZDk1MjlkNjM5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWtlIEZlbnRvbiA8bWlmZW50b25AcmltLmNvbT4KRGF0ZTog
V2VkLCAyMiBGZWIgMjAxMiAxMzoyMTo1MSAtMDUwMApTdWJqZWN0OiBbUEFUQ0hdIDIwMTItMDIt
MjIgIE1pa2UgRmVudG9uICA8bWlmZW50b25AcmltLmNvbT4KCiAgICAgICAgQ2xlYW51cCBJbnB1
dEhhbmRsZXIgbmF2aWdhdGlvbiBiYXNlZCBjb2RlLgoKICAgICAgICAxKSBSZW1vdmUgdGhlIGNv
bmNlcHQgb2YgTmF2aWdhdGlvbk1vZGUgYW5kIHJlcGxhY2UgaXQKICAgICAgICAgICB3aXRoIHNp
bXBsZSBzaG93S2V5Ym9hcmQgY2FsbHMuCgogICAgICAgIDIpIFJlbW92ZSBuYXZpZ2F0aW9uIG1v
dmUgZXZlbnRzIGFuZCByZXBsYWNlIHdpdGggc3RhbmRhcmQKICAgICAgICAgICBrZXkgZXZlbnRz
LgoKICAgICAgICAzKSBTdGFuZGFyZGl6ZSBmdW5jdGlvbi92YXJpYWJsZSBuYW1lcyBhbmQgcmVt
b3ZlIG9ic29sZXRlCiAgICAgICAgICAgZnVuY3Rpb25zLgoKICAgICAgICBSZXZpZXdlZCBieTog
TmltYSBHaGFuYXZhdGlhbiBhbmQgQW50b25pbyBHb21lcy4KCiAgICAgICAgKiBBcGkvV2ViUGFn
ZS5jcHA6CiAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6V2ViUGFnZVByaXZhdGU6OnNob3dW
aXJ0dWFsS2V5Ym9hcmQpOgogICAgICAgICogQXBpL1dlYlBhZ2UuaDoKICAgICAgICAqIEFwaS9X
ZWJQYWdlQ2xpZW50Lmg6CiAgICAgICAgKiBXZWJLaXRTdXBwb3J0L0lucHV0SGFuZGxlci5jcHA6
CiAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5wdXRIYW5kbGVyOjpJbnB1dEhhbmRsZXIp
OgogICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OklucHV0SGFuZGxlcjo6bm9kZUZvY3VzZWQp
OgogICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OklucHV0SGFuZGxlcjo6c2V0RWxlbWVudFVu
Zm9jdXNlZCk6CiAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5wdXRIYW5kbGVyOjpzZXRF
bGVtZW50Rm9jdXNlZCk6CiAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5wdXRIYW5kbGVy
OjplbnN1cmVGb2N1c1RleHRFbGVtZW50VmlzaWJsZSk6CiAgICAgICAgKEJsYWNrQmVycnk6Oldl
YktpdDo6SW5wdXRIYW5kbGVyOjpzZXREZWxheUtleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSk6CiAg
ICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5wdXRIYW5kbGVyOjpwcm9jZXNzUGVuZGluZ0tl
eWJvYXJkVmlzaWJpbGl0eUNoYW5nZSk6CiAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5w
dXRIYW5kbGVyOjpub3RpZnlDbGllbnRPZktleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSk6CiAgICAg
ICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5wdXRIYW5kbGVyOjpyZWN0Rm9yQ2FyZXQpOgogICAg
ICAgICogV2ViS2l0U3VwcG9ydC9JbnB1dEhhbmRsZXIuaDoKICAgICAgICAqIFdlYktpdFN1cHBv
cnQvU2VsZWN0aW9uSGFuZGxlci5jcHA6CiAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6U2Vs
ZWN0aW9uSGFuZGxlcjo6c2V0Q2FyZXRQb3NpdGlvbik6CiAgICAgICAgKEJsYWNrQmVycnk6Oldl
YktpdDo6U2VsZWN0aW9uSGFuZGxlcjo6dXBkYXRlT3JIYW5kbGVJbnB1dFNlbGVjdGlvbik6CiAg
ICAgICAgKiBXZWJLaXRTdXBwb3J0L1RvdWNoRXZlbnRIYW5kbGVyLmNwcDoKICAgICAgICAoQmxh
Y2tCZXJyeTo6V2ViS2l0OjpUb3VjaEV2ZW50SGFuZGxlcjo6dG91Y2hFdmVudENhbmNlbCk6CiAg
ICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6VG91Y2hFdmVudEhhbmRsZXI6OmhhbmRsZVRvdWNo
UG9pbnQpOgotLS0KIFNvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvV2ViUGFnZUNsaWVudC5o
ICAgICAgIHwgICAgMyArLQogU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyAgICAg
ICAgICAgICAgICAgfCAgIDM3ICsrKysrCiAuLi4vYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0lu
cHV0SGFuZGxlci5jcHAgICAgICB8ICAxNDAgKysrKy0tLS0tLS0tLS0tLS0tLS0KIC4uLi9XZWJL
aXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0lucHV0SGFuZGxlci5oIHwgICAxNCArLS0KIC4u
Li9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvU2VsZWN0aW9uSGFuZGxlci5jcHAgIHwgICAgOCAr
LQogLi4uL2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9Ub3VjaEV2ZW50SGFuZGxlci5jcHAgfCAg
IDEzICstCiA2IGZpbGVzIGNoYW5nZWQsIDgwIGluc2VydGlvbnMoKyksIDEzNSBkZWxldGlvbnMo
LSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL1dlYlBhZ2VDbGll
bnQuaCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvV2ViUGFnZUNsaWVudC5oCmluZGV4
IDA4MDNjMDguLjAyODM5YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9B
cGkvV2ViUGFnZUNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvV2Vi
UGFnZUNsaWVudC5oCkBAIC0xNzEsOSArMTcxLDEwIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgaW5wdXRGb2N1c0xvc3QoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGlucHV0VGV4dENoYW5n
ZWQoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGlucHV0U2VsZWN0aW9uQ2hhbmdlZCh1bnNpZ25l
ZCBzZWxlY3Rpb25TdGFydCwgdW5zaWduZWQgc2VsZWN0aW9uRW5kKSA9IDA7Ci0gICAgdmlydHVh
bCB2b2lkIGlucHV0U2V0TmF2aWdhdGlvbk1vZGUoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBpbnB1dExlYXJuVGV4dCh3Y2hhcl90KiB0ZXh0LCBpbnQgbGVuZ3RoKSA9IDA7CiAKKyAgICB2
aXJ0dWFsIHZvaWQgc2hvd1ZpcnR1YWxLZXlib2FyZChib29sKSA9IDA7CisKICAgICB2aXJ0dWFs
IHZvaWQgY2hlY2tTcGVsbGluZ09mU3RyaW5nKGNvbnN0IHVuc2lnbmVkIHNob3J0KiB0ZXh0LCBp
bnQgbGVuZ3RoLCBpbnQmIG1pc3NwZWxsaW5nTG9jYXRpb24sIGludCYgbWlzc3BlbGxpbmdMZW5n
dGgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFNwZWxsaW5nU3VnZ2VzdGlvbnNGb3JT
dHJpbmcodW5zaWduZWQgc3RhcnQsIHVuc2lnbmVkIGVuZCkgPSAwOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9ibGFja2Jl
cnJ5L0NoYW5nZUxvZwppbmRleCBkYjhiNDEwLi4wYzMyYTUxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJy
eS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0MCBAQAorMjAxMi0wMi0yMyAgTWlrZSBGZW50b24gIDxt
aWZlbnRvbkByaW0uY29tPgorCisgICAgICAgIFtCbGFja0JlcnJ5XSBJbnB1dEhhbmRsZXIgcmVx
dWlyZXMgY2xlYW51cCBvZiBOYXZpZ2F0aW9uIE1vZGUgaGFuZGxpbmcuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTM2NgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENsZWFudXAgSW5wdXRIYW5kbGVyIG5h
dmlnYXRpb24gYmFzZWQgY29kZS4KKworICAgICAgICAxKSBSZW1vdmUgdGhlIGNvbmNlcHQgb2Yg
TmF2aWdhdGlvbk1vZGUgYW5kIHJlcGxhY2UgaXQKKyAgICAgICAgICAgd2l0aCBzaW1wbGUgc2hv
d0tleWJvYXJkIGNhbGxzLgorCisgICAgICAgIDIpIFJlbW92ZSBuYXZpZ2F0aW9uIG1vdmUgZXZl
bnRzIGFuZCByZXBsYWNlIHdpdGggc3RhbmRhcmQKKyAgICAgICAgICAga2V5IGV2ZW50cy4KKwor
ICAgICAgICAzKSBTdGFuZGFyZGl6ZSBmdW5jdGlvbi92YXJpYWJsZSBuYW1lcyBhbmQgcmVtb3Zl
IG9ic29sZXRlCisgICAgICAgICAgIGZ1bmN0aW9ucy4KKworICAgICAgICAqIEFwaS9XZWJQYWdl
Q2xpZW50Lmg6CisgICAgICAgICogV2ViS2l0U3VwcG9ydC9JbnB1dEhhbmRsZXIuY3BwOgorICAg
ICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpJbnB1dEhhbmRsZXI6OklucHV0SGFuZGxlcik6Cisg
ICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OklucHV0SGFuZGxlcjo6bm9kZUZvY3VzZWQpOgor
ICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpJbnB1dEhhbmRsZXI6OnNldEVsZW1lbnRVbmZv
Y3VzZWQpOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpJbnB1dEhhbmRsZXI6OnNldEVs
ZW1lbnRGb2N1c2VkKToKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6SW5wdXRIYW5kbGVy
OjplbnN1cmVGb2N1c1RleHRFbGVtZW50VmlzaWJsZSk6CisgICAgICAgIChCbGFja0JlcnJ5OjpX
ZWJLaXQ6OklucHV0SGFuZGxlcjo6c2V0RGVsYXlLZXlib2FyZFZpc2liaWxpdHlDaGFuZ2UpOgor
ICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpJbnB1dEhhbmRsZXI6OnByb2Nlc3NQZW5kaW5n
S2V5Ym9hcmRWaXNpYmlsaXR5Q2hhbmdlKToKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6
SW5wdXRIYW5kbGVyOjpub3RpZnlDbGllbnRPZktleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSk6Cisg
ICAgICAgICogV2ViS2l0U3VwcG9ydC9JbnB1dEhhbmRsZXIuaDoKKyAgICAgICAgKElucHV0SGFu
ZGxlcik6CisgICAgICAgICogV2ViS2l0U3VwcG9ydC9TZWxlY3Rpb25IYW5kbGVyLmNwcDoKKyAg
ICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6U2VsZWN0aW9uSGFuZGxlcjo6c2V0Q2FyZXRQb3Np
dGlvbik6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OlNlbGVjdGlvbkhhbmRsZXI6OnVw
ZGF0ZU9ySGFuZGxlSW5wdXRTZWxlY3Rpb24pOgorICAgICAgICAqIFdlYktpdFN1cHBvcnQvVG91
Y2hFdmVudEhhbmRsZXIuY3BwOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpUb3VjaEV2
ZW50SGFuZGxlcjo6dG91Y2hFdmVudENhbmNlbCk6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJL
aXQ6OlRvdWNoRXZlbnRIYW5kbGVyOjpoYW5kbGVUb3VjaFBvaW50KToKKwogMjAxMi0wMi0yMSAg
Unlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgdGhlIHJl
bWFpbmluZyB1c2VzIG9mIENTU1N0eWxlRGVjbGFyYXRpb24gaW4gRWRpdG9yCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9JbnB1dEhhbmRsZXIuY3Bw
IGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvSW5wdXRIYW5kbGVyLmNw
cAppbmRleCA4Y2FhNDViLi4yN2I5NDFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvV2ViS2l0U3VwcG9ydC9JbnB1dEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
YmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0lucHV0SGFuZGxlci5jcHAKQEAgLTExMCwxNCArMTEw
LDEzIEBAIElucHV0SGFuZGxlcjo6SW5wdXRIYW5kbGVyKFdlYlBhZ2VQcml2YXRlKiBwYWdlKQog
ICAgIDogbV93ZWJQYWdlKHBhZ2UpCiAgICAgLCBtX2N1cnJlbnRGb2N1c0VsZW1lbnQoMCkKICAg
ICAsIG1fcHJvY2Vzc2luZ0NoYW5nZShmYWxzZSkKLSAgICAsIG1fbmF2aWdhdGlvbk1vZGUoZmFs
c2UpCiAgICAgLCBtX2NoYW5naW5nRm9jdXMoZmFsc2UpCiAgICAgLCBtX2N1cnJlbnRGb2N1c0Vs
ZW1lbnRUeXBlKFRleHRFZGl0KQogICAgICwgbV9jdXJyZW50Rm9jdXNFbGVtZW50VGV4dEVkaXRN
YXNrKERFRkFVTFRfU1RZTEUpCiAgICAgLCBtX2NvbXBvc2luZ1RleHRTdGFydCgwKQogICAgICwg
bV9jb21wb3NpbmdUZXh0RW5kKDApCi0gICAgLCBtX3BlbmRpbmdLZXlib2FyZFN0YXRlQ2hhbmdl
KE5vQ2hhbmdlKQotICAgICwgbV9kZWxheUNsaWVudE5vdGlmaWNhdGlvbk9mTmF2aWdhdGlvbk1v
ZGVDaGFuZ2UoZmFsc2UpCisgICAgLCBtX3BlbmRpbmdLZXlib2FyZFZpc2liaWxpdHlDaGFuZ2Uo
Tm9DaGFuZ2UpCisgICAgLCBtX2RlbGF5S2V5Ym9hcmRWaXNpYmlsaXR5Q2hhbmdlKGZhbHNlKQog
ewogfQogCkBAIC0yMjYsNyArMjI1LDcgQEAgQmxhY2tCZXJyeUlucHV0VHlwZSBJbnB1dEhhbmRs
ZXI6OmVsZW1lbnRUeXBlKEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0CiB2b2lkIElucHV0SGFuZGxl
cjo6bm9kZUZvY3VzZWQoTm9kZSogbm9kZSkKIHsKICAgICBpZiAoaXNBY3RpdmVUZXh0RWRpdCgp
ICYmIG1fY3VycmVudEZvY3VzRWxlbWVudCA9PSBub2RlKSB7Ci0gICAgICAgIHNldE5hdmlnYXRp
b25Nb2RlKHRydWUpOworICAgICAgICBub3RpZnlDbGllbnRPZktleWJvYXJkVmlzaWJpbGl0eUNo
YW5nZSh0cnVlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMzk0LDEwICszOTMsMTAg
QEAgdm9pZCBJbnB1dEhhbmRsZXI6OnNldEVsZW1lbnRVbmZvY3VzZWQoYm9vbCByZWZvY3VzT2Nj
dXJpbmcpCiAgICAgICAgIC8vIEVuZCBhbnkgY29tcG9zaXRpb24gdGhhdCBpcyBpbiBwcm9ncmVz
cy4KICAgICAgICAgZmluaXNoQ29tcG9zaXRpb24oKTsKIAotICAgICAgICAvLyBTZW5kIGNoYW5n
ZSBub3RpZmljYXRpb25zLiBPbmx5IGNhbmNlbCBuYXZpZ2F0aW9uIG1vZGUgaWYgd2UgYXJlIG5v
dAotICAgICAgICAvLyByZWZvY3VzaW5nIHRvIGF2b2lkIGZsYXNoaW5nIHRoZSBrZXlib2FyZCB3
aGVuIHN3aXRjaGluZyBiZXR3ZWVuIHR3bwotICAgICAgICAvLyBpbnB1dCBmaWVsZHMuCi0gICAg
ICAgIHNldE5hdmlnYXRpb25Nb2RlKGZhbHNlLCAhcmVmb2N1c09jY3VyaW5nKTsKKyAgICAgICAg
Ly8gT25seSBoaWRlIHRoZSBrZXlib2FyZCBpZiB3ZSBhcmVuJ3QgcmVmb2N1c2luZyBvbiBhIG5l
dyBpbnB1dCBmaWVsZC4KKyAgICAgICAgaWYgKCFyZWZvY3VzT2NjdXJpbmcpCisgICAgICAgICAg
ICBub3RpZnlDbGllbnRPZktleWJvYXJkVmlzaWJpbGl0eUNoYW5nZShmYWxzZSk7CisKICAgICAg
ICAgbV93ZWJQYWdlLT5tX2NsaWVudC0+aW5wdXRGb2N1c0xvc3QoKTsKICAgICAgICAgbV93ZWJQ
YWdlLT5tX3NlbGVjdGlvbkhhbmRsZXItPnNlbGVjdGlvblBvc2l0aW9uQ2hhbmdlZCgpOwogICAg
IH0KQEAgLTQ3OCw4ICs0NzcsNyBAQCB2b2lkIElucHV0SGFuZGxlcjo6c2V0RWxlbWVudEZvY3Vz
ZWQoRWxlbWVudCogZWxlbWVudCkKIAogICAgIG1fd2ViUGFnZS0+bV9jbGllbnQtPmlucHV0Rm9j
dXNHYWluZWQodHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1fY3VycmVudEZvY3VzRWxlbWVudFRleHRFZGl0TWFzaywKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1fZGVsYXlDbGllbnROb3RpZmljYXRpb25PZk5hdmlnYXRp
b25Nb2RlQ2hhbmdlIC8qIHdhaXQgYW4gZXhwbGljaXQga2V5Ym9hcmQgc2hvdyBjYWxsICovKTsK
LSAgICBtX25hdmlnYXRpb25Nb2RlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG1fZGVsYXlLZXlib2FyZFZpc2liaWxpdHlDaGFuZ2UgLyogd2FpdCBm
b3IgZXhwbGljaXQga2V5Ym9hcmQgc2hvdyBjYWxsICovKTsKIAogICAgIGhhbmRsZUlucHV0TG9j
YWxlQ2hhbmdlZChtX3dlYlBhZ2UtPm1fd2ViU2V0dGluZ3MtPmlzV3JpdGluZ0RpcmVjdGlvblJU
TCgpKTsKIH0KQEAgLTU0Nyw3ICs1NDUsNyBAQCB2b2lkIElucHV0SGFuZGxlcjo6bm9kZVRleHRD
aGFuZ2VkKGNvbnN0IE5vZGUqIG5vZGUpCiAKIHZvaWQgSW5wdXRIYW5kbGVyOjplbnN1cmVGb2N1
c1RleHRFbGVtZW50VmlzaWJsZShDYXJldFNjcm9sbFR5cGUgc2Nyb2xsVHlwZSkKIHsKLSAgICBp
ZiAoIW1fY3VycmVudEZvY3VzRWxlbWVudCB8fCAhbV9uYXZpZ2F0aW9uTW9kZSB8fCAhbV9jdXJy
ZW50Rm9jdXNFbGVtZW50LT5kb2N1bWVudCgpKQorICAgIGlmICghbV9jdXJyZW50Rm9jdXNFbGVt
ZW50IHx8ICFtX2N1cnJlbnRGb2N1c0VsZW1lbnQtPmRvY3VtZW50KCkpCiAgICAgICAgIHJldHVy
bjsKIAogICAgIGlmICghQmxhY2tCZXJyeTo6UGxhdGZvcm06OlNldHRpbmdzOjpnZXQoKS0+YWxs
b3dDZW50ZXJTY3JvbGxBZGp1c3RtZW50Rm9ySW5wdXRGaWVsZHMoKSAmJiBzY3JvbGxUeXBlICE9
IEVkZ2VJZk5lZWRlZCkKQEAgLTcyNSw2NiArNzIzLDM2IEBAIHZvaWQgSW5wdXRIYW5kbGVyOjpm
cmFtZVVubG9hZGVkKEZyYW1lKiBmcmFtZSkKICAgICBzZXRFbGVtZW50VW5mb2N1c2VkKGZhbHNl
IC8qcmVmb2N1c09jY3VyaW5nKi8pOwogfQogCi12b2lkIElucHV0SGFuZGxlcjo6c2V0TmF2aWdh
dGlvbk1vZGUoYm9vbCBhY3RpdmUsIGJvb2wgc2VuZE1lc3NhZ2UpCi17Ci0gICAgaWYgKGFjdGl2
ZSAmJiAhaXNBY3RpdmVUZXh0RWRpdCgpKSB7Ci0gICAgICAgIGlmICghbV9uYXZpZ2F0aW9uTW9k
ZSkKLSAgICAgICAgICAgIHJldHVybjsKLQotICAgICAgICAvLyBXZSBjYW4ndCBiZSBhY3RpdmUg
aWYgdGhlcmUgaXMgbm8gZWxlbWVudC4gU2VuZCBvdXQgbm90aWZpY2F0aW9uIHRoYXQgd2UKLSAg
ICAgICAgLy8gYXJlbid0IGluIG5hdmlnYXRpb24gbW9kZS4KLSAgICAgICAgYWN0aXZlID0gZmFs
c2U7Ci0gICAgfQotCi0gICAgLy8gRG9uJ3Qgc2VuZCB0aGUgY2hhbmdlIGlmIGl0J3Mgc2V0dGlu
ZyB0aGUgZXZlbnQgc2V0dGluZyBuYXZpZ2F0aW9uTW9kZSB0cnVlCi0gICAgLy8gaWYgd2UgYXJl
IGFscmVhZHkgaW4gbmF2aWdhdGlvbiBtb2RlIGFuZCB0aGlzIGlzIGEgbmF2aWdhdGlvbiBtb3Zl
IGV2ZW50LgotICAgIC8vIFdlIG5lZWQgdG8gc2VuZCB0aGUgZXZlbnQgd2hlbiBpdCdzIHRyaWdn
ZXJlZCBieSBhIHRvdWNoIGV2ZW50IG9yIG1vdXNlCi0gICAgLy8gZXZlbnQgdG8gYWxsb3cgZGlz
cGxheSBvZiB0aGUgVktCLCBidXQgZG8gbm90IHdhbnQgdG8gc2VuZCBpdCB3aGVuIGl0J3MKLSAg
ICAvLyB0cmlnZ2VyZWQgYnkgYSBuYXZpZ2F0aW9uIGV2ZW50IGFzIGl0IGhhcyBubyBlZmZlY3Qu
Ci0gICAgLy8gVG91Y2ggZXZlbnRzIGFyZSBzaW11bGF0ZWQgYXMgbW91c2UgZXZlbnRzIHNvIG1v
dXNlUHJlc3NlZCB3aWxsIGJlIGFjdGl2ZQotICAgIC8vIHdoZW4gaXQgaXMgYSByZS1lbnRyeSBl
dmVudC4KLSAgICAvLyBTZWUgUklNIEJ1Z3MgIzM2OSAmICM4NzguCi0gICAgaWYgKGFjdGl2ZSAm
JiBhY3RpdmUgPT0gbV9uYXZpZ2F0aW9uTW9kZSAmJiAhbV93ZWJQYWdlLT5tX21haW5GcmFtZS0+
ZXZlbnRIYW5kbGVyKCktPm1vdXNlUHJlc3NlZCgpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBt
X25hdmlnYXRpb25Nb2RlID0gYWN0aXZlOwotCi0gICAgSW5wdXRMb2coQmxhY2tCZXJyeTo6UGxh
dGZvcm06OkxvZ0xldmVsSW5mbywgIklucHV0SGFuZGxlcjo6c2V0TmF2aWdhdGlvbk1vZGUgJXMs
ICVzIiwgYWN0aXZlID8gInRydWUiIDogImZhbHNlIiwgc2VuZE1lc3NhZ2UgPyAibWVzc2FnZSBz
ZW50IiA6ICJtZXNzYWdlIG5vdCBzZW50Iik7Ci0KLSAgICBpZiAoc2VuZE1lc3NhZ2UpCi0gICAg
ICAgIG5vdGlmeUNsaWVudE9mTmF2aWdhdGlvbk1vZGVDaGFuZ2UoYWN0aXZlKTsKLX0KLQotdm9p
ZCBJbnB1dEhhbmRsZXI6OnNldERlbGF5Q2xpZW50Tm90aWZpY2F0aW9uT2ZOYXZpZ2F0aW9uTW9k
ZUNoYW5nZShib29sIHZhbHVlKQordm9pZCBJbnB1dEhhbmRsZXI6OnNldERlbGF5S2V5Ym9hcmRW
aXNpYmlsaXR5Q2hhbmdlKGJvb2wgdmFsdWUpCiB7Ci0gICAgbV9kZWxheUNsaWVudE5vdGlmaWNh
dGlvbk9mTmF2aWdhdGlvbk1vZGVDaGFuZ2UgPSB2YWx1ZTsKLSAgICBtX3BlbmRpbmdLZXlib2Fy
ZFN0YXRlQ2hhbmdlID0gTm9DaGFuZ2U7CisgICAgbV9kZWxheUtleWJvYXJkVmlzaWJpbGl0eUNo
YW5nZSA9IHZhbHVlOworICAgIG1fcGVuZGluZ0tleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSA9IE5v
Q2hhbmdlOwogfQogCi12b2lkIElucHV0SGFuZGxlcjo6cHJvY2Vzc1BlbmRpbmdDbGllbnROYXZp
Z2F0aW9uTW9kZUNoYW5nZU5vdGlmaWNhdGlvbigpCit2b2lkIElucHV0SGFuZGxlcjo6cHJvY2Vz
c1BlbmRpbmdLZXlib2FyZFZpc2liaWxpdHlDaGFuZ2UoKQogewotICAgIGlmICghbV9kZWxheUNs
aWVudE5vdGlmaWNhdGlvbk9mTmF2aWdhdGlvbk1vZGVDaGFuZ2UpIHsKLSAgICAgICAgQVNTRVJU
KG1fcGVuZGluZ0tleWJvYXJkU3RhdGVDaGFuZ2UgPT0gTm9DaGFuZ2UpOworICAgIGlmICghbV9k
ZWxheUtleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSkgeworICAgICAgICBBU1NFUlQobV9wZW5kaW5n
S2V5Ym9hcmRWaXNpYmlsaXR5Q2hhbmdlID09IE5vQ2hhbmdlKTsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIG1fZGVsYXlDbGllbnROb3RpZmljYXRpb25PZk5hdmlnYXRpb25Nb2RlQ2hh
bmdlID0gZmFsc2U7CisgICAgbV9kZWxheUtleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSA9IGZhbHNl
OwogCi0gICAgaWYgKG1fcGVuZGluZ0tleWJvYXJkU3RhdGVDaGFuZ2UgPT0gTm9DaGFuZ2UpCisg
ICAgaWYgKG1fcGVuZGluZ0tleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSA9PSBOb0NoYW5nZSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgbm90aWZ5Q2xpZW50T2ZOYXZpZ2F0aW9uTW9kZUNoYW5nZSht
X3BlbmRpbmdLZXlib2FyZFN0YXRlQ2hhbmdlID09IFZpc2libGUpOwotICAgIG1fcGVuZGluZ0tl
eWJvYXJkU3RhdGVDaGFuZ2UgPSBOb0NoYW5nZTsKKyAgICBub3RpZnlDbGllbnRPZktleWJvYXJk
VmlzaWJpbGl0eUNoYW5nZShtX3BlbmRpbmdLZXlib2FyZFZpc2liaWxpdHlDaGFuZ2UgPT0gVmlz
aWJsZSk7CisgICAgbV9wZW5kaW5nS2V5Ym9hcmRWaXNpYmlsaXR5Q2hhbmdlID0gTm9DaGFuZ2U7
CiB9CiAKLXZvaWQgSW5wdXRIYW5kbGVyOjpub3RpZnlDbGllbnRPZk5hdmlnYXRpb25Nb2RlQ2hh
bmdlKGJvb2wgYWN0aXZlKQordm9pZCBJbnB1dEhhbmRsZXI6Om5vdGlmeUNsaWVudE9mS2V5Ym9h
cmRWaXNpYmlsaXR5Q2hhbmdlKGJvb2wgdmlzaWJsZSkKIHsKLSAgICBpZiAoIW1fZGVsYXlDbGll
bnROb3RpZmljYXRpb25PZk5hdmlnYXRpb25Nb2RlQ2hhbmdlKSB7Ci0gICAgICAgIG1fd2ViUGFn
ZS0+bV9jbGllbnQtPmlucHV0U2V0TmF2aWdhdGlvbk1vZGUoYWN0aXZlKTsKKyAgICBpZiAoIW1f
ZGVsYXlLZXlib2FyZFZpc2liaWxpdHlDaGFuZ2UpIHsKKyAgICAgICAgbV93ZWJQYWdlLT5zaG93
VmlydHVhbEtleWJvYXJkKHZpc2libGUpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAg
bV9wZW5kaW5nS2V5Ym9hcmRTdGF0ZUNoYW5nZSA9IGFjdGl2ZSA/IFZpc2libGUgOiBOb3RWaXNp
YmxlOworICAgIG1fcGVuZGluZ0tleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSA9IHZpc2libGUgPyBW
aXNpYmxlIDogTm90VmlzaWJsZTsKIH0KIAogYm9vbCBJbnB1dEhhbmRsZXI6OnNlbGVjdGlvbkF0
U3RhcnRPZkVsZW1lbnQoKQpAQCAtOTcxLDY4ICs5MzksNiBAQCBib29sIElucHV0SGFuZGxlcjo6
aGFuZGxlS2V5Ym9hcmRJbnB1dChjb25zdCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6S2V5Ym9hcmRF
dmVudAogICAgIHJldHVybiBrZXlib2FyZEV2ZW50SGFuZGxlZDsKIH0KIAotYm9vbCBJbnB1dEhh
bmRsZXI6OmhhbmRsZU5hdmlnYXRpb25Nb3ZlKHVuc2lnbmVkIHNob3J0IGNoYXJhY3RlciwgYm9v
bCBzaGlmdERvd24sIGJvb2wgYWx0RG93biwgYm9vbCBjYW5FeGl0RmllbGQpCi17Ci0gICAgSW5w
dXRMb2coQmxhY2tCZXJyeTo6UGxhdGZvcm06OkxvZ0xldmVsSW5mbywgIklucHV0SGFuZGxlcjo6
aGFuZGxlTmF2aWdhdGlvbk1vdmUgcmVjZWl2ZWQgY2hhcmFjdGVyPSVsYyIsIGNoYXJhY3Rlcik7
Ci0KLSAgICBib29sIGV2ZW50SGFuZGxlZCA9IGZhbHNlOwotICAgIEFTU0VSVChtX3dlYlBhZ2Ut
Pm1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpOwotICAgIGlmIChGcmFtZSogZm9jdXNlZEZyYW1l
ID0gbV93ZWJQYWdlLT5tX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpLT5mb2N1c2VkRnJhbWUoKSkg
ewotICAgICAgICAvLyBJZiBhbHQgaXMgZG93biwgZG8gbm90IGJyZWFrIG91dCBvZiB0aGUgZmll
bGQuCi0gICAgICAgIGlmIChjYW5FeGl0RmllbGQgJiYgIWFsdERvd24pIHsKLSAgICAgICAgICAg
IGlmICgoY2hhcmFjdGVyID09IEtFWUNPREVfTEVGVCB8fCBjaGFyYWN0ZXIgPT0gS0VZQ09ERV9V
UCkgJiYgc2VsZWN0aW9uQXRTdGFydE9mRWxlbWVudCgpCi0gICAgICAgICAgICAgICAgfHwgKGNo
YXJhY3RlciA9PSBLRVlDT0RFX1JJR0hUIHx8IGNoYXJhY3RlciA9PSBLRVlDT0RFX0RPV04pICYm
IHNlbGVjdGlvbkF0RW5kT2ZFbGVtZW50KCkpIHsKLSAgICAgICAgICAgICAgICBzZXROYXZpZ2F0
aW9uTW9kZShmYWxzZSk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIH0KLQotICAgICAgICBzd2l0Y2ggKGNoYXJhY3RlcikgewotICAgICAgICBj
YXNlIEtFWUNPREVfTEVGVDoKLSAgICAgICAgICAgIGlmIChhbHREb3duICYmIHNoaWZ0RG93bikK
LSAgICAgICAgICAgICAgICBldmVudEhhbmRsZWQgPSBmb2N1c2VkRnJhbWUtPmVkaXRvcigpLT5j
b21tYW5kKCJNb3ZlVG9CZWdpbm5pbmdPZkxpbmVBbmRNb2RpZnlTZWxlY3Rpb24iKS5leGVjdXRl
KCk7Ci0gICAgICAgICAgICBlbHNlIGlmIChhbHREb3duKQotICAgICAgICAgICAgICAgIGV2ZW50
SGFuZGxlZCA9IGZvY3VzZWRGcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVUb0JlZ2lubmlu
Z09mTGluZSIpLmV4ZWN1dGUoKTsKLSAgICAgICAgICAgIGVsc2UgaWYgKHNoaWZ0RG93bikKLSAg
ICAgICAgICAgICAgICBldmVudEhhbmRsZWQgPSBmb2N1c2VkRnJhbWUtPmVkaXRvcigpLT5jb21t
YW5kKCJNb3ZlTGVmdEFuZE1vZGlmeVNlbGVjdGlvbiIpLmV4ZWN1dGUoKTsKLSAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgICAgICBldmVudEhhbmRsZWQgPSBmb2N1c2VkRnJhbWUtPmVkaXRv
cigpLT5jb21tYW5kKCJNb3ZlTGVmdCIpLmV4ZWN1dGUoKTsKLSAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICBjYXNlIEtFWUNPREVfUklHSFQ6Ci0gICAgICAgICAgICBpZiAoYWx0RG93biAmJiBz
aGlmdERvd24pCi0gICAgICAgICAgICAgICAgZXZlbnRIYW5kbGVkID0gZm9jdXNlZEZyYW1lLT5l
ZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVRvRW5kT2ZMaW5lQW5kTW9kaWZ5U2VsZWN0aW9uIikuZXhl
Y3V0ZSgpOwotICAgICAgICAgICAgZWxzZSBpZiAoYWx0RG93bikKLSAgICAgICAgICAgICAgICBl
dmVudEhhbmRsZWQgPSBmb2N1c2VkRnJhbWUtPmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlVG9FbmRP
ZkxpbmUiKS5leGVjdXRlKCk7Ci0gICAgICAgICAgICBlbHNlIGlmIChzaGlmdERvd24pCi0gICAg
ICAgICAgICAgICAgZXZlbnRIYW5kbGVkID0gZm9jdXNlZEZyYW1lLT5lZGl0b3IoKS0+Y29tbWFu
ZCgiTW92ZVJpZ2h0QW5kTW9kaWZ5U2VsZWN0aW9uIikuZXhlY3V0ZSgpOwotICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgIGV2ZW50SGFuZGxlZCA9IGZvY3VzZWRGcmFtZS0+ZWRpdG9y
KCktPmNvbW1hbmQoIk1vdmVSaWdodCIpLmV4ZWN1dGUoKTsKLSAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICBjYXNlIEtFWUNPREVfVVA6Ci0gICAgICAgICAgICBpZiAoYWx0RG93biAmJiBzaGlm
dERvd24pCi0gICAgICAgICAgICAgICAgZXZlbnRIYW5kbGVkID0gZm9jdXNlZEZyYW1lLT5lZGl0
b3IoKS0+Y29tbWFuZCgiTW92ZVRvQmVnaW5uaW5nT2ZEb2N1bWVudEFuZE1vZGlmeVNlbGVjdGlv
biIpLmV4ZWN1dGUoKTsKLSAgICAgICAgICAgIGVsc2UgaWYgKGFsdERvd24pCi0gICAgICAgICAg
ICAgICAgZXZlbnRIYW5kbGVkID0gZm9jdXNlZEZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92
ZVRvQmVnaW5uaW5nT2ZEb2N1bWVudCIpLmV4ZWN1dGUoKTsKLSAgICAgICAgICAgIGVsc2UgaWYg
KHNoaWZ0RG93bikKLSAgICAgICAgICAgICAgICBldmVudEhhbmRsZWQgPSBmb2N1c2VkRnJhbWUt
PmVkaXRvcigpLT5jb21tYW5kKCJNb3ZlVXBBbmRNb2RpZnlTZWxlY3Rpb24iKS5leGVjdXRlKCk7
Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgZXZlbnRIYW5kbGVkID0gZm9jdXNl
ZEZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZVVwIikuZXhlY3V0ZSgpOwotICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgS0VZQ09ERV9ET1dOOgotICAgICAgICAgICAgaWYgKGFs
dERvd24gJiYgc2hpZnREb3duKQotICAgICAgICAgICAgICAgIGV2ZW50SGFuZGxlZCA9IGZvY3Vz
ZWRGcmFtZS0+ZWRpdG9yKCktPmNvbW1hbmQoIk1vdmVUb0VuZE9mRG9jdW1lbnRBbmRNb2RpZnlT
ZWxlY3Rpb24iKS5leGVjdXRlKCk7Ci0gICAgICAgICAgICBlbHNlIGlmIChhbHREb3duKQotICAg
ICAgICAgICAgICAgIGV2ZW50SGFuZGxlZCA9IGZvY3VzZWRGcmFtZS0+ZWRpdG9yKCktPmNvbW1h
bmQoIk1vdmVUb0VuZE9mRG9jdW1lbnQiKS5leGVjdXRlKCk7Ci0gICAgICAgICAgICBlbHNlIGlm
IChzaGlmdERvd24pCi0gICAgICAgICAgICAgICAgZXZlbnRIYW5kbGVkID0gZm9jdXNlZEZyYW1l
LT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZURvd25BbmRNb2RpZnlTZWxlY3Rpb24iKS5leGVjdXRl
KCk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgZXZlbnRIYW5kbGVkID0gZm9j
dXNlZEZyYW1lLT5lZGl0b3IoKS0+Y29tbWFuZCgiTW92ZURvd24iKS5leGVjdXRlKCk7Ci0gICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gZXZlbnRIYW5kbGVk
OwotfQotCiBib29sIElucHV0SGFuZGxlcjo6ZGVsZXRlU2VsZWN0aW9uKCkKIHsKICAgICBpZiAo
IWlzQWN0aXZlVGV4dEVkaXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJy
eS9XZWJLaXRTdXBwb3J0L0lucHV0SGFuZGxlci5oIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5
L1dlYktpdFN1cHBvcnQvSW5wdXRIYW5kbGVyLmgKaW5kZXggNmFkYjliNC4uMWI2NGE3OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvSW5wdXRIYW5k
bGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvSW5wdXRI
YW5kbGVyLmgKQEAgLTYzLDcgKzYzLDYgQEAgcHVibGljOgogICAgIHZvaWQgZnJhbWVVbmxvYWRl
ZChXZWJDb3JlOjpGcmFtZSopOwogCiAgICAgYm9vbCBoYW5kbGVLZXlib2FyZElucHV0KGNvbnN0
IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpLZXlib2FyZEV2ZW50JiwgYm9vbCBjaGFuZ2VJc1BhcnRP
ZkNvbXBvc2l0aW9uID0gZmFsc2UpOwotICAgIGJvb2wgaGFuZGxlTmF2aWdhdGlvbk1vdmUoY29u
c3QgdW5zaWduZWQgc2hvcnQgY2hhcmFjdGVyLCBib29sIHNoaWZ0RG93biwgYm9vbCBhbHREb3du
LCBib29sIGNhbkV4aXRGaWVsZCA9IHRydWUpOwogCiAgICAgYm9vbCBkZWxldGVTZWxlY3Rpb24o
KTsKICAgICB2b2lkIGluc2VydFRleHQoY29uc3QgV1RGOjpTdHJpbmcmKTsKQEAgLTc3LDE2ICs3
NiwxNCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldElucHV0VmFsdWUoY29uc3QgV1RGOjpTdHJp
bmcmKTsKIAotICAgIHZvaWQgc2V0RGVsYXlDbGllbnROb3RpZmljYXRpb25PZk5hdmlnYXRpb25N
b2RlQ2hhbmdlKGJvb2wgdmFsdWUpOwotICAgIHZvaWQgcHJvY2Vzc1BlbmRpbmdDbGllbnROYXZp
Z2F0aW9uTW9kZUNoYW5nZU5vdGlmaWNhdGlvbigpOworICAgIHZvaWQgc2V0RGVsYXlLZXlib2Fy
ZFZpc2liaWxpdHlDaGFuZ2UoYm9vbCB2YWx1ZSk7CisgICAgdm9pZCBwcm9jZXNzUGVuZGluZ0tl
eWJvYXJkVmlzaWJpbGl0eUNoYW5nZSgpOwogCi0gICAgdm9pZCBub3RpZnlDbGllbnRPZk5hdmln
YXRpb25Nb2RlQ2hhbmdlKGJvb2wgYWN0aXZlKTsKKyAgICB2b2lkIG5vdGlmeUNsaWVudE9mS2V5
Ym9hcmRWaXNpYmlsaXR5Q2hhbmdlKGJvb2wgdmlzaWJsZSk7CiAKICAgICBib29sIGlzSW5wdXRN
b2RlKCkgY29uc3QgeyByZXR1cm4gaXNBY3RpdmVUZXh0RWRpdCgpOyB9CiAgICAgYm9vbCBpc011
bHRpbGluZUlucHV0TW9kZSgpIGNvbnN0IHsgcmV0dXJuIGlzQWN0aXZlVGV4dEVkaXQoKSAmJiBl
bGVtZW50VHlwZShtX2N1cnJlbnRGb2N1c0VsZW1lbnQuZ2V0KCkpID09IEJsYWNrQmVycnk6OlBs
YXRmb3JtOjpJbnB1dFR5cGVUZXh0QXJlYTsgfQogCi0gICAgdm9pZCBzZXROYXZpZ2F0aW9uTW9k
ZShib29sIGFjdGl2ZSwgYm9vbCBzZW5kTWVzc2FnZSA9IHRydWUpOwotCiAgICAgdm9pZCBlbnN1
cmVGb2N1c0VsZW1lbnRWaXNpYmxlKGJvb2wgY2VudGVyRmllbGRJbkRpc3BsYXkgPSB0cnVlKTsK
ICAgICB2b2lkIGhhbmRsZUlucHV0TG9jYWxlQ2hhbmdlZChib29sIGlzUlRMKTsKIApAQCAtMTgy
LDcgKzE3OSw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+IG1fY3Vy
cmVudEZvY3VzRWxlbWVudDsKIAogICAgIGJvb2wgbV9wcm9jZXNzaW5nQ2hhbmdlOwotICAgIGJv
b2wgbV9uYXZpZ2F0aW9uTW9kZTsKICAgICBib29sIG1fY2hhbmdpbmdGb2N1czsKIAogICAgIEZv
Y3VzRWxlbWVudFR5cGUgbV9jdXJyZW50Rm9jdXNFbGVtZW50VHlwZTsKQEAgLTE5MSw4ICsxODcs
OCBAQCBwcml2YXRlOgogICAgIGludCBtX2NvbXBvc2luZ1RleHRTdGFydDsKICAgICBpbnQgbV9j
b21wb3NpbmdUZXh0RW5kOwogCi0gICAgUGVuZGluZ0tleWJvYXJkU3RhdGVDaGFuZ2UgbV9wZW5k
aW5nS2V5Ym9hcmRTdGF0ZUNoYW5nZTsKLSAgICBib29sIG1fZGVsYXlDbGllbnROb3RpZmljYXRp
b25PZk5hdmlnYXRpb25Nb2RlQ2hhbmdlOworICAgIFBlbmRpbmdLZXlib2FyZFN0YXRlQ2hhbmdl
IG1fcGVuZGluZ0tleWJvYXJkVmlzaWJpbGl0eUNoYW5nZTsKKyAgICBib29sIG1fZGVsYXlLZXli
b2FyZFZpc2liaWxpdHlDaGFuZ2U7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9TZWxlY3Rpb25IYW5kbGVyLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L1NlbGVjdGlvbkhhbmRsZXIuY3BwCmluZGV4
IGFiMmRkZjguLjU1Nzc2OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9X
ZWJLaXRTdXBwb3J0L1NlbGVjdGlvbkhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxh
Y2tiZXJyeS9XZWJLaXRTdXBwb3J0L1NlbGVjdGlvbkhhbmRsZXIuY3BwCkBAIC00Myw2ICs0Myw4
IEBACiAjaW5jbHVkZSAiaHRtbGVkaXRpbmcuaCIKICNpbmNsdWRlICJ2aXNpYmxlX3VuaXRzLmgi
CiAKKyNpbmNsdWRlIDxCbGFja0JlcnJ5UGxhdGZvcm1LZXlib2FyZEV2ZW50Lmg+CisKICNpbmNs
dWRlIDxzeXMva2V5Y29kZXMuaD4KIAogI2RlZmluZSBTSE9XREVCVUdfU0VMRUNUSU9OSEFORExF
UiAwCkBAIC0yMjEsNyArMjIzLDcgQEAgdm9pZCBTZWxlY3Rpb25IYW5kbGVyOjpzZXRDYXJldFBv
c2l0aW9uKGNvbnN0IEludFBvaW50ICZwb3NpdGlvbikKIAogICAgIGlmICghRE9NU3VwcG9ydDo6
aXNQb3NpdGlvbkluTm9kZShtX3dlYlBhZ2UtPmZvY3VzZWRPck1haW5GcmFtZSgpLT5kb2N1bWVu
dCgpLT5mb2N1c2VkTm9kZSgpLCB2aXNpYmxlQ2FyZXRQb3NpdGlvbi5kZWVwRXF1aXZhbGVudCgp
KSkgewogICAgICAgICBpZiAodW5zaWduZWQgc2hvcnQgY2hhcmFjdGVyID0gZGlyZWN0aW9uT2ZQ
b2ludFJlbGF0aXZlVG9SZWN0KHJlbGF0aXZlUG9pbnQsIGN1cnJlbnRDYXJldFJlY3QpKQotICAg
ICAgICAgICAgbV93ZWJQYWdlLT5tX2lucHV0SGFuZGxlci0+aGFuZGxlTmF2aWdhdGlvbk1vdmUo
Y2hhcmFjdGVyLCBmYWxzZSAvKiBzaGlmdERvd24gKi8sIGZhbHNlIC8qIGFsdERvd24gKi8sIGZh
bHNlIC8qIGNhbkV4aXRGaWVsZCAqLyk7CisgICAgICAgICAgICBtX3dlYlBhZ2UtPm1faW5wdXRI
YW5kbGVyLT5oYW5kbGVLZXlib2FyZElucHV0KEJsYWNrQmVycnk6OlBsYXRmb3JtOjpLZXlib2Fy
ZEV2ZW50KGNoYXJhY3RlcikpOwogCiAgICAgICAgIHNlbGVjdGlvblBvc2l0aW9uQ2hhbmdlZCgp
OwogICAgICAgICByZXR1cm47CkBAIC0zOTgsMTAgKzQwMCwxMCBAQCBib29sIFNlbGVjdGlvbkhh
bmRsZXI6OnVwZGF0ZU9ySGFuZGxlSW5wdXRTZWxlY3Rpb24oVmlzaWJsZVNlbGVjdGlvbiYgbmV3
U2VsZWN0aQogICAgIGlmICghY2hhcmFjdGVyKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICBERUJVR19TRUxFQ1RJT04oQmxhY2tCZXJyeTo6UGxhdGZvcm06OkxvZ0xldmVsSW5mbywgIlNl
bGVjdGlvbkhhbmRsZXI6OnNldFNlbGVjdGlvbiBtYWtpbmcgc2VsZWN0aW9uIGNoYW5nZSBhdHRl
bXB0IHVzaW5nIG5hdmlnYXRpb24iKTsKKyAgICBERUJVR19TRUxFQ1RJT04oQmxhY2tCZXJyeTo6
UGxhdGZvcm06OkxvZ0xldmVsSW5mbywgIlNlbGVjdGlvbkhhbmRsZXI6OnNldFNlbGVjdGlvbiBt
YWtpbmcgc2VsZWN0aW9uIGNoYW5nZSBhdHRlbXB0IHVzaW5nIGtleSBldmVudCAlZCIsIGNoYXJh
Y3Rlcik7CiAKICAgICBpZiAoc2hvdWxkRXh0ZW5kU2VsZWN0aW9uSW5EaXJlY3Rpb24oY29udHJv
bGxlci0+c2VsZWN0aW9uKCksIGNoYXJhY3RlcikpCi0gICAgICAgIG1fd2ViUGFnZS0+bV9pbnB1
dEhhbmRsZXItPmhhbmRsZU5hdmlnYXRpb25Nb3ZlKGNoYXJhY3RlciwgdHJ1ZSAvKiBzaGlmdERv
d24gKi8sIGZhbHNlIC8qIGFsdERvd24gKi8sIGZhbHNlIC8qIGNhbkV4aXRGaWVsZCAqLyk7Cisg
ICAgICAgIG1fd2ViUGFnZS0+bV9pbnB1dEhhbmRsZXItPmhhbmRsZUtleWJvYXJkSW5wdXQoQmxh
Y2tCZXJyeTo6UGxhdGZvcm06OktleWJvYXJkRXZlbnQoY2hhcmFjdGVyLCBCbGFja0JlcnJ5OjpQ
bGF0Zm9ybTo6S2V5Ym9hcmRFdmVudDo6S2V5RG93biwgS0VZTU9EX1NISUZUKSk7CiAKICAgICAv
LyBNdXN0IHNlbmQgdGhlIHNlbGVjdGlvblBvc2l0aW9uQ2hhbmdlZCBldmVyeSB0aW1lLCBzb21l
dGltZXMgdGhpcyB3aWxsIGR1cGxpY2F0ZSBidXQgYW4gYWNjZXB0ZWQKICAgICAvLyBoYW5kbGVO
YXZpZ2F0aW9uTW92ZSBtYXkgbm90IG1ha2UgYW4gYWN0dWFsIHNlbGVjdGlvbiBjaGFuZ2UuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9Ub3VjaEV2
ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9U
b3VjaEV2ZW50SGFuZGxlci5jcHAKaW5kZXggYmI2M2IyYi4uNTBhZDlkNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvVG91Y2hFdmVudEhhbmRsZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L1RvdWNoRXZl
bnRIYW5kbGVyLmNwcApAQCAtMTIyLDcgKzEyMiw3IEBAIGJvb2wgVG91Y2hFdmVudEhhbmRsZXI6
OnNob3VsZFN1cHByZXNzTW91c2VEb3duT25Ub3VjaERvd24oKSBjb25zdAogCiB2b2lkIFRvdWNo
RXZlbnRIYW5kbGVyOjp0b3VjaEV2ZW50Q2FuY2VsKCkKIHsKLSAgICBtX3dlYlBhZ2UtPm1faW5w
dXRIYW5kbGVyLT5wcm9jZXNzUGVuZGluZ0NsaWVudE5hdmlnYXRpb25Nb2RlQ2hhbmdlTm90aWZp
Y2F0aW9uKCk7CisgICAgbV93ZWJQYWdlLT5tX2lucHV0SGFuZGxlci0+cHJvY2Vzc1BlbmRpbmdL
ZXlib2FyZFZpc2liaWxpdHlDaGFuZ2UoKTsKIAogICAgIGlmICghc2hvdWxkU3VwcHJlc3NNb3Vz
ZURvd25PblRvdWNoRG93bigpKSB7CiAgICAgICAgIC8vIElucHV0IGVsZW1lbnRzIGRlbGF5IG1v
dXNlIGRvd24gYW5kIGRvIG5vdCBuZWVkIHRvIGJlIHJlbGVhc2VkIG9uIHRvdWNoIGNhbmNlbC4K
QEAgLTIwMyw3ICsyMDMsNyBAQCBib29sIFRvdWNoRXZlbnRIYW5kbGVyOjpoYW5kbGVUb3VjaFBv
aW50KFBsYXRmb3JtOjpUb3VjaFBvaW50JiBwb2ludCkKICAgICAgICAgICAgIC8vIGxldCBvbmx5
IGRlbGF5IGNsaWVudCBub3RpZmljYXRpb25zIHdoZW4gdGhlcmUgaXMgbm90IGlucHV0IHRleHQg
bm9kZSBpbnZvbHZlZC4KICAgICAgICAgICAgIGlmIChtX2NvbnZlcnRUb3VjaFRvTW91c2UKICAg
ICAgICAgICAgICAgICAmJiAobV93ZWJQYWdlLT5tX2lucHV0SGFuZGxlci0+aXNJbnB1dE1vZGUo
KSAmJiAhbV9sYXN0RmF0RmluZ2Vyc1Jlc3VsdC5pc1RleHRJbnB1dCgpKSkgewotICAgICAgICAg
ICAgICAgIG1fd2ViUGFnZS0+bV9pbnB1dEhhbmRsZXItPnNldERlbGF5Q2xpZW50Tm90aWZpY2F0
aW9uT2ZOYXZpZ2F0aW9uTW9kZUNoYW5nZSh0cnVlKTsKKyAgICAgICAgICAgICAgICBtX3dlYlBh
Z2UtPm1faW5wdXRIYW5kbGVyLT5zZXREZWxheUtleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSh0cnVl
KTsKICAgICAgICAgICAgICAgICBoYW5kbGVGYXRGaW5nZXJQcmVzc2VkKCk7CiAgICAgICAgICAg
ICB9IGVsc2UgaWYgKCFzaG91bGRTdXBwcmVzc01vdXNlRG93bk9uVG91Y2hEb3duKCkpCiAgICAg
ICAgICAgICAgICAgaGFuZGxlRmF0RmluZ2VyUHJlc3NlZCgpOwpAQCAtMjEyLDE3ICsyMTIsMjAg
QEAgYm9vbCBUb3VjaEV2ZW50SGFuZGxlcjo6aGFuZGxlVG91Y2hQb2ludChQbGF0Zm9ybTo6VG91
Y2hQb2ludCYgcG9pbnQpCiAgICAgICAgIH0KICAgICBjYXNlIFBsYXRmb3JtOjpUb3VjaFBvaW50
OjpUb3VjaFJlbGVhc2VkOgogICAgICAgICB7Ci0gICAgICAgICAgICBtX3dlYlBhZ2UtPm1faW5w
dXRIYW5kbGVyLT5wcm9jZXNzUGVuZGluZ0NsaWVudE5hdmlnYXRpb25Nb2RlQ2hhbmdlTm90aWZp
Y2F0aW9uKCk7CisgICAgICAgICAgICAvLyBBcHBseSBhbnkgc3VwcHJlc3NlZCBjaGFuZ2VzLiBU
aGlzIGRvZXMgbm90IGVsaW1pbmF0ZSB0aGUgbmVlZAorICAgICAgICAgICAgLy8gZm9yIHRoZSBz
aG93IGFmdGVyIHRoZSBoYW5kbGluZyBvZiBmYXQgZmluZ2VyIHByZXNzZWQgYXMgaXQgbWF5Cisg
ICAgICAgICAgICAvLyBoYXZlIHRyaWdnZXJlZCBhIHN0YXRlIGNoYW5nZS4KKyAgICAgICAgICAg
IG1fd2ViUGFnZS0+bV9pbnB1dEhhbmRsZXItPnByb2Nlc3NQZW5kaW5nS2V5Ym9hcmRWaXNpYmls
aXR5Q2hhbmdlKCk7CiAKICAgICAgICAgICAgIGlmIChzaG91bGRTdXBwcmVzc01vdXNlRG93bk9u
VG91Y2hEb3duKCkpCiAgICAgICAgICAgICAgICAgaGFuZGxlRmF0RmluZ2VyUHJlc3NlZCgpOwog
CiAgICAgICAgICAgICAvLyBUaGUgcmViYXNlIGhhcyBlbGltaW5hdGVkIGEgbmVjZXNzYXJ5IGV2
ZW50IHdoZW4gdGhlIG1vdXNlIGRvZXMgbm90CiAgICAgICAgICAgICAvLyB0cmlnZ2VyIGFuIGFj
dHVhbCBzZWxlY3Rpb24gY2hhbmdlIHByZXZlbnRpbmcgcmUtc2hvd2luZyBvZiB0aGUKLSAgICAg
ICAgICAgIC8vIGtleWJvYXJkLiBJZiBpbnB1dCBtb2RlIGlzIGFjdGl2ZSwgY2FsbCBzZXROYXZp
Z2F0aW9uTW9kZSB3aGljaAorICAgICAgICAgICAgLy8ga2V5Ym9hcmQuIElmIGlucHV0IG1vZGUg
aXMgYWN0aXZlLCBjYWxsIHNob3dWaXJ0dWFsS2V5Ym9hcmQgd2hpY2gKICAgICAgICAgICAgIC8v
IHdpbGwgdXBkYXRlIHRoZSBzdGF0ZSBhbmQgZGlzcGxheSBrZXlib2FyZCBpZiBuZWVkZWQuCiAg
ICAgICAgICAgICBpZiAobV93ZWJQYWdlLT5tX2lucHV0SGFuZGxlci0+aXNJbnB1dE1vZGUoKSkK
LSAgICAgICAgICAgICAgICBtX3dlYlBhZ2UtPm1faW5wdXRIYW5kbGVyLT5zZXROYXZpZ2F0aW9u
TW9kZSh0cnVlKTsKKyAgICAgICAgICAgICAgICBtX3dlYlBhZ2UtPm1faW5wdXRIYW5kbGVyLT5u
b3RpZnlDbGllbnRPZktleWJvYXJkVmlzaWJpbGl0eUNoYW5nZSh0cnVlKTsKIAogICAgICAgICAg
ICAgSW50UG9pbnQgYWRqdXN0ZWRQb2ludDsKICAgICAgICAgICAgIGlmIChtX2NvbnZlcnRUb3Vj
aFRvTW91c2UpIHsKLS0gCjEuNy41LjQKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>