<?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>137903</bug_id>
          
          <creation_ts>2014-10-20 17:38:44 -0700</creation_ts>
          <short_desc>Use synchronous messages for keyEvent on iOS</short_desc>
          <delta_ts>2014-10-23 10:18:04 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>WONTFIX</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="Enrica Casucci">enrica</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1043029</commentid>
    <comment_count>0</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2014-10-20 17:38:44 -0700</bug_when>
    <thetext>Given then synchronous nature of the iOS keyboard, we need to have key event messages that are synchronous.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043034</commentid>
    <comment_count>1</comment_count>
      <attachid>240164</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2014-10-20 17:46:15 -0700</bug_when>
    <thetext>Created attachment 240164
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043109</commentid>
    <comment_count>2</comment_count>
      <attachid>240164</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-20 22:59:07 -0700</bug_when>
    <thetext>Comment on attachment 240164
Patch

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

Oh noes :(

&gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1582
&gt; +void WebPageProxy::handleKeyboardEvent(const NativeWebKeyboardEvent&amp; event, bool useSynchronousMessage)

Can this be made into an entirely separate code path? This code is so complicated that mixing sync and async code paths seems very confusing.

Or at the very least, the argument should be named, not a cryptic &quot;true/false&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043238</commentid>
    <comment_count>3</comment_count>
      <attachid>240164</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2014-10-21 11:26:13 -0700</bug_when>
    <thetext>Comment on attachment 240164
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1582
&gt;&gt; +void WebPageProxy::handleKeyboardEvent(const NativeWebKeyboardEvent&amp; event, bool useSynchronousMessage)
&gt; 
&gt; Can this be made into an entirely separate code path? This code is so complicated that mixing sync and async code paths seems very confusing.
&gt; 
&gt; Or at the very least, the argument should be named, not a cryptic &quot;true/false&quot;.

I don&apos;t think the code is that complicated and I did not want any duplication. The function has a default value of false, so all the other call sites don&apos;t even need to know about this parameter.
The only place where this is used is in WKContentViewInteraction where it is passed [self useSynchronousKeyEvent], which is pretty clear.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043658</commentid>
    <comment_count>4</comment_count>
      <attachid>240164</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-10-22 20:05:12 -0700</bug_when>
    <thetext>Comment on attachment 240164
Patch

Having discussed this in person, we&apos;d like to try a different approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1043764</commentid>
    <comment_count>5</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2014-10-23 10:17:51 -0700</bug_when>
    <thetext>We opted for a different solution to the problem. We are not going to pursue this.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240164</attachid>
            <date>2014-10-20 17:46:15 -0700</date>
            <delta_ts>2014-10-23 10:16:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>kbdeadlock-webkit.txt</filename>
            <type>text/plain</type>
            <size>7821</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NDkxMykKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI5IEBACisyMDE0LTEwLTIwICBFbnJpY2Eg
Q2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIHN5bmNocm9ub3VzIG1l
c3NhZ2VzIGZvciBrZXlFdmVudCBvbiBpT1MuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzc5MDMKKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMTg1Njky
NTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBoYW5k
bGVLZXlib2FyZEV2ZW50IGNhbiBub3cgdXNlIGJvdGggYXN5bmNocm9ub3VzIG9yIHN5bmNocm9u
b3VzCisgICAgICAgIG1lc3NhZ2VzIHRvIGNvbW11bmljYXRlIHRoZSBrZXkgZXZlbnRzIHRvIHRo
ZSBXZWJQcm9jZXNzLgorICAgICAgICBPbiBpT1Mgd2UgYWx3YXlzIHVzZSB0aGUgc3luY2hyb25v
dXMgb25lcy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmhhbmRsZUtleWJvYXJkRXZlbnQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZFJlY2VpdmVFdmVudCk6CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IHVzZVN5bmNocm9ub3Vz
S2V5RXZlbnRdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBoYW5kbGVLZXlXZWJFdmVudDpd
KToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfZGlkSGFuZGxlS2V5RXZlbnQ6XSk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlOjprZXlFdmVudCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnN5bmNLZXlFdmVu
dCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKwogMjAxNC0xMC0yMCAgQmV0
aCBEYWtpbiAgPGJkYWtpbkBhcHBsZS5jb20+CiAKICAgICAgICAgQWN0aW9uIG1lbnUgaXRlbXMg
c2hvdWxkIGhhdmUgdGFncwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAJKHJldmlzaW9uIDE3NDc5OCkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNTc5LDcgKzE1NzksNyBAQCB2b2lk
IFdlYlBhZ2VQcm94eTo6c2VuZFdoZWVsRXZlbnQoY29uc3QgCiAgICAgICAgICksIDApOwogfQog
Ci12b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlS2V5Ym9hcmRFdmVudChjb25zdCBOYXRpdmVXZWJL
ZXlib2FyZEV2ZW50JiBldmVudCkKK3ZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVLZXlib2FyZEV2
ZW50KGNvbnN0IE5hdGl2ZVdlYktleWJvYXJkRXZlbnQmIGV2ZW50LCBib29sIHVzZVN5bmNocm9u
b3VzTWVzc2FnZSkKIHsKICAgICBpZiAoIWlzVmFsaWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAt
MTU4OSwxMiArMTU4OSwxNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlS2V5Ym9hcmRFdmVu
dChjCiAgICAgbV9rZXlFdmVudFF1ZXVlLmFwcGVuZChldmVudCk7CiAKICAgICBtX3Byb2Nlc3Mt
PnJlc3BvbnNpdmVuZXNzVGltZXIoKS0+c3RhcnQoKTsKKyAgICBib29sIGhhbmRsZWQgPSBmYWxz
ZTsKICAgICBpZiAobV9zaG91bGRTZW5kRXZlbnRzU3luY2hyb25vdXNseSkgewotICAgICAgICBi
b29sIGhhbmRsZWQgPSBmYWxzZTsKICAgICAgICAgbV9wcm9jZXNzLT5zZW5kU3luYyhNZXNzYWdl
czo6V2ViUGFnZTo6S2V5RXZlbnRTeW5jRm9yVGVzdGluZyhldmVudCksIE1lc3NhZ2VzOjpXZWJQ
YWdlOjpLZXlFdmVudFN5bmNGb3JUZXN0aW5nOjpSZXBseShoYW5kbGVkKSwgbV9wYWdlSUQpOwog
ICAgICAgICBkaWRSZWNlaXZlRXZlbnQoZXZlbnQudHlwZSgpLCBoYW5kbGVkKTsKLSAgICB9IGVs
c2UgaWYgKG1fa2V5RXZlbnRRdWV1ZS5zaXplKCkgPT0gMSkgLy8gT3RoZXJ3aXNlLCBzZW50IGZy
b20gRGlkUmVjZWl2ZUV2ZW50IG1lc3NhZ2UgaGFuZGxlci4KLSAgICAgICAgbV9wcm9jZXNzLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpLZXlFdmVudChldmVudCksIG1fcGFnZUlEKTsKKyAgICB9
IGVsc2UgaWYgKG1fa2V5RXZlbnRRdWV1ZS5zaXplKCkgPT0gMSkgeyAvLyBPdGhlcndpc2UsIHNl
bnQgZnJvbSBEaWRSZWNlaXZlRXZlbnQgbWVzc2FnZSBoYW5kbGVyLgorICAgICAgICBpZiAodXNl
U3luY2hyb25vdXNNZXNzYWdlKSB7CisgICAgICAgICAgICBtX3Byb2Nlc3MtPnNlbmRTeW5jKE1l
c3NhZ2VzOjpXZWJQYWdlOjpTeW5jS2V5RXZlbnQoZXZlbnQpLCBNZXNzYWdlczo6V2ViUGFnZTo6
U3luY0tleUV2ZW50OjpSZXBseShoYW5kbGVkKSwgbV9wYWdlSUQpOworICAgICAgICAgICAgZGlk
UmVjZWl2ZUV2ZW50KGV2ZW50LnR5cGUoKSwgaGFuZGxlZCk7CisgICAgICAgIH0gZWxzZQorICAg
ICAgICAgICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpLZXlFdmVudChldmVu
dCksIG1fcGFnZUlEKTsKKyAgICB9CiB9CiAKIHVpbnQ2NF90IFdlYlBhZ2VQcm94eTo6Z2VuZXJh
dGVOYXZpZ2F0aW9uSUQoKQpAQCAtNDEyOCw2ICs0MTMzLDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6
OmRpZFJlY2VpdmVFdmVudCh1aW50MwogICAgICAgICBNRVNTQUdFX0NIRUNLKHR5cGUgPT0gZXZl
bnQudHlwZSgpKTsKIAogICAgICAgICBpZiAoIW1fa2V5RXZlbnRRdWV1ZS5pc0VtcHR5KCkpCisg
ICAgICAgICAgICAvLyBUaGlzIG5ldmVyIGhhcHBlbnMgd2hlbiB3ZSBhcmUgdXNpbmcgc3luY2hy
b25vdXMga2V5IGV2ZW50cy4KICAgICAgICAgICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6
V2ViUGFnZTo6S2V5RXZlbnQobV9rZXlFdmVudFF1ZXVlLmZpcnN0KCkpLCBtX3BhZ2VJRCk7CiAK
ICAgICAgICAgbV9wYWdlQ2xpZW50LmRvbmVXaXRoS2V5RXZlbnQoZXZlbnQsIGhhbmRsZWQpOwpJ
bmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gMTc0
Nzk4KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5n
IGNvcHkpCkBAIC01MjgsNyArNTI4LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBoYW5kbGVNb3Vz
ZUV2ZW50KGNvbnN0IE5hdGl2ZVdlYk1vdXNlRXZlbnQmKTsKICAgICB2b2lkIGhhbmRsZVdoZWVs
RXZlbnQoY29uc3QgTmF0aXZlV2ViV2hlZWxFdmVudCYpOwotICAgIHZvaWQgaGFuZGxlS2V5Ym9h
cmRFdmVudChjb25zdCBOYXRpdmVXZWJLZXlib2FyZEV2ZW50Jik7CisgICAgdm9pZCBoYW5kbGVL
ZXlib2FyZEV2ZW50KGNvbnN0IE5hdGl2ZVdlYktleWJvYXJkRXZlbnQmLCBib29sIHVzZVN5bmNo
cm9ub3VzTWVzc2FnZSA9IGZhbHNlKTsKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKICAg
ICB2b2lkIGhhbmRsZVRvdWNoRXZlbnRTeW5jaHJvbm91c2x5KGNvbnN0IE5hdGl2ZVdlYlRvdWNo
RXZlbnQmKTsKICAgICB2b2lkIGhhbmRsZVRvdWNoRXZlbnRBc3luY2hyb25vdXNseShjb25zdCBO
YXRpdmVXZWJUb3VjaEV2ZW50Jik7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQkocmV2aXNpb24gMTc0
Nzk4KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24ubW0JKHdvcmtpbmcgY29weSkKQEAgLTIyMzEsMTggKzIyMzEsMjAgQEAgLSAoQk9PTCly
ZXF1aXJlc0tleUV2ZW50cwogICAgIHJldHVybiBZRVM7CiB9CiAKKy0gKEJPT0wpdXNlU3luY2hy
b25vdXNLZXlFdmVudAoreworICAgIHJldHVybiBZRVM7Cit9CisKIC0gKHZvaWQpaGFuZGxlS2V5
V2ViRXZlbnQ6KFdlYklPU0V2ZW50ICopdGhlRXZlbnQKIHsKLSAgICBfcGFnZS0+aGFuZGxlS2V5
Ym9hcmRFdmVudChOYXRpdmVXZWJLZXlib2FyZEV2ZW50KHRoZUV2ZW50KSk7CisgICAgX3BhZ2Ut
PmhhbmRsZUtleWJvYXJkRXZlbnQoTmF0aXZlV2ViS2V5Ym9hcmRFdmVudCh0aGVFdmVudCksIFtz
ZWxmIHVzZVN5bmNocm9ub3VzS2V5RXZlbnRdKTsKIH0KIAogLSAodm9pZClfZGlkSGFuZGxlS2V5
RXZlbnQ6KFdlYklPU0V2ZW50ICopZXZlbnQKIHsKLSAgICBpZiAoZXZlbnQudHlwZSA9PSBXZWJF
dmVudEtleURvd24pIHsKLSAgICAgICAgLy8gRklYTUU6IFRoaXMgaXMgb25seSBmb3Igc3RhZ2lu
ZyBwdXJwb3Nlcy4KLSAgICAgICAgaWYgKFtbVUlLZXlib2FyZEltcGwgc2hhcmVkSW5zdGFuY2Vd
IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoZGlkSGFuZGxlV2ViS2V5RXZlbnQpXSkKLSAg
ICAgICAgICAgIFtbVUlLZXlib2FyZEltcGwgc2hhcmVkSW5zdGFuY2VdIGRpZEhhbmRsZVdlYktl
eUV2ZW50XTsKLSAgICB9CisgICAgaWYgKGV2ZW50LnR5cGUgPT0gV2ViRXZlbnRLZXlEb3duKQor
ICAgICAgICBbW1VJS2V5Ym9hcmRJbXBsIHNoYXJlZEluc3RhbmNlXSBkaWRIYW5kbGVXZWJLZXlF
dmVudF07CiB9CiAKIC0gKEJPT0wpX2ludGVycHJldEtleUV2ZW50OihXZWJJT1NFdmVudCAqKWV2
ZW50IGlzQ2hhckV2ZW50OihCT09MKWlzQ2hhckV2ZW50CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAxNzQ3OTgpCisrKyBT
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE5ODgsMTAgKzE5ODgsMTggQEAgc3RhdGljIGJvb2wgaGFuZGxlS2V5RXZlbnQoY29u
c3QgV2ViS2V5YgogCiB2b2lkIFdlYlBhZ2U6OmtleUV2ZW50KGNvbnN0IFdlYktleWJvYXJkRXZl
bnQmIGtleWJvYXJkRXZlbnQpCiB7Ci0gICAgbV9wYWdlLT5wYWdlVGhyb3R0bGVyKCkuZGlkUmVj
ZWl2ZVVzZXJJbnB1dCgpOwotCiAgICAgYm9vbCBoYW5kbGVkID0gZmFsc2U7CisgICAgCisgICAg
c3luY0tleUV2ZW50KGtleWJvYXJkRXZlbnQsIGhhbmRsZWQpOworICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RGlkUmVjZWl2ZUV2ZW50KHN0YXRpY19jYXN0PHVpbnQzMl90PihrZXli
b2FyZEV2ZW50LnR5cGUoKSksIGhhbmRsZWQpKTsKK30KIAordm9pZCBXZWJQYWdlOjpzeW5jS2V5
RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYga2V5Ym9hcmRFdmVudCwgYm9vbCYgaGFuZGxl
ZCkKK3sKKyAgICBtX3BhZ2UtPnBhZ2VUaHJvdHRsZXIoKS5kaWRSZWNlaXZlVXNlcklucHV0KCk7
CisgICAgCisgICAgaGFuZGxlZCA9IGZhbHNlOworICAgIAogICAgIGlmIChjYW5IYW5kbGVVc2Vy
RXZlbnRzKCkpIHsKICAgICAgICAgQ3VycmVudEV2ZW50IGN1cnJlbnRFdmVudChrZXlib2FyZEV2
ZW50KTsKIApAQCAtMjAwMCw3ICsyMDA4LDYgQEAgdm9pZCBXZWJQYWdlOjprZXlFdmVudChjb25z
dCBXZWJLZXlib2FyZAogICAgICAgICBpZiAoIWhhbmRsZWQpCiAgICAgICAgICAgICBoYW5kbGVk
ID0gcGVyZm9ybURlZmF1bHRCZWhhdmlvckZvcktleUV2ZW50KGtleWJvYXJkRXZlbnQpOwogICAg
IH0KLSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFJlY2VpdmVFdmVudChzdGF0
aWNfY2FzdDx1aW50MzJfdD4oa2V5Ym9hcmRFdmVudC50eXBlKCkpLCBoYW5kbGVkKSk7CiB9CiAK
IHZvaWQgV2ViUGFnZTo6a2V5RXZlbnRTeW5jRm9yVGVzdGluZyhjb25zdCBXZWJLZXlib2FyZEV2
ZW50JiBrZXlib2FyZEV2ZW50LCBib29sJiBoYW5kbGVkKQpJbmRleDogU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCShyZXZpc2lvbiAxNzQ3OTgpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC05MDksNiArOTA5LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIG1vdXNlRXZlbnRTeW5jRm9yVGVz
dGluZyhjb25zdCBXZWJNb3VzZUV2ZW50JiwgYm9vbCYpOwogICAgIHZvaWQgd2hlZWxFdmVudFN5
bmNGb3JUZXN0aW5nKGNvbnN0IFdlYldoZWVsRXZlbnQmLCBib29sJik7CiAgICAgdm9pZCBrZXlF
dmVudChjb25zdCBXZWJLZXlib2FyZEV2ZW50Jik7CisgICAgdm9pZCBzeW5jS2V5RXZlbnQoY29u
c3QgV2ViS2V5Ym9hcmRFdmVudCYsIGJvb2wmKTsKICAgICB2b2lkIGtleUV2ZW50U3luY0ZvclRl
c3RpbmcoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYsIGJvb2wmKTsKICNpZiBFTkFCTEUoSU9TX1RP
VUNIX0VWRU5UUykKICAgICB2b2lkIHRvdWNoRXZlbnRTeW5jKGNvbnN0IFdlYlRvdWNoRXZlbnQm
LCBib29sJiBoYW5kbGVkKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCShyZXZpc2lvbiAxNzQ3OTgpCisrKyBT
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgkod29y
a2luZyBjb3B5KQpAQCAtMzgsNiArMzgsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlIExlZ2FjeVJl
Y2VpdmVyIHsKICAgICBWaWV3V2lsbEVuZExpdmVSZXNpemUoKQogCiAgICAgS2V5RXZlbnQoV2Vi
S2l0OjpXZWJLZXlib2FyZEV2ZW50IGV2ZW50KQorICAgIFN5bmNLZXlFdmVudChXZWJLaXQ6Oldl
YktleWJvYXJkRXZlbnQgZXZlbnQpIC0+IChib29sIGhhbmRsZWQpCiAgICAgS2V5RXZlbnRTeW5j
Rm9yVGVzdGluZyhXZWJLaXQ6OldlYktleWJvYXJkRXZlbnQgZXZlbnQpIC0+IChib29sIGhhbmRs
ZWQpCiAgICAgTW91c2VFdmVudChXZWJLaXQ6OldlYk1vdXNlRXZlbnQgZXZlbnQpCiAgICAgTW91
c2VFdmVudFN5bmNGb3JUZXN0aW5nKFdlYktpdDo6V2ViTW91c2VFdmVudCBldmVudCkgLT4gKGJv
b2wgaGFuZGxlZCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>