<?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>48118</bug_id>
          
          <creation_ts>2010-10-22 03:09:56 -0700</creation_ts>
          <short_desc>[WINCE] Implement EditorClient::handleKeyboardEvent</short_desc>
          <delta_ts>2010-10-22 09:58:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Other</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="Patrick R. Gansterer">paroga</reporter>
          <assigned_to name="Patrick R. Gansterer">paroga</assigned_to>
          <cc>aroben</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>297881</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-10-22 03:09:56 -0700</bug_when>
    <thetext>see patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>297883</commentid>
    <comment_count>1</comment_count>
      <attachid>71541</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-10-22 03:14:50 -0700</bug_when>
    <thetext>Created attachment 71541
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298014</commentid>
    <comment_count>2</comment_count>
      <attachid>71541</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-10-22 09:40:23 -0700</bug_when>
    <thetext>Comment on attachment 71541
Patch

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

&gt; WebKit/wince/WebCoreSupport/EditorClientWinCE.cpp:339
&gt; +        for (unsigned i = 0; i &lt; _countof(keyDownEntries); i++)
&gt; +            keyDownCommandsMap-&gt;set(keyDownEntries[i].modifiers &lt;&lt; 16 | keyDownEntries[i].virtualKey, keyDownEntries[i].name);
&gt; +
&gt; +        for (unsigned i = 0; i &lt; _countof(keyPressEntries); i++)
&gt; +            keyPressCommandsMap-&gt;set(keyPressEntries[i].modifiers &lt;&lt; 16 | keyPressEntries[i].charCode, keyPressEntries[i].name);
&gt; +    }
&gt; +
&gt; +    unsigned modifiers = 0;
&gt; +    if (event-&gt;shiftKey())
&gt; +        modifiers |= ShiftKey;
&gt; +    if (event-&gt;altKey())
&gt; +        modifiers |= AltKey;
&gt; +    if (event-&gt;ctrlKey())
&gt; +        modifiers |= CtrlKey;
&gt; +
&gt; +    if (event-&gt;type() == eventNames().keydownEvent) {
&gt; +        int mapKey = modifiers &lt;&lt; 16 | event-&gt;keyCode();
&gt; +        return mapKey ? keyDownCommandsMap-&gt;get(mapKey) : 0;
&gt; +    }
&gt; +
&gt; +    int mapKey = modifiers &lt;&lt; 16 | event-&gt;charCode();
&gt; +    return mapKey ? keyPressCommandsMap-&gt;get(mapKey) : 0;
&gt; +}
&gt; +

It would be nice if we had a function to take (modifiers, key/charCode) and turn it into a HashMap key.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298025</commentid>
    <comment_count>3</comment_count>
      <attachid>71541</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-22 09:58:11 -0700</bug_when>
    <thetext>Comment on attachment 71541
Patch

Clearing flags on attachment: 71541

Committed r70313: &lt;http://trac.webkit.org/changeset/70313&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298026</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-22 09:58:15 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>71541</attachid>
            <date>2010-10-22 03:14:50 -0700</date>
            <delta_ts>2010-10-22 09:58:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-48118.patch</filename>
            <type>text/plain</type>
            <size>14231</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC93aW5jZS9DaGFuZ2VMb2cgYi9XZWJLaXQvd2luY2UvQ2hhbmdl
TG9nCmluZGV4IDhkOTliNWMuLjAwNzU4MzUgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW5jZS9DaGFu
Z2VMb2cKKysrIGIvV2ViS2l0L3dpbmNlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEw
LTEwLTIyICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBhcm9nYUB3ZWJraXQub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtXSU5DRV0gSW1wbGVtZW50
IEVkaXRvckNsaWVudDo6aGFuZGxlS2V5Ym9hcmRFdmVudAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDgxMTgKKworICAgICAgICBDb3B5IHRoZSBpbXBs
ZW1lbnRhdGlvbiBmcm9tIHRoZSBFRkwgcG9ydC4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L0VkaXRvckNsaWVudFdpbkNFLmNwcDoKKyAgICAgICAgKFdlYktpdDo6RWRpdG9yQ2xpZW50V2lu
Q0U6OmludGVycHJldEtleUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6RWRpdG9yQ2xpZW50V2lu
Q0U6OmhhbmRsZUVkaXRpbmdLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6RWRpdG9y
Q2xpZW50V2luQ0U6OmhhbmRsZUtleWJvYXJkRXZlbnQpOgorICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L0VkaXRvckNsaWVudFdpbkNFLmg6CisKIDIwMTAtMTAtMTUgIE5pa29sYXMgWmltbWVybWFu
biAgPG56aW1tZXJtYW5uQHJpbS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGlyayBTY2h1
bHplLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3dpbmNlL1dlYkNvcmVTdXBwb3J0L0VkaXRvckNsaWVu
dFdpbkNFLmNwcCBiL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRXaW5D
RS5jcHAKaW5kZXggYTgwNmNmOS4uYjllNmZiMSAxMDA2NDQKLS0tIGEvV2ViS2l0L3dpbmNlL1dl
YkNvcmVTdXBwb3J0L0VkaXRvckNsaWVudFdpbkNFLmNwcAorKysgYi9XZWJLaXQvd2luY2UvV2Vi
Q29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50V2luQ0UuY3BwCkBAIC0xLDMyICsxLDM1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDEwIFBhdHJpY2sgR2Fuc3RlcmVyIDxwYXJvZ2FAcGFyb2dhLmNv
bT4KKyAqICBDb3B5cmlnaHQgKEMpIDIwMDcgQWxwIFRva2VyIDxhbHBAYXRva2VyLmNvbT4KKyAq
ICBDb3B5cmlnaHQgKEMpIDIwMDggTnVhbnRpIEx0ZC4KKyAqICBDb3B5cmlnaHQgKEMpIDIwMDgg
SU5kVCAtIEluc3RpdHV0byBOb2tpYSBkZSBUZWNub2xvZ2lhCisgKiAgQ29weXJpZ2h0IChDKSAy
MDA5LTIwMTAgUHJvRlVTSU9OIGVtYmVkZGVkIHN5c3RlbXMKKyAqICBDb3B5cmlnaHQgKEMpIDIw
MDktMjAxMCBTYW1zdW5nIEVsZWN0cm9uaWNzCisgKiAgQ29weXJpZ2h0IChDKSAyMDEwIFBhdHJp
Y2sgR2Fuc3RlcmVyIDxwYXJvZ2FAcGFyb2dhLmNvbT4KICAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqICBUaGlzIGxpYnJh
cnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAg
bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1Ymxp
YworICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b247IGVpdGhlcgorICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3
aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl
biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiAgTGVzc2VyIEdlbmVy
YWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAgWW91IHNob3VsZCBo
YXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICog
IExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZy
ZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZp
ZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKICAqLwogCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAiRWRpdG9yQ2xpZW50V2luQ0UuaCIKIAogI2luY2x1ZGUgIkVk
aXRDb21tYW5kLmgiCisjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJLZXlib2FyZEV2ZW50
LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNsdWRlICJQbGF0Zm9ybUtleWJv
YXJkRXZlbnQuaCIKKyNpbmNsdWRlICJTZXR0aW5ncy5oIgogCiB1c2luZyBuYW1lc3BhY2UgV2Vi
Q29yZTsKIApAQCAtMjE3LDkgKzIyMCwxOTEgQEAgdm9pZCBFZGl0b3JDbGllbnRXaW5DRTo6dG9n
Z2xlR3JhbW1hckNoZWNraW5nKCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCitzdGF0aWMg
Y29uc3QgdW5zaWduZWQgQ3RybEtleSA9IDEgPDwgMDsKK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBB
bHRLZXkgPSAxIDw8IDE7CitzdGF0aWMgY29uc3QgdW5zaWduZWQgU2hpZnRLZXkgPSAxIDw8IDI7
CisKK3N0cnVjdCBLZXlEb3duRW50cnkgeworICAgIHVuc2lnbmVkIHZpcnR1YWxLZXk7CisgICAg
dW5zaWduZWQgbW9kaWZpZXJzOworICAgIGNvbnN0IGNoYXIqIG5hbWU7Cit9OworCitzdHJ1Y3Qg
S2V5UHJlc3NFbnRyeSB7CisgICAgdW5zaWduZWQgY2hhckNvZGU7CisgICAgdW5zaWduZWQgbW9k
aWZpZXJzOworICAgIGNvbnN0IGNoYXIqIG5hbWU7Cit9OworCitzdGF0aWMgY29uc3QgS2V5RG93
bkVudHJ5IGtleURvd25FbnRyaWVzW10gPSB7CisgICAgeyBWS19MRUZULCAgIDAsICAgICAgICAg
ICAgICAgICAgIk1vdmVMZWZ0IiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0s
CisgICAgeyBWS19MRUZULCAgIFNoaWZ0S2V5LCAgICAgICAgICAgIk1vdmVMZWZ0QW5kTW9kaWZ5
U2VsZWN0aW9uIiAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19MRUZULCAgIEN0cmxLZXks
ICAgICAgICAgICAgIk1vdmVXb3JkTGVmdCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IH0sCisgICAgeyBWS19MRUZULCAgIEN0cmxLZXkgfCBTaGlmdEtleSwgIk1vdmVXb3JkTGVmdEFu
ZE1vZGlmeVNlbGVjdGlvbiIgICAgICAgICAgICAgIH0sCisgICAgeyBWS19SSUdIVCwgIDAsICAg
ICAgICAgICAgICAgICAgIk1vdmVSaWdodCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0sCisgICAgeyBWS19SSUdIVCwgIFNoaWZ0S2V5LCAgICAgICAgICAgIk1vdmVSaWdodEFu
ZE1vZGlmeVNlbGVjdGlvbiIgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19SSUdIVCwgIEN0
cmxLZXksICAgICAgICAgICAgIk1vdmVXb3JkUmlnaHQiICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0sCisgICAgeyBWS19SSUdIVCwgIEN0cmxLZXkgfCBTaGlmdEtleSwgIk1vdmVXb3Jk
UmlnaHRBbmRNb2RpZnlTZWxlY3Rpb24iICAgICAgICAgICAgIH0sCisgICAgeyBWS19VUCwgICAg
IDAsICAgICAgICAgICAgICAgICAgIk1vdmVVcCIgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIH0sCisgICAgeyBWS19VUCwgICAgIFNoaWZ0S2V5LCAgICAgICAgICAgIk1vdmVV
cEFuZE1vZGlmeVNlbGVjdGlvbiIgICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19QUklP
UiwgIFNoaWZ0S2V5LCAgICAgICAgICAgIk1vdmVQYWdlVXBBbmRNb2RpZnlTZWxlY3Rpb24iICAg
ICAgICAgICAgICAgIH0sCisgICAgeyBWS19ET1dOLCAgIDAsICAgICAgICAgICAgICAgICAgIk1v
dmVEb3duIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19E
T1dOLCAgIFNoaWZ0S2V5LCAgICAgICAgICAgIk1vdmVEb3duQW5kTW9kaWZ5U2VsZWN0aW9uIiAg
ICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19ORVhULCAgIFNoaWZ0S2V5LCAgICAgICAgICAg
Ik1vdmVQYWdlRG93bkFuZE1vZGlmeVNlbGVjdGlvbiIgICAgICAgICAgICAgIH0sCisgICAgeyBW
S19QUklPUiwgIDAsICAgICAgICAgICAgICAgICAgIk1vdmVQYWdlVXAiICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19ORVhULCAgIDAsICAgICAgICAgICAgICAg
ICAgIk1vdmVQYWdlRG93biIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAg
eyBWS19IT01FLCAgIDAsICAgICAgICAgICAgICAgICAgIk1vdmVUb0JlZ2lubmluZ09mTGluZSIg
ICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19IT01FLCAgIFNoaWZ0S2V5LCAgICAg
ICAgICAgIk1vdmVUb0JlZ2lubmluZ09mTGluZUFuZE1vZGlmeVNlbGVjdGlvbiIgICAgIH0sCisg
ICAgeyBWS19IT01FLCAgIEN0cmxLZXksICAgICAgICAgICAgIk1vdmVUb0JlZ2lubmluZ09mRG9j
dW1lbnQiICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19IT01FLCAgIEN0cmxLZXkgfCBT
aGlmdEtleSwgIk1vdmVUb0JlZ2lubmluZ09mRG9jdW1lbnRBbmRNb2RpZnlTZWxlY3Rpb24iIH0s
CisKKyAgICB7IFZLX0VORCwgICAgMCwgICAgICAgICAgICAgICAgICAiTW92ZVRvRW5kT2ZMaW5l
IiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgICB7IFZLX0VORCwgICAgU2hpZnRL
ZXksICAgICAgICAgICAiTW92ZVRvRW5kT2ZMaW5lQW5kTW9kaWZ5U2VsZWN0aW9uIiAgICAgICAg
ICAgfSwKKyAgICB7IFZLX0VORCwgICAgQ3RybEtleSwgICAgICAgICAgICAiTW92ZVRvRW5kT2ZE
b2N1bWVudCIgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgICB7IFZLX0VORCwgICAgQ3Ry
bEtleSB8IFNoaWZ0S2V5LCAiTW92ZVRvRW5kT2ZEb2N1bWVudEFuZE1vZGlmeVNlbGVjdGlvbiIg
ICAgICAgfSwKKworICAgIHsgVktfQkFDSywgICAwLCAgICAgICAgICAgICAgICAgICJEZWxldGVC
YWNrd2FyZCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICAgIHsgVktfQkFDSywg
ICBTaGlmdEtleSwgICAgICAgICAgICJEZWxldGVCYWNrd2FyZCIgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB9LAorICAgIHsgVktfREVMRVRFLCAwLCAgICAgICAgICAgICAgICAgICJEZWxl
dGVGb3J3YXJkIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICAgIHsgVktfQkFD
SywgICBDdHJsS2V5LCAgICAgICAgICAgICJEZWxldGVXb3JkQmFja3dhcmQiICAgICAgICAgICAg
ICAgICAgICAgICAgICB9LAorICAgIHsgVktfREVMRVRFLCBDdHJsS2V5LCAgICAgICAgICAgICJE
ZWxldGVXb3JkRm9yd2FyZCIgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorCisgICAgeyAn
QicsICAgICAgIEN0cmxLZXksICAgICAgICAgICAgIlRvZ2dsZUJvbGQiICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyAnSScsICAgICAgIEN0cmxLZXksICAgICAgICAg
ICAgIlRvZ2dsZUl0YWxpYyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisKKyAg
ICB7IFZLX0VTQ0FQRSwgMCwgICAgICAgICAgICAgICAgICAiQ2FuY2VsIiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgICB7IFZLX1RBQiwgICAgMCwgICAgICAgICAg
ICAgICAgICAiSW5zZXJ0VGFiIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwK
KyAgICB7IFZLX1RBQiwgICAgU2hpZnRLZXksICAgICAgICAgICAiSW5zZXJ0QmFja3RhYiIgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgICB7IFZLX1JFVFVSTiwgMCwgICAgICAg
ICAgICAgICAgICAiSW5zZXJ0TmV3bGluZSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fSwKKyAgICB7IFZLX1JFVFVSTiwgQ3RybEtleSwgICAgICAgICAgICAiSW5zZXJ0TmV3bGluZSIg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgICB7IFZLX1JFVFVSTiwgQWx0S2V5
LCAgICAgICAgICAgICAiSW5zZXJ0TmV3bGluZSIgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfSwKKyAgICB7IFZLX1JFVFVSTiwgQWx0S2V5IHwgU2hpZnRLZXksICAiSW5zZXJ0TmV3bGlu
ZSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKworICAgIC8vIEl0J3Mgbm90IHF1
aXRlIGNsZWFyIHdoZXRoZXIgY2xpcGJvYXJkIHNob3J0Y3V0cyBhbmQgVW5kby9SZWRvIHNob3Vs
ZCBiZSBoYW5kbGVkCisgICAgLy8gaW4gdGhlIGFwcGxpY2F0aW9uIG9yIGluIFdlYktpdC4gV2Ug
Y2hvc2UgV2ViS2l0IGZvciBub3cuCisgICAgeyAnQycsICAgICAgIEN0cmxLZXksICAgICAgICAg
ICAgIkNvcHkiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAg
eyAnVicsICAgICAgIEN0cmxLZXksICAgICAgICAgICAgIlBhc3RlIiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyAnWCcsICAgICAgIEN0cmxLZXksICAgICAg
ICAgICAgIkN1dCIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisg
ICAgeyAnQScsICAgICAgIEN0cmxLZXksICAgICAgICAgICAgIlNlbGVjdEFsbCIgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19JTlNFUlQsIEN0cmxLZXksICAg
ICAgICAgICAgIkNvcHkiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0s
CisgICAgeyBWS19ERUxFVEUsIFNoaWZ0S2V5LCAgICAgICAgICAgIkN1dCIgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyBWS19JTlNFUlQsIFNoaWZ0S2V5
LCAgICAgICAgICAgIlBhc3RlIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IH0sCisgICAgeyAnWicsICAgICAgIEN0cmxLZXksICAgICAgICAgICAgIlVuZG8iICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAgeyAnWicsICAgICAgIEN0cmxL
ZXkgfCBTaGlmdEtleSwgIlJlZG8iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0KK307CisKK3N0YXRpYyBjb25zdCBLZXlQcmVzc0VudHJ5IGtleVByZXNzRW50cmllc1td
ID0geworICAgIHsgJ1x0JywgICAwLCAgICAgICAgICAgICAgICAgICJJbnNlcnRUYWIiICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICAgIHsgJ1x0JywgICBTaGlmdEtleSwg
ICAgICAgICAgICJJbnNlcnRCYWNrdGFiIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9
LAorICAgIHsgJ1xyJywgICAwLCAgICAgICAgICAgICAgICAgICJJbnNlcnROZXdsaW5lIiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICAgIHsgJ1xyJywgICBDdHJsS2V5LCAgICAg
ICAgICAgICJJbnNlcnROZXdsaW5lIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAor
ICAgIHsgJ1xyJywgICBBbHRLZXksICAgICAgICAgICAgICJJbnNlcnROZXdsaW5lIiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB9LAorICAgIHsgJ1xyJywgICBBbHRLZXkgfCBTaGlmdEtl
eSwgICJJbnNlcnROZXdsaW5lIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Cit9Owor
Citjb25zdCBjaGFyKiBFZGl0b3JDbGllbnRXaW5DRTo6aW50ZXJwcmV0S2V5RXZlbnQoY29uc3Qg
S2V5Ym9hcmRFdmVudCogZXZlbnQpCit7CisgICAgQVNTRVJUKGV2ZW50LT50eXBlKCkgPT0gZXZl
bnROYW1lcygpLmtleWRvd25FdmVudCB8fCBldmVudC0+dHlwZSgpID09IGV2ZW50TmFtZXMoKS5r
ZXlwcmVzc0V2ZW50KTsKKworICAgIHN0YXRpYyBIYXNoTWFwPGludCwgY29uc3QgY2hhcio+KiBr
ZXlEb3duQ29tbWFuZHNNYXAgPSAwOworICAgIHN0YXRpYyBIYXNoTWFwPGludCwgY29uc3QgY2hh
cio+KiBrZXlQcmVzc0NvbW1hbmRzTWFwID0gMDsKKworICAgIGlmICgha2V5RG93bkNvbW1hbmRz
TWFwKSB7CisgICAgICAgIGtleURvd25Db21tYW5kc01hcCA9IG5ldyBIYXNoTWFwPGludCwgY29u
c3QgY2hhcio+OworICAgICAgICBrZXlQcmVzc0NvbW1hbmRzTWFwID0gbmV3IEhhc2hNYXA8aW50
LCBjb25zdCBjaGFyKj47CisKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IF9jb3Vu
dG9mKGtleURvd25FbnRyaWVzKTsgaSsrKQorICAgICAgICAgICAga2V5RG93bkNvbW1hbmRzTWFw
LT5zZXQoa2V5RG93bkVudHJpZXNbaV0ubW9kaWZpZXJzIDw8IDE2IHwga2V5RG93bkVudHJpZXNb
aV0udmlydHVhbEtleSwga2V5RG93bkVudHJpZXNbaV0ubmFtZSk7CisKKyAgICAgICAgZm9yICh1
bnNpZ25lZCBpID0gMDsgaSA8IF9jb3VudG9mKGtleVByZXNzRW50cmllcyk7IGkrKykKKyAgICAg
ICAgICAgIGtleVByZXNzQ29tbWFuZHNNYXAtPnNldChrZXlQcmVzc0VudHJpZXNbaV0ubW9kaWZp
ZXJzIDw8IDE2IHwga2V5UHJlc3NFbnRyaWVzW2ldLmNoYXJDb2RlLCBrZXlQcmVzc0VudHJpZXNb
aV0ubmFtZSk7CisgICAgfQorCisgICAgdW5zaWduZWQgbW9kaWZpZXJzID0gMDsKKyAgICBpZiAo
ZXZlbnQtPnNoaWZ0S2V5KCkpCisgICAgICAgIG1vZGlmaWVycyB8PSBTaGlmdEtleTsKKyAgICBp
ZiAoZXZlbnQtPmFsdEtleSgpKQorICAgICAgICBtb2RpZmllcnMgfD0gQWx0S2V5OworICAgIGlm
IChldmVudC0+Y3RybEtleSgpKQorICAgICAgICBtb2RpZmllcnMgfD0gQ3RybEtleTsKKworICAg
IGlmIChldmVudC0+dHlwZSgpID09IGV2ZW50TmFtZXMoKS5rZXlkb3duRXZlbnQpIHsKKyAgICAg
ICAgaW50IG1hcEtleSA9IG1vZGlmaWVycyA8PCAxNiB8IGV2ZW50LT5rZXlDb2RlKCk7CisgICAg
ICAgIHJldHVybiBtYXBLZXkgPyBrZXlEb3duQ29tbWFuZHNNYXAtPmdldChtYXBLZXkpIDogMDsK
KyAgICB9CisKKyAgICBpbnQgbWFwS2V5ID0gbW9kaWZpZXJzIDw8IDE2IHwgZXZlbnQtPmNoYXJD
b2RlKCk7CisgICAgcmV0dXJuIG1hcEtleSA/IGtleVByZXNzQ29tbWFuZHNNYXAtPmdldChtYXBL
ZXkpIDogMDsKK30KKworYm9vbCBFZGl0b3JDbGllbnRXaW5DRTo6aGFuZGxlRWRpdGluZ0tleWJv
YXJkRXZlbnQoS2V5Ym9hcmRFdmVudCogZXZlbnQpCit7CisgICAgTm9kZSogbm9kZSA9IGV2ZW50
LT50YXJnZXQoKS0+dG9Ob2RlKCk7CisgICAgQVNTRVJUKG5vZGUpOworICAgIEZyYW1lKiBmcmFt
ZSA9IG5vZGUtPmRvY3VtZW50KCktPmZyYW1lKCk7CisgICAgQVNTRVJUKGZyYW1lKTsKKworICAg
IGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCoga2V5RXZlbnQgPSBldmVudC0+a2V5RXZlbnQo
KTsKKyAgICBpZiAoIWtleUV2ZW50KQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBib29s
IGNhcmV0QnJvd3NpbmcgPSBmcmFtZS0+c2V0dGluZ3MoKS0+Y2FyZXRCcm93c2luZ0VuYWJsZWQo
KTsKKyAgICBpZiAoY2FyZXRCcm93c2luZykgeworICAgICAgICBzd2l0Y2ggKGtleUV2ZW50LT53
aW5kb3dzVmlydHVhbEtleUNvZGUoKSkgeworICAgICAgICBjYXNlIFZLX0xFRlQ6CisgICAgICAg
ICAgICBmcmFtZS0+c2VsZWN0aW9uKCktPm1vZGlmeShrZXlFdmVudC0+c2hpZnRLZXkoKSA/IFNl
bGVjdGlvbkNvbnRyb2xsZXI6OkFsdGVyYXRpb25FeHRlbmQgOiBTZWxlY3Rpb25Db250cm9sbGVy
OjpBbHRlcmF0aW9uTW92ZSwKKyAgICAgICAgICAgICAgICAgICAgU2VsZWN0aW9uQ29udHJvbGxl
cjo6RGlyZWN0aW9uTGVmdCwKKyAgICAgICAgICAgICAgICAgICAga2V5RXZlbnQtPmN0cmxLZXko
KSA/IFdvcmRHcmFudWxhcml0eSA6IENoYXJhY3RlckdyYW51bGFyaXR5LAorICAgICAgICAgICAg
ICAgICAgICB0cnVlKTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBjYXNlIFZL
X1JJR0hUOgorICAgICAgICAgICAgZnJhbWUtPnNlbGVjdGlvbigpLT5tb2RpZnkoa2V5RXZlbnQt
PnNoaWZ0S2V5KCkgPyBTZWxlY3Rpb25Db250cm9sbGVyOjpBbHRlcmF0aW9uRXh0ZW5kIDogU2Vs
ZWN0aW9uQ29udHJvbGxlcjo6QWx0ZXJhdGlvbk1vdmUsCisgICAgICAgICAgICAgICAgICAgIFNl
bGVjdGlvbkNvbnRyb2xsZXI6OkRpcmVjdGlvblJpZ2h0LAorICAgICAgICAgICAgICAgICAgICBr
ZXlFdmVudC0+Y3RybEtleSgpID8gV29yZEdyYW51bGFyaXR5IDogQ2hhcmFjdGVyR3JhbnVsYXJp
dHksCisgICAgICAgICAgICAgICAgICAgIHRydWUpOworICAgICAgICAgICAgcmV0dXJuIHRydWU7
CisgICAgICAgIGNhc2UgVktfVVA6CisgICAgICAgICAgICBmcmFtZS0+c2VsZWN0aW9uKCktPm1v
ZGlmeShrZXlFdmVudC0+c2hpZnRLZXkoKSA/IFNlbGVjdGlvbkNvbnRyb2xsZXI6OkFsdGVyYXRp
b25FeHRlbmQgOiBTZWxlY3Rpb25Db250cm9sbGVyOjpBbHRlcmF0aW9uTW92ZSwKKyAgICAgICAg
ICAgICAgICAgICAgU2VsZWN0aW9uQ29udHJvbGxlcjo6RGlyZWN0aW9uQmFja3dhcmQsCisgICAg
ICAgICAgICAgICAgICAgIGtleUV2ZW50LT5jdHJsS2V5KCkgPyBQYXJhZ3JhcGhHcmFudWxhcml0
eSA6IExpbmVHcmFudWxhcml0eSwKKyAgICAgICAgICAgICAgICAgICAgdHJ1ZSk7CisgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgY2FzZSBWS19ET1dOOgorICAgICAgICAgICAgZnJh
bWUtPnNlbGVjdGlvbigpLT5tb2RpZnkoa2V5RXZlbnQtPnNoaWZ0S2V5KCkgPyBTZWxlY3Rpb25D
b250cm9sbGVyOjpBbHRlcmF0aW9uRXh0ZW5kIDogU2VsZWN0aW9uQ29udHJvbGxlcjo6QWx0ZXJh
dGlvbk1vdmUsCisgICAgICAgICAgICAgICAgICAgIFNlbGVjdGlvbkNvbnRyb2xsZXI6OkRpcmVj
dGlvbkZvcndhcmQsCisgICAgICAgICAgICAgICAgICAgIGtleUV2ZW50LT5jdHJsS2V5KCkgPyBQ
YXJhZ3JhcGhHcmFudWxhcml0eSA6IExpbmVHcmFudWxhcml0eSwKKyAgICAgICAgICAgICAgICAg
ICAgdHJ1ZSk7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgfQorICAgIH0KKwor
ICAgIEVkaXRvcjo6Q29tbWFuZCBjb21tYW5kID0gZnJhbWUtPmVkaXRvcigpLT5jb21tYW5kKGlu
dGVycHJldEtleUV2ZW50KGV2ZW50KSk7CisKKyAgICBpZiAoa2V5RXZlbnQtPnR5cGUoKSA9PSBQ
bGF0Zm9ybUtleWJvYXJkRXZlbnQ6OlJhd0tleURvd24pIHsKKyAgICAgICAgLy8gV2ViS2l0IGRv
ZXNuJ3QgaGF2ZSBlbm91Z2ggaW5mb3JtYXRpb24gYWJvdXQgbW9kZSB0byBkZWNpZGUgaG93IGNv
bW1hbmRzIHRoYXQganVzdCBpbnNlcnQgdGV4dCBpZiBleGVjdXRlZCB2aWEgRWRpdG9yIHNob3Vs
ZCBiZSB0cmVhdGVkLAorICAgICAgICAvLyBzbyB3ZSBsZWF2ZSBpdCB1cG9uIFdlYkNvcmUgdG8g
ZWl0aGVyIGhhbmRsZSB0aGVtIGltbWVkaWF0ZWx5IChlLmcuIFRhYiB0aGF0IGNoYW5nZXMgZm9j
dXMpIG9yIGxldCBhIGtleXByZXNzIGV2ZW50IGJlIGdlbmVyYXRlZAorICAgICAgICAvLyAoZS5n
LiBUYWIgdGhhdCBpbnNlcnRzIGEgVGFiIGNoYXJhY3Rlciwgb3IgRW50ZXIpLgorICAgICAgICBy
ZXR1cm4gIWNvbW1hbmQuaXNUZXh0SW5zZXJ0aW9uKCkgJiYgY29tbWFuZC5leGVjdXRlKGV2ZW50
KTsKKyAgICB9CisKKyAgICBpZiAoY29tbWFuZC5leGVjdXRlKGV2ZW50KSkKKyAgICAgICAgcmV0
dXJuIHRydWU7CisKKyAgICAvLyBEb24ndCBpbnNlcnQgbnVsbCBvciBjb250cm9sIGNoYXJhY3Rl
cnMgYXMgdGhleSBjYW4gcmVzdWx0IGluIHVuZXhwZWN0ZWQgYmVoYXZpb3VyCisgICAgaWYgKGV2
ZW50LT5jaGFyQ29kZSgpIDwgJyAnKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAvLyBE
b24ndCBpbnNlcnQgYW55dGhpbmcgaWYgYSBtb2RpZmllciBpcyBwcmVzc2VkCisgICAgaWYgKGtl
eUV2ZW50LT5jdHJsS2V5KCkgfHwga2V5RXZlbnQtPmFsdEtleSgpKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisKKyAgICByZXR1cm4gZnJhbWUtPmVkaXRvcigpLT5pbnNlcnRUZXh0KGV2ZW50LT5r
ZXlFdmVudCgpLT50ZXh0KCksIGV2ZW50KTsKK30KKwogdm9pZCBFZGl0b3JDbGllbnRXaW5DRTo6
aGFuZGxlS2V5Ym9hcmRFdmVudChLZXlib2FyZEV2ZW50KiBldmVudCkKIHsKLSAgICBub3RJbXBs
ZW1lbnRlZCgpOworICAgIGlmIChoYW5kbGVFZGl0aW5nS2V5Ym9hcmRFdmVudChldmVudCkpCisg
ICAgICAgIGV2ZW50LT5zZXREZWZhdWx0SGFuZGxlZCgpOwogfQogCiB2b2lkIEVkaXRvckNsaWVu
dFdpbkNFOjpoYW5kbGVJbnB1dE1ldGhvZEtleWRvd24oS2V5Ym9hcmRFdmVudCogZXZlbnQpCmRp
ZmYgLS1naXQgYS9XZWJLaXQvd2luY2UvV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xpZW50V2luQ0Uu
aCBiL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRXaW5DRS5oCmluZGV4
IDBhZDBhMTkuLmJlODViM2YgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9y
dC9FZGl0b3JDbGllbnRXaW5DRS5oCisrKyBiL1dlYktpdC93aW5jZS9XZWJDb3JlU3VwcG9ydC9F
ZGl0b3JDbGllbnRXaW5DRS5oCkBAIC03Niw2ICs3Niw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IHZvaWQgdW5kbygpOwogICAgIHZpcnR1YWwgdm9pZCByZWRvKCk7CiAKKyAgICB2aXJ0dWFsIGNv
bnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50KGNvbnN0IFdlYkNvcmU6OktleWJvYXJkRXZlbnQq
KTsKKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRWRpdGluZ0tleWJvYXJkRXZlbnQoV2ViQ29yZTo6
S2V5Ym9hcmRFdmVudCopOwogICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVLZXlib2FyZEV2ZW50KFdl
YkNvcmU6OktleWJvYXJkRXZlbnQqKTsKICAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlSW5wdXRNZXRo
b2RLZXlkb3duKFdlYkNvcmU6OktleWJvYXJkRXZlbnQqKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>