<?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>34685</bug_id>
          
          <creation_ts>2010-02-06 14:29:44 -0800</creation_ts>
          <short_desc>[Haiku] Fix various problems in mouse/wheel/keyboard event propagation</short_desc>
          <delta_ts>2010-02-23 04:53:18 -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>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>0</everconfirmed>
          <reporter name="Stephan Aßmus">superstippi</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>leavengood</cc>
    
    <cc>simon.maxime</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>188474</commentid>
    <comment_count>0</comment_count>
    <who name="Stephan Aßmus">superstippi</who>
    <bug_when>2010-02-06 14:29:44 -0800</bug_when>
    <thetext>* Some compiler warnings were fixed.
 * Wrong coordinates were extracted from the Haiku event BMessage, resulting in
an offset for mouse moved events.
 * Improved the compatibility of keyboard events.
 * Use the correct code for the tab/backspace key in EventHandlerHaiku.cpp and
fix the build by not including PlatformScrollBar.h
 * Generate a correct timestamp for mouse/wheel events. The value is documented
as being in seconds.
 * Fill the modifier flags in mouse/wheel events.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>188475</commentid>
    <comment_count>1</comment_count>
      <attachid>48298</attachid>
    <who name="Stephan Aßmus">superstippi</who>
    <bug_when>2010-02-06 14:31:35 -0800</bug_when>
    <thetext>Created attachment 48298
Various fixes to mouse/wheel/keyboard event propagation on Haiku

Patch against r54275, but touches only Haiku code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>189457</commentid>
    <comment_count>2</comment_count>
      <attachid>48298</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-10 13:30:11 -0800</bug_when>
    <thetext>Comment on attachment 48298
Various fixes to mouse/wheel/keyboard event propagation on Haiku

 39 #include &lt;stdio.h&gt;
seems wrong.

The EWS bots seem to think this patch does not apply.  Marking it cq-.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>190336</commentid>
    <comment_count>3</comment_count>
    <who name="Ryan Leavengood">leavengood</who>
    <bug_when>2010-02-14 11:06:21 -0800</bug_when>
    <thetext>Hi Eric,

What is the next step on this now? Remove the #include &lt;stdio.h&gt; line and make a new patch against the latest WebKit? Though considering this only touches Haiku-specific files it should not matter what version of WebKit a patch is made against since no one else is touching our port.

I&apos;m also a bit confused as to why the EWS bots would think this patch does not apply, since again it only touches our port code. Assuming that happens again can someone apply this manually?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191271</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-17 15:52:40 -0800</bug_when>
    <thetext>You can click on the purple bubbles to see the EWS bot results:

Failed to run &quot;[&apos;/mnt/git/webkit-chromium-ews/WebKitTools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1
patching file WebCore/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file WebCore/page/haiku/EventHandlerHaiku.cpp
patching file WebCore/platform/haiku/PlatformKeyboardEventHaiku.cpp
patching file WebCore/platform/haiku/PlatformMouseEventHaiku.cpp
patching file WebCore/platform/haiku/PlatformWheelEventHaiku.cpp
Hunk #3 FAILED at 40.
1 out of 3 hunks FAILED -- saving rejects to file WebCore/platform/haiku/PlatformWheelEventHaiku.cpp.rej</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191425</commentid>
    <comment_count>5</comment_count>
      <attachid>48973</attachid>
    <who name="Stephan Aßmus">superstippi</who>
    <bug_when>2010-02-17 23:34:56 -0800</bug_when>
    <thetext>Created attachment 48973
Fix various issues of PlatformMouseEventHaiku.cpp

Smaller patch covering just PlatformMouseEventHaiku.cpp. Patch is against r54932.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191430</commentid>
    <comment_count>6</comment_count>
      <attachid>48976</attachid>
    <who name="Stephan Aßmus">superstippi</who>
    <bug_when>2010-02-17 23:42:28 -0800</bug_when>
    <thetext>Created attachment 48976
Some fixes to PlatformWheelEventHaiku.cpp

Smaller patch for just the PlatformWheelEventHaiku.cpp fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191436</commentid>
    <comment_count>7</comment_count>
      <attachid>48977</attachid>
    <who name="Stephan Aßmus">superstippi</who>
    <bug_when>2010-02-17 23:53:49 -0800</bug_when>
    <thetext>Created attachment 48977
Fixes to PlatformKeyboardEventHaiku.cpp

Smaller patch for just PlatformKeyboardEventHaiku.cpp. Patch against r54932.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191447</commentid>
    <comment_count>8</comment_count>
      <attachid>48979</attachid>
    <who name="Stephan Aßmus">superstippi</who>
    <bug_when>2010-02-18 00:08:59 -0800</bug_when>
    <thetext>Created attachment 48979
Various improvements to EventHandlerHaiku.cpp

Smaller patch for just EventHandlerHaiku.cpp. Patch against r54938. Compared to the original patch, the methods have been implemented according to the Gtk port, and the non-implemented passSubframeEventToSubframe() method, which all the other methods called, has been removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192591</commentid>
    <comment_count>9</comment_count>
      <attachid>48973</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-22 13:29:41 -0800</bug_when>
    <thetext>Comment on attachment 48973
Fix various issues of PlatformMouseEventHaiku.cpp

OK.  mostly rs=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192592</commentid>
    <comment_count>10</comment_count>
      <attachid>48976</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-22 13:30:32 -0800</bug_when>
    <thetext>Comment on attachment 48976
Some fixes to PlatformWheelEventHaiku.cpp

These tiny patches are *sooooo* much easier to review, thank you!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192593</commentid>
    <comment_count>11</comment_count>
      <attachid>48977</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-22 13:32:48 -0800</bug_when>
    <thetext>Comment on attachment 48977
Fixes to PlatformKeyboardEventHaiku.cpp

Sad that this same code is copy/paste in all 3 platform events:
    int32 modifiers = message-&gt;FindInt32(&quot;modifiers&quot;);
 351     m_shiftKey = modifiers &amp; B_SHIFT_KEY;
 352     m_ctrlKey = modifiers &amp; B_COMMAND_KEY;
 353     m_altKey = modifiers &amp; B_CONTROL_KEY;
 354     m_metaKey = modifiers &amp; B_OPTION_KEY;

Looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192594</commentid>
    <comment_count>12</comment_count>
      <attachid>48979</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-22 13:34:39 -0800</bug_when>
    <thetext>Comment on attachment 48979
Various improvements to EventHandlerHaiku.cpp

OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192722</commentid>
    <comment_count>13</comment_count>
      <attachid>48973</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-22 17:29:14 -0800</bug_when>
    <thetext>Comment on attachment 48973
Fix various issues of PlatformMouseEventHaiku.cpp

Clearing flags on attachment: 48973

Committed r55116: &lt;http://trac.webkit.org/changeset/55116&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192824</commentid>
    <comment_count>14</comment_count>
      <attachid>48976</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-23 01:15:04 -0800</bug_when>
    <thetext>Comment on attachment 48976
Some fixes to PlatformWheelEventHaiku.cpp

Clearing flags on attachment: 48976

Committed r55130: &lt;http://trac.webkit.org/changeset/55130&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192862</commentid>
    <comment_count>15</comment_count>
      <attachid>48977</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-23 03:10:02 -0800</bug_when>
    <thetext>Comment on attachment 48977
Fixes to PlatformKeyboardEventHaiku.cpp

Clearing flags on attachment: 48977

Committed r55138: &lt;http://trac.webkit.org/changeset/55138&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192884</commentid>
    <comment_count>16</comment_count>
      <attachid>48979</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-23 04:53:13 -0800</bug_when>
    <thetext>Comment on attachment 48979
Various improvements to EventHandlerHaiku.cpp

Clearing flags on attachment: 48979

Committed r55145: &lt;http://trac.webkit.org/changeset/55145&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192885</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-23 04:53:18 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48298</attachid>
            <date>2010-02-06 14:31:35 -0800</date>
            <delta_ts>2010-02-17 23:34:56 -0800</delta_ts>
            <desc>Various fixes to mouse/wheel/keyboard event propagation on Haiku</desc>
            <filename>events2.diff</filename>
            <type>text/plain</type>
            <size>13098</size>
            <attacher name="Stephan Aßmus">superstippi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NDMyNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMTAtMDItMDMgIFN0ZXBoYW4gQcOfbXVzICA8c3VwZXJzdGlwcGlA
Z214LmRlPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFZhcmlvdXMgZml4ZXMgdG8gbW91c2Uvd2hlZWwva2V5Ym9hcmQgZXZlbnQgcHJvcGFnYXRpb24g
b24gSGFpa3UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM0Njg1CisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAq
IHBhZ2UvaGFpa3UvRXZlbnRIYW5kbGVySGFpa3UuY3BwOiBGaXggdGhlIGJ1aWxkIGJ5IG5vdCBp
bmNsdWRpbmcgUGxhdGZvcm1TY3JvbGxCYXIuaAorICAgICAgICAoV2ViQ29yZTo6aXNLZXlib2Fy
ZE9wdGlvblRhYik6IFVzZSBjb3JyZWN0IGNvZGUgZm9yIFRhYi9CYWNrc3BhY2Uga2V5CisgICAg
ICAgICogcGxhdGZvcm0vaGFpa3UvUGxhdGZvcm1LZXlib2FyZEV2ZW50SGFpa3UuY3BwOiBJbXBy
b3ZlZCB0aGUgY29tcGF0aWJpbGl0eS4KKyAgICAgICAgKFdlYkNvcmU6OmtleUlkZW50aWZpZXJG
b3JIYWlrdUtleUNvZGUpOiAKKyAgICAgICAgKFdlYkNvcmU6OndpbmRvd3NLZXlDb2RlRm9yS2V5
RXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1LZXlib2FyZEV2ZW50OjpQbGF0Zm9y
bUtleWJvYXJkRXZlbnQpOgorICAgICAgICAqIHBsYXRmb3JtL2hhaWt1L1BsYXRmb3JtTW91c2VF
dmVudEhhaWt1LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTW91c2VFdmVudDo6UGxh
dGZvcm1Nb3VzZUV2ZW50KTogRXh0cmFjdCBjb3JyZWN0IGNvb3JkaW5hdGVzLCBmaWxsIHRoZSBt
b2RpZmllciBmbGFncywgZ2VuZXJhdGUgYSBjb3JyZWN0IHRpbWVzdGFtcCwgZml4IHdhcm5pbmdz
LgorICAgICAgICAqIHBsYXRmb3JtL2hhaWt1L1BsYXRmb3JtV2hlZWxFdmVudEhhaWt1LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtV2hlZWxFdmVudDo6UGxhdGZvcm1XaGVlbEV2ZW50
KTogRmlsbCB0aGUgbW9kaWZpZXIgZmxhZ3MsIGdlbmVyYXRlIGEgY29ycmVjdCB0aW1lc3RhbXAs
IGZpeCB3YXJuaW5ncy4KKwogMjAxMC0wMi0wMyAgU3RldmUgRmFsa2VuYnVyZyAgPHNmYWxrZW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFdpbmRvd3MgRGVidWdfQWxsIGJ1aWxkIGZpeC4KSW5kZXg6
IFdlYkNvcmUvcGFnZS9oYWlrdS9FdmVudEhhbmRsZXJIYWlrdS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9wYWdlL2hhaWt1L0V2ZW50SGFuZGxlckhhaWt1LmNwcAkocmV2aXNpb24gNTQyNzUp
CisrKyBXZWJDb3JlL3BhZ2UvaGFpa3UvRXZlbnRIYW5kbGVySGFpa3UuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zOSw3ICszOSw2IEBACiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNs
dWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1LZXlib2FyZEV2ZW50LmgiCi0jaW5jbHVk
ZSAiUGxhdGZvcm1TY3JvbGxCYXIuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdoZWVsRXZlbnQuaCIK
ICNpbmNsdWRlICJSZW5kZXJXaWRnZXQuaCIKIApAQCAtNTYsNyArNTUsNyBAQAogICAgICAgICAm
JiAoZXZlbnQtPnR5cGUoKSA9PSBldmVudE5hbWVzKCkua2V5ZG93bkV2ZW50CiAgICAgICAgICAg
ICB8fCBldmVudC0+dHlwZSgpID09IGV2ZW50TmFtZXMoKS5rZXlwcmVzc0V2ZW50KQogICAgICAg
ICAmJiBldmVudC0+YWx0S2V5KCkKLSAgICAgICAgJiYgZXZlbnQtPmtleUlkZW50aWZpZXIoKSA9
PSAiVSswMDAwMDkiOworICAgICAgICAmJiBldmVudC0+a2V5SWRlbnRpZmllcigpID09ICJVKzAw
MDkiOwogfQogCiBib29sIEV2ZW50SGFuZGxlcjo6aW52ZXJ0U2Vuc2VPZlRhYnNUb0xpbmtzKEtl
eWJvYXJkRXZlbnQqIGV2ZW50KSBjb25zdApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9oYWlrdS9Q
bGF0Zm9ybUtleWJvYXJkRXZlbnRIYWlrdS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0
Zm9ybS9oYWlrdS9QbGF0Zm9ybUtleWJvYXJkRXZlbnRIYWlrdS5jcHAJKHJldmlzaW9uIDU0Mjc1
KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9oYWlrdS9QbGF0Zm9ybUtleWJvYXJkRXZlbnRIYWlrdS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEsNiArMSw3IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAy
MDA3IFJ5YW4gTGVhdmVuZ29vZCA8bGVhdmVuZ29vZEBnbWFpbC5jb20+CiAgKiBDb3B5cmlnaHQg
KEMpIDIwMDggQW5kcmVhIEFuemFuaSA8YW5kcmVhLmFuemFuaUBnbWFpbC5jb20+CisgKiBDb3B5
cmlnaHQgKEMpIDIwMTAgU3RlcGhhbiBBw59tdXMgPHN1cGVyc3RpcHBpQGdteC5kZT4KICAqCiAg
KiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTI5LDExICszMCwxMyBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oIgogCisjaW5jbHVk
ZSAiQ1N0cmluZy5oIgogI2luY2x1ZGUgIktleWJvYXJkQ29kZXMuaCIKICNpbmNsdWRlICJOb3RJ
bXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgPEludGVyZmFjZURlZnMuaD4KICNpbmNsdWRlIDxNZXNz
YWdlLmg+CiAjaW5jbHVkZSA8U3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KIAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC03OCw3ICs4MSw3IEBACiAgICAgICAgIGJyZWFrOwogCiAgICAg
Y2FzZSBCX0JBQ0tTUEFDRToKLSAgICAgICAgcmV0dXJuICJVKzAwMDkiOworICAgICAgICByZXR1
cm4gIlUrMDAwOCI7CiAgICAgY2FzZSBCX0xFRlRfQVJST1c6CiAgICAgICAgIHJldHVybiAiTGVm
dCI7CiAgICAgY2FzZSBCX1JJR0hUX0FSUk9XOgpAQCAtMTA1LDEyICsxMDgsNDcgQEAKICAgICAg
ICAgcmV0dXJuICJVKzAwMDkiOwogICAgIH0KIAotICAgIHJldHVybiBTdHJpbmc6OmZvcm1hdCgi
VSslMDRYIiwgdG9BU0NJSVVwcGVyKGtleUNvZGUpKTsKKyAgICByZXR1cm4gU3RyaW5nOjpmb3Jt
YXQoIlUrJTA0WCIsIHRvQVNDSUlVcHBlcihzaW5nbGVCeXRlKSk7CiB9CiAKLXN0YXRpYyBpbnQg
d2luZG93c0tleUNvZGVGb3JLZXlFdmVudChjaGFyIHNpbmdsZUJ5dGUpCitzdGF0aWMgaW50IHdp
bmRvd3NLZXlDb2RlRm9yS2V5RXZlbnQoY2hhciBzaW5nbGVCeXRlLCBpbnQga2V5Q29kZSkKIHsK
ICAgICBzd2l0Y2ggKHNpbmdsZUJ5dGUpIHsKKyAgICBjYXNlIEJfRlVOQ1RJT05fS0VZOgorICAg
ICAgICBzd2l0Y2ggKGtleUNvZGUpIHsKKyAgICAgICAgY2FzZSBCX0YxX0tFWToKKyAgICAgICAg
ICAgIHJldHVybiBWS19GMTsKKyAgICAgICAgY2FzZSBCX0YyX0tFWToKKyAgICAgICAgICAgIHJl
dHVybiBWS19GMjsKKyAgICAgICAgY2FzZSBCX0YzX0tFWToKKyAgICAgICAgICAgIHJldHVybiBW
S19GMzsKKyAgICAgICAgY2FzZSBCX0Y0X0tFWToKKyAgICAgICAgICAgIHJldHVybiBWS19GNDsK
KyAgICAgICAgY2FzZSBCX0Y1X0tFWToKKyAgICAgICAgICAgIHJldHVybiBWS19GNTsKKyAgICAg
ICAgY2FzZSBCX0Y2X0tFWToKKyAgICAgICAgICAgIHJldHVybiBWS19GNjsKKyAgICAgICAgY2Fz
ZSBCX0Y3X0tFWToKKyAgICAgICAgICAgIHJldHVybiBWS19GNzsKKyAgICAgICAgY2FzZSBCX0Y4
X0tFWToKKyAgICAgICAgICAgIHJldHVybiBWS19GODsKKyAgICAgICAgY2FzZSBCX0Y5X0tFWToK
KyAgICAgICAgICAgIHJldHVybiBWS19GOTsKKyAgICAgICAgY2FzZSBCX0YxMF9LRVk6CisgICAg
ICAgICAgICByZXR1cm4gVktfRjEwOworICAgICAgICBjYXNlIEJfRjExX0tFWToKKyAgICAgICAg
ICAgIHJldHVybiBWS19GMTE7CisgICAgICAgIGNhc2UgQl9GMTJfS0VZOgorICAgICAgICAgICAg
cmV0dXJuIFZLX0YxMjsKKyAgICAgICAgY2FzZSBCX1BSSU5UX0tFWToKKyAgICAgICAgICAgIHJl
dHVybiBWS19QUklOVDsKKyAgICAgICAgY2FzZSBCX1BBVVNFX0tFWToKKyAgICAgICAgICAgIHJl
dHVybiAwOyAvLyBGSVhNRQorICAgICAgICBjYXNlIEJfU0NST0xMX0tFWToKKyAgICAgICAgICAg
IHJldHVybiAwOyAvLyBGSVhNRQorICAgICAgICB9CisgICAgICAgIGJyZWFrOworCiAgICAgY2Fz
ZSBCX0JBQ0tTUEFDRToKICAgICAgICAgcmV0dXJuIFZLX0JBQ0s7IC8vICgwOCkgQkFDS1NQQUNF
IGtleQogICAgIGNhc2UgQl9UQUI6CkBAIC0xNDEsMzIgKzE3OSwxODAgQEAKICAgICAgICAgcmV0
dXJuIFZLX0lOU0VSVDsgLy8gKDJEKSBJTlMga2V5CiAgICAgY2FzZSBCX0RFTEVURToKICAgICAg
ICAgcmV0dXJuIFZLX0RFTEVURTsgLy8gKDJFKSBERUwga2V5Ci0gICAgY2FzZSAweDJlOgotICAg
IGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiAwOworCisgICAgY2FzZSAnMCc6CisgICAgY2FzZSAn
KSc6CisgICAgICAgIHJldHVybiBWS18wOworICAgIGNhc2UgJzEnOgorICAgIGNhc2UgJyEnOgor
ICAgICAgICByZXR1cm4gVktfMTsKKyAgICBjYXNlICcyJzoKKyAgICBjYXNlICdAJzoKKyAgICAg
ICAgcmV0dXJuIFZLXzI7CisgICAgY2FzZSAnMyc6CisgICAgY2FzZSAnIyc6CisgICAgICAgIHJl
dHVybiBWS18zOworICAgIGNhc2UgJzQnOgorICAgIGNhc2UgJyQnOgorICAgICAgICByZXR1cm4g
VktfNDsKKyAgICBjYXNlICc1JzoKKyAgICBjYXNlICclJzoKKyAgICAgICAgcmV0dXJuIFZLXzU7
CisgICAgY2FzZSAnNic6CisgICAgY2FzZSAnXic6CisgICAgICAgIHJldHVybiBWS182OworICAg
IGNhc2UgJzcnOgorICAgIGNhc2UgJyYnOgorICAgICAgICByZXR1cm4gVktfNzsKKyAgICBjYXNl
ICc4JzoKKyAgICBjYXNlICcqJzoKKyAgICAgICAgcmV0dXJuIFZLXzg7CisgICAgY2FzZSAnOSc6
CisgICAgY2FzZSAnKCc6CisgICAgICAgIHJldHVybiBWS185OworICAgIGNhc2UgJ2EnOgorICAg
IGNhc2UgJ0EnOgorICAgICAgICByZXR1cm4gVktfQTsKKyAgICBjYXNlICdiJzoKKyAgICBjYXNl
ICdCJzoKKyAgICAgICAgcmV0dXJuIFZLX0I7CisgICAgY2FzZSAnYyc6CisgICAgY2FzZSAnQyc6
CisgICAgICAgIHJldHVybiBWS19DOworICAgIGNhc2UgJ2QnOgorICAgIGNhc2UgJ0QnOgorICAg
ICAgICByZXR1cm4gVktfRDsKKyAgICBjYXNlICdlJzoKKyAgICBjYXNlICdFJzoKKyAgICAgICAg
cmV0dXJuIFZLX0U7CisgICAgY2FzZSAnZic6CisgICAgY2FzZSAnRic6CisgICAgICAgIHJldHVy
biBWS19GOworICAgIGNhc2UgJ2cnOgorICAgIGNhc2UgJ0cnOgorICAgICAgICByZXR1cm4gVktf
RzsKKyAgICBjYXNlICdoJzoKKyAgICBjYXNlICdIJzoKKyAgICAgICAgcmV0dXJuIFZLX0g7Cisg
ICAgY2FzZSAnaSc6CisgICAgY2FzZSAnSSc6CisgICAgICAgIHJldHVybiBWS19JOworICAgIGNh
c2UgJ2onOgorICAgIGNhc2UgJ0onOgorICAgICAgICByZXR1cm4gVktfSjsKKyAgICBjYXNlICdr
JzoKKyAgICBjYXNlICdLJzoKKyAgICAgICAgcmV0dXJuIFZLX0s7CisgICAgY2FzZSAnbCc6Cisg
ICAgY2FzZSAnTCc6CisgICAgICAgIHJldHVybiBWS19MOworICAgIGNhc2UgJ20nOgorICAgIGNh
c2UgJ00nOgorICAgICAgICByZXR1cm4gVktfTTsKKyAgICBjYXNlICduJzoKKyAgICBjYXNlICdO
JzoKKyAgICAgICAgcmV0dXJuIFZLX047CisgICAgY2FzZSAnbyc6CisgICAgY2FzZSAnTyc6Cisg
ICAgICAgIHJldHVybiBWS19POworICAgIGNhc2UgJ3AnOgorICAgIGNhc2UgJ1AnOgorICAgICAg
ICByZXR1cm4gVktfUDsKKyAgICBjYXNlICdxJzoKKyAgICBjYXNlICdRJzoKKyAgICAgICAgcmV0
dXJuIFZLX1E7CisgICAgY2FzZSAncic6CisgICAgY2FzZSAnUic6CisgICAgICAgIHJldHVybiBW
S19SOworICAgIGNhc2UgJ3MnOgorICAgIGNhc2UgJ1MnOgorICAgICAgICByZXR1cm4gVktfUzsK
KyAgICBjYXNlICd0JzoKKyAgICBjYXNlICdUJzoKKyAgICAgICAgcmV0dXJuIFZLX1Q7CisgICAg
Y2FzZSAndSc6CisgICAgY2FzZSAnVSc6CisgICAgICAgIHJldHVybiBWS19VOworICAgIGNhc2Ug
J3YnOgorICAgIGNhc2UgJ1YnOgorICAgICAgICByZXR1cm4gVktfVjsKKyAgICBjYXNlICd3JzoK
KyAgICBjYXNlICdXJzoKKyAgICAgICAgcmV0dXJuIFZLX1c7CisgICAgY2FzZSAneCc6CisgICAg
Y2FzZSAnWCc6CisgICAgICAgIHJldHVybiBWS19YOworICAgIGNhc2UgJ3knOgorICAgIGNhc2Ug
J1knOgorICAgICAgICByZXR1cm4gVktfWTsKKyAgICBjYXNlICd6JzoKKyAgICBjYXNlICdaJzoK
KyAgICAgICAgcmV0dXJuIFZLX1o7CisgICAgY2FzZSAnOyc6CisgICAgY2FzZSAnOic6CisgICAg
ICAgIHJldHVybiBWS19PRU1fMTsKKyAgICBjYXNlICcrJzoKKyAgICBjYXNlICc9JzoKKyAgICAg
ICAgcmV0dXJuIFZLX09FTV9QTFVTOworICAgIGNhc2UgJywnOgorICAgIGNhc2UgJzwnOgorICAg
ICAgICByZXR1cm4gVktfT0VNX0NPTU1BOworICAgIGNhc2UgJy0nOgorICAgIGNhc2UgJ18nOgor
ICAgICAgICByZXR1cm4gVktfT0VNX01JTlVTOworICAgIGNhc2UgJy4nOgorICAgIGNhc2UgJz4n
OgorICAgICAgICByZXR1cm4gVktfT0VNX1BFUklPRDsKKyAgICBjYXNlICcvJzoKKyAgICBjYXNl
ICc/JzoKKyAgICAgICAgcmV0dXJuIFZLX09FTV8yOworICAgIGNhc2UgJ2AnOgorICAgIGNhc2Ug
J34nOgorICAgICAgICByZXR1cm4gVktfT0VNXzM7CisgICAgY2FzZSAnWyc6CisgICAgY2FzZSAn
eyc6CisgICAgICAgIHJldHVybiBWS19PRU1fNDsKKyAgICBjYXNlICdcXCc6CisgICAgY2FzZSAn
fCc6CisgICAgICAgIHJldHVybiBWS19PRU1fNTsKKyAgICBjYXNlICddJzoKKyAgICBjYXNlICd9
JzoKKyAgICAgICAgcmV0dXJuIFZLX09FTV82OworICAgIGNhc2UgJ1wnJzoKKyAgICBjYXNlICci
JzoKKyAgICAgICAgcmV0dXJuIFZLX09FTV83OwogICAgIH0KKyAgICByZXR1cm4gc2luZ2xlQnl0
ZTsKIH0KIAogUGxhdGZvcm1LZXlib2FyZEV2ZW50OjpQbGF0Zm9ybUtleWJvYXJkRXZlbnQoQk1l
c3NhZ2UqIG1lc3NhZ2UpCiAgICAgOiBtX2F1dG9SZXBlYXQoZmFsc2UpCisgICAgLCBtX2lzS2V5
cGFkKGZhbHNlKQorICAgICwgbV9zaGlmdEtleShmYWxzZSkKICAgICAsIG1fY3RybEtleShmYWxz
ZSkKICAgICAsIG1fYWx0S2V5KGZhbHNlKQogICAgICwgbV9tZXRhS2V5KGZhbHNlKQotICAgICwg
bV9pc0tleXBhZChmYWxzZSkKLSAgICAsIG1fc2hpZnRLZXkoZmFsc2UpCiB7CiAgICAgQlN0cmlu
ZyBieXRlcyA9IG1lc3NhZ2UtPkZpbmRTdHJpbmcoImJ5dGVzIik7CiAKKyAgICBtX25hdGl2ZVZp
cnR1YWxLZXlDb2RlID0gbWVzc2FnZS0+RmluZEludDMyKCJrZXkiKTsKKwogICAgIG1fdGV4dCA9
IFN0cmluZzo6ZnJvbVVURjgoYnl0ZXMuU3RyaW5nKCksIGJ5dGVzLkxlbmd0aCgpKTsKICAgICBt
X3VubW9kaWZpZWRUZXh0ID0gU3RyaW5nKGJ5dGVzLlN0cmluZygpLCBieXRlcy5MZW5ndGgoKSk7
Ci0gICAgbV9rZXlJZGVudGlmaWVyID0ga2V5SWRlbnRpZmllckZvckhhaWt1S2V5Q29kZShieXRl
cy5CeXRlQXQoMCksIG1lc3NhZ2UtPkZpbmRJbnQzMigia2V5IikpOworICAgIG1fa2V5SWRlbnRp
ZmllciA9IGtleUlkZW50aWZpZXJGb3JIYWlrdUtleUNvZGUoYnl0ZXMuQnl0ZUF0KDApLCBtX25h
dGl2ZVZpcnR1YWxLZXlDb2RlKTsKIAorICAgIG1fd2luZG93c1ZpcnR1YWxLZXlDb2RlID0gd2lu
ZG93c0tleUNvZGVGb3JLZXlFdmVudChieXRlcy5CeXRlQXQoMCksIG1fbmF0aXZlVmlydHVhbEtl
eUNvZGUpOworCiAgICAgaWYgKG1lc3NhZ2UtPndoYXQgPT0gQl9LRVlfVVApCiAgICAgICAgIG1f
dHlwZSA9IEtleVVwOwogICAgIGVsc2UgaWYgKG1lc3NhZ2UtPndoYXQgPT0gQl9LRVlfRE9XTikK
ICAgICAgICAgbV90eXBlID0gS2V5RG93bjsKIAotICAgIG1fd2luZG93c1ZpcnR1YWxLZXlDb2Rl
ID0gd2luZG93c0tleUNvZGVGb3JLZXlFdmVudChieXRlcy5CeXRlQXQoMCkpOworICAgIGludDMy
IG1vZGlmaWVycyA9IG1lc3NhZ2UtPkZpbmRJbnQzMigibW9kaWZpZXJzIik7CisgICAgbV9zaGlm
dEtleSA9IG1vZGlmaWVycyAmIEJfU0hJRlRfS0VZOworICAgIG1fY3RybEtleSA9IG1vZGlmaWVy
cyAmIEJfQ09NTUFORF9LRVk7CisgICAgbV9hbHRLZXkgPSBtb2RpZmllcnMgJiBCX0NPTlRST0xf
S0VZOworICAgIG1fbWV0YUtleSA9IG1vZGlmaWVycyAmIEJfT1BUSU9OX0tFWTsKIH0KIAogdm9p
ZCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmRpc2FtYmlndWF0ZUtleURvd25FdmVudChUeXBlIHR5
cGUsIGJvb2wpCkBAIC0xODUsOCArMzcxLDcgQEAKIAogYm9vbCBQbGF0Zm9ybUtleWJvYXJkRXZl
bnQ6OmN1cnJlbnRDYXBzTG9ja1N0YXRlKCkKIHsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotICAg
IHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gOjptb2RpZmllcnMoKSB8IEJfQ0FQU19MT0NLOwog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2hhaWt1
L1BsYXRmb3JtTW91c2VFdmVudEhhaWt1LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRm
b3JtL2hhaWt1L1BsYXRmb3JtTW91c2VFdmVudEhhaWt1LmNwcAkocmV2aXNpb24gNTQyNzUpCisr
KyBXZWJDb3JlL3BsYXRmb3JtL2hhaWt1L1BsYXRmb3JtTW91c2VFdmVudEhhaWt1LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMSw2ICsxLDcgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDcgUnlh
biBMZWF2ZW5nb29kIDxsZWF2ZW5nb29kQGdtYWlsLmNvbT4KICAqIENvcHlyaWdodCAoQykgMjAw
OSBNYXhpbWUgU2ltb24gPHNpbW9uLm1heGltZUBnbWFpbC5jb20+CisgKiBDb3B5cmlnaHQgKEMp
IDIwMTAgU3RlcGhhbiBBw59tdXMgPHN1cGVyc3RpcHBpQGdteC5kZT4KICAqCiAgKiBBbGwgcmln
aHRzIHJlc2VydmVkLgogICoKQEAgLTMwLDM2ICszMSwzMCBAQAogI2luY2x1ZGUgIlBsYXRmb3Jt
TW91c2VFdmVudC5oIgogCiAjaW5jbHVkZSA8TWVzc2FnZS5oPgotI2luY2x1ZGUgPFN1cHBvcnRE
ZWZzLmg+CisjaW5jbHVkZSA8Vmlldy5oPgogCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogUGxh
dGZvcm1Nb3VzZUV2ZW50OjpQbGF0Zm9ybU1vdXNlRXZlbnQoY29uc3QgQk1lc3NhZ2UqIG1lc3Nh
Z2UpCi0gICAgOiBtX3RpbWVzdGFtcChtZXNzYWdlLT5GaW5kSW50NjQoIndoZW4iKSkKLSAgICAs
IG1fcG9zaXRpb24oSW50UG9pbnQobWVzc2FnZS0+RmluZFBvaW50KCJ3aGVyZSIpKSkKLSAgICAs
IG1fZ2xvYmFsUG9zaXRpb24obWVzc2FnZS0+RmluZFBvaW50KCJnbG9iYWxQb3NpdGlvbiIpKQot
ICAgICwgbV9zaGlmdEtleShmYWxzZSkKLSAgICAsIG1fY3RybEtleShmYWxzZSkKLSAgICAsIG1f
YWx0S2V5KGZhbHNlKQotICAgICwgbV9tZXRhS2V5KGZhbHNlKQorICAgIDogbV9wb3NpdGlvbiht
ZXNzYWdlLT5GaW5kUG9pbnQoImJlOnZpZXdfd2hlcmUiKSkKKyAgICAsIG1fZ2xvYmFsUG9zaXRp
b24obWVzc2FnZS0+RmluZFBvaW50KCJzY3JlZW5fd2hlcmUiKSkKICAgICAsIG1fY2xpY2tDb3Vu
dChtZXNzYWdlLT5GaW5kSW50MzIoImNsaWNrcyIpKQorICAgICwgbV90aW1lc3RhbXAobWVzc2Fn
ZS0+RmluZEludDY0KCJ3aGVuIikgLyAxMDAwMDAwLjApCiB7Ci0gICAgaW50MzIgYnV0dG9ucyA9
IG1lc3NhZ2UtPkZpbmRJbnQzMigiYnV0dG9ucyIpOwotICAgIHN3aXRjaCAoYnV0dG9ucykgewot
ICAgIGNhc2UgMToKKyAgICBpbnQzMiBidXR0b25zID0gMDsKKyAgICBpZiAobWVzc2FnZS0+d2hh
dCA9PSBCX01PVVNFX1VQKQorICAgICAgICBtZXNzYWdlLT5GaW5kSW50MzIoInByZXZpb3VzIGJ1
dHRvbnMiLCAmYnV0dG9ucyk7CisgICAgZWxzZQorICAgICAgICBtZXNzYWdlLT5GaW5kSW50MzIo
ImJ1dHRvbnMiLCAmYnV0dG9ucyk7CisKKyAgICBpZiAoYnV0dG9ucyAmIEJfUFJJTUFSWV9NT1VT
RV9CVVRUT04pCiAgICAgICAgIG1fYnV0dG9uID0gTGVmdEJ1dHRvbjsKLSAgICAgICAgYnJlYWs7
Ci0gICAgY2FzZSAyOgorICAgIGVsc2UgaWYgKGJ1dHRvbnMgJiBCX1NFQ09OREFSWV9NT1VTRV9C
VVRUT04pCiAgICAgICAgIG1fYnV0dG9uID0gUmlnaHRCdXR0b247Ci0gICAgICAgIGJyZWFrOwot
ICAgIGNhc2UgMzoKKyAgICBlbHNlIGlmIChidXR0b25zICYgQl9URVJUSUFSWV9NT1VTRV9CVVRU
T04pCiAgICAgICAgIG1fYnV0dG9uID0gTWlkZGxlQnV0dG9uOwotICAgICAgICBicmVhazsKLSAg
ICBkZWZhdWx0OgorICAgIGVsc2UKICAgICAgICAgbV9idXR0b24gPSBOb0J1dHRvbjsKLSAgICAg
ICAgYnJlYWs7Ci0gICAgfTsKIAogICAgIHN3aXRjaCAobWVzc2FnZS0+d2hhdCkgewogICAgIGNh
c2UgQl9NT1VTRV9ET1dOOgpAQCAtNjcsMTUgKzYyLDE4IEBACiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgQl9NT1VTRV9VUDoKICAgICAgICAgbV9ldmVudFR5cGUgPSBNb3VzZUV2ZW50UmVsZWFz
ZWQ7Ci0gICAgICAgIG1fYnV0dG9uID0gTGVmdEJ1dHRvbjsgLy8gRklYTUU6IFdlYmNvcmUgd2Fu
dHMgdG8ga25vdyB0aGUgYnV0dG9uIHJlbGVhc2VkIGJ1dCB3ZSBkb24ndCBrbm93LgogICAgICAg
ICBicmVhazsKICAgICBjYXNlIEJfTU9VU0VfTU9WRUQ6Ci0gICAgICAgIG1fZXZlbnRUeXBlID0g
TW91c2VFdmVudE1vdmVkOwotICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBt
X2V2ZW50VHlwZSA9IE1vdXNlRXZlbnRNb3ZlZDsKICAgICAgICAgYnJlYWs7CiAgICAgfTsKKwor
ICAgIGludDMyIG1vZGlmaWVycyA9IG1lc3NhZ2UtPkZpbmRJbnQzMigibW9kaWZpZXJzIik7Cisg
ICAgbV9zaGlmdEtleSA9IG1vZGlmaWVycyAmIEJfU0hJRlRfS0VZOworICAgIG1fY3RybEtleSA9
IG1vZGlmaWVycyAmIEJfQ09OVFJPTF9LRVk7CisgICAgbV9hbHRLZXkgPSBtb2RpZmllcnMgJiBC
X0NPTU1BTkRfS0VZOworICAgIG1fbWV0YUtleSA9IG1vZGlmaWVycyAmIEJfT1BUSU9OX0tFWTsK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9oYWlr
dS9QbGF0Zm9ybVdoZWVsRXZlbnRIYWlrdS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0
Zm9ybS9oYWlrdS9QbGF0Zm9ybVdoZWVsRXZlbnRIYWlrdS5jcHAJKHJldmlzaW9uIDU0Mjc1KQor
KysgV2ViQ29yZS9wbGF0Zm9ybS9oYWlrdS9QbGF0Zm9ybVdoZWVsRXZlbnRIYWlrdS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTEsNiArMSw3IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA3IFJ5
YW4gTGVhdmVuZ29vZCA8bGVhdmVuZ29vZEBnbWFpbC5jb20+CiAgKiBDb3B5cmlnaHQgKEMpIDIw
MDkgTWF4aW1lIFNpbW9uIDxzaW1vbi5tYXhpbWVAZ21haWwuY29tPgorICogQ29weXJpZ2h0IChD
KSAyMDEwIFN0ZXBoYW4gQcOfbXVzIDxzdXBlcnN0aXBwaUBnbXguZGU+CiAgKgogICogQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICAqCkBAIC0zMSw2ICszMiw3IEBACiAKICNpbmNsdWRlICJTY3JvbGxi
YXIuaCIKIAorI2luY2x1ZGUgPEludGVyZmFjZURlZnMuaD4KICNpbmNsdWRlIDxNZXNzYWdlLmg+
CiAjaW5jbHVkZSA8UG9pbnQuaD4KIApAQCAtMzgsMjQgKzQwLDIzIEBACiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIFBsYXRmb3JtV2hlZWxFdmVudDo6UGxhdGZvcm1XaGVlbEV2ZW50KEJNZXNzYWdl
KiBtZXNzYWdlKQotICAgIDogbV9ncmFudWxhcml0eShTY3JvbGxCeVBpeGVsV2hlZWxFdmVudCkK
LSAgICAsIG1fc2hpZnRLZXkoZmFsc2UpCi0gICAgLCBtX2N0cmxLZXkoZmFsc2UpCi0gICAgLCBt
X2FsdEtleShmYWxzZSkKLSAgICAsIG1fbWV0YUtleShmYWxzZSkKKyAgICA6IG1fcG9zaXRpb24o
bWVzc2FnZS0+RmluZFBvaW50KCJiZTp2aWV3X3doZXJlIikpCisgICAgLCBtX2dsb2JhbFBvc2l0
aW9uKG1lc3NhZ2UtPkZpbmRQb2ludCgic2NyZWVuX3doZXJlIikpCisgICAgLCBtX2RlbHRhWCht
ZXNzYWdlLT5GaW5kRmxvYXQoImJlOndoZWVsX2RlbHRhX3giKSkKKyAgICAsIG1fZGVsdGFZKG1l
c3NhZ2UtPkZpbmRGbG9hdCgiYmU6d2hlZWxfZGVsdGFfeSIpKQorICAgICwgbV93aGVlbFRpY2tz
WChtX2RlbHRhWCkKKyAgICAsIG1fd2hlZWxUaWNrc1kobV9kZWx0YVkpCisgICAgLCBtX2dyYW51
bGFyaXR5KFNjcm9sbEJ5UGl4ZWxXaGVlbEV2ZW50KQogICAgICwgbV9pc0FjY2VwdGVkKGZhbHNl
KQogewotICAgIG1fcG9zaXRpb24gPSBJbnRQb2ludChtZXNzYWdlLT5GaW5kUG9pbnQoInBvc2l0
aW9uIikpOwotICAgIG1fZ2xvYmFsUG9zaXRpb24gPSBJbnRQb2ludChtZXNzYWdlLT5GaW5kUG9p
bnQoImdsb2JhbF9wb3NpdGlvbiIpKTsKLQotICAgIG1fZGVsdGFYID0gbWVzc2FnZS0+RmluZEZs
b2F0KCJiZTp3aGVlbF9kZWx0YV94Iik7Ci0gICAgbV9kZWx0YVkgPSBtZXNzYWdlLT5GaW5kRmxv
YXQoImJlOndoZWVsX2RlbHRhX3kiKTsKLQotICAgIG1fd2hlZWxUaWNrc1ggPSBtX2RlbHRhWDsK
LSAgICBtX3doZWVsVGlja3NZID0gbV9kZWx0YVk7Ci0KICAgICBtX2RlbHRhWCAqPSAtY1Njcm9s
bGJhclBpeGVsc1BlckxpbmVTdGVwOwogICAgIG1fZGVsdGFZICo9IC1jU2Nyb2xsYmFyUGl4ZWxz
UGVyTGluZVN0ZXA7CisKKyAgICBpbnQzMiBtb2RpZmllcnMgPSBtZXNzYWdlLT5GaW5kSW50MzIo
Im1vZGlmaWVycyIpOworICAgIG1fc2hpZnRLZXkgPSBtb2RpZmllcnMgJiBCX1NISUZUX0tFWTsK
KyAgICBtX2N0cmxLZXkgPSBtb2RpZmllcnMgJiBCX0NPTlRST0xfS0VZOworICAgIG1fYWx0S2V5
ID0gbW9kaWZpZXJzICYgQl9DT01NQU5EX0tFWTsKKyAgICBtX21ldGFLZXkgPSBtb2RpZmllcnMg
JiBCX09QVElPTl9LRVk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>
<flag name="commit-queue"
          id="31209"
          type_id="3"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48973</attachid>
            <date>2010-02-17 23:34:56 -0800</date>
            <delta_ts>2010-02-22 17:29:14 -0800</delta_ts>
            <desc>Fix various issues of PlatformMouseEventHaiku.cpp</desc>
            <filename>mouse_events.diff</filename>
            <type>text/plain</type>
            <size>3517</size>
            <attacher name="Stephan Aßmus">superstippi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NDkzMykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMTAtMDItMTcgIFN0ZXBoYW4gQcOfbXVzICA8c3VwZXJzdGlwcGlA
Z214LmRlPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEZpeCB2YXJpb3VzIGlzc3VlcyBpbiBQbGF0Zm9ybU1vdXNlRXZlbnRIYWlrdS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM0Njg1CisKKyAgICAgICAg
Q292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKyAgICAgICAgCisgICAgICAgIE1hcHBpbmcgSGFp
a3UgYnV0dG9uIGNvbnN0YW50cyAoYml0IGZpZWxkKSB0byBXZWJDb3JlIGJ1dHRvbnMgd2FzIGJy
b2tlbi4KKyAgICAgICAgRXh0cmFjdGluZyBldmVudCB0aW1lIHdhcyBicm9rZW4gKHN1cHBvc2Vk
IHRvIGJlIGluIHNlY29uZHMpLgorICAgICAgICBXcm9uZyBjb29yZGluYXRlIHdhcyBiZWluZyBl
eHRyYWN0ZWQsIG5lZWRzIHRvIGJlIGNvbnRlbnQgbG9jYWwuCisgICAgICAgIEFkZGVkIGV4dHJh
Y3RpbmcgbW9kaWZpZXIga2V5IGZsYWdzLgorCisgICAgICAgICogcGxhdGZvcm0vaGFpa3UvUGxh
dGZvcm1Nb3VzZUV2ZW50SGFpa3UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1Nb3Vz
ZUV2ZW50OjpQbGF0Zm9ybU1vdXNlRXZlbnQpOgorCiAyMDEwLTAyLTE3ICBUb255IENoYW5nICA8
dG9ueUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCklu
ZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2hhaWt1L1BsYXRmb3JtTW91c2VFdmVudEhhaWt1LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2hhaWt1L1BsYXRmb3JtTW91c2VFdmVudEhh
aWt1LmNwcAkocmV2aXNpb24gNTQ5MzIpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2hhaWt1L1BsYXRm
b3JtTW91c2VFdmVudEhhaWt1LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDcgQEAKIC8q
CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDcgUnlhbiBMZWF2ZW5nb29kIDxsZWF2ZW5nb29kQGdtYWls
LmNvbT4KICAqIENvcHlyaWdodCAoQykgMjAwOSBNYXhpbWUgU2ltb24gPHNpbW9uLm1heGltZUBn
bWFpbC5jb20+CisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgU3RlcGhhbiBBw59tdXMgPHN1cGVyc3Rp
cHBpQGdteC5kZT4KICAqCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTMwLDM2ICsz
MSwzMCBAQAogI2luY2x1ZGUgIlBsYXRmb3JtTW91c2VFdmVudC5oIgogCiAjaW5jbHVkZSA8TWVz
c2FnZS5oPgotI2luY2x1ZGUgPFN1cHBvcnREZWZzLmg+Ci0KKyNpbmNsdWRlIDxWaWV3Lmg+CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogUGxhdGZvcm1Nb3VzZUV2ZW50OjpQbGF0Zm9ybU1vdXNl
RXZlbnQoY29uc3QgQk1lc3NhZ2UqIG1lc3NhZ2UpCi0gICAgOiBtX3RpbWVzdGFtcChtZXNzYWdl
LT5GaW5kSW50NjQoIndoZW4iKSkKLSAgICAsIG1fcG9zaXRpb24oSW50UG9pbnQobWVzc2FnZS0+
RmluZFBvaW50KCJ3aGVyZSIpKSkKLSAgICAsIG1fZ2xvYmFsUG9zaXRpb24obWVzc2FnZS0+Rmlu
ZFBvaW50KCJnbG9iYWxQb3NpdGlvbiIpKQotICAgICwgbV9zaGlmdEtleShmYWxzZSkKLSAgICAs
IG1fY3RybEtleShmYWxzZSkKLSAgICAsIG1fYWx0S2V5KGZhbHNlKQotICAgICwgbV9tZXRhS2V5
KGZhbHNlKQorICAgIDogbV9wb3NpdGlvbihtZXNzYWdlLT5GaW5kUG9pbnQoImJlOnZpZXdfd2hl
cmUiKSkKKyAgICAsIG1fZ2xvYmFsUG9zaXRpb24obWVzc2FnZS0+RmluZFBvaW50KCJzY3JlZW5f
d2hlcmUiKSkKICAgICAsIG1fY2xpY2tDb3VudChtZXNzYWdlLT5GaW5kSW50MzIoImNsaWNrcyIp
KQorICAgICwgbV90aW1lc3RhbXAobWVzc2FnZS0+RmluZEludDY0KCJ3aGVuIikgLyAxMDAwMDAw
LjApCiB7Ci0gICAgaW50MzIgYnV0dG9ucyA9IG1lc3NhZ2UtPkZpbmRJbnQzMigiYnV0dG9ucyIp
OwotICAgIHN3aXRjaCAoYnV0dG9ucykgewotICAgIGNhc2UgMToKKyAgICBpbnQzMiBidXR0b25z
ID0gMDsKKyAgICBpZiAobWVzc2FnZS0+d2hhdCA9PSBCX01PVVNFX1VQKQorICAgICAgICBtZXNz
YWdlLT5GaW5kSW50MzIoInByZXZpb3VzIGJ1dHRvbnMiLCAmYnV0dG9ucyk7CisgICAgZWxzZQor
ICAgICAgICBtZXNzYWdlLT5GaW5kSW50MzIoImJ1dHRvbnMiLCAmYnV0dG9ucyk7CisKKyAgICBp
ZiAoYnV0dG9ucyAmIEJfUFJJTUFSWV9NT1VTRV9CVVRUT04pCiAgICAgICAgIG1fYnV0dG9uID0g
TGVmdEJ1dHRvbjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSAyOgorICAgIGVsc2UgaWYgKGJ1
dHRvbnMgJiBCX1NFQ09OREFSWV9NT1VTRV9CVVRUT04pCiAgICAgICAgIG1fYnV0dG9uID0gUmln
aHRCdXR0b247Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgMzoKKyAgICBlbHNlIGlmIChidXR0
b25zICYgQl9URVJUSUFSWV9NT1VTRV9CVVRUT04pCiAgICAgICAgIG1fYnV0dG9uID0gTWlkZGxl
QnV0dG9uOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgorICAgIGVsc2UKICAgICAgICAg
bV9idXR0b24gPSBOb0J1dHRvbjsKLSAgICAgICAgYnJlYWs7Ci0gICAgfTsKIAogICAgIHN3aXRj
aCAobWVzc2FnZS0+d2hhdCkgewogICAgIGNhc2UgQl9NT1VTRV9ET1dOOgpAQCAtNjcsMTUgKzYy
LDE4IEBAIFBsYXRmb3JtTW91c2VFdmVudDo6UGxhdGZvcm1Nb3VzZUV2ZW50KGMKICAgICAgICAg
YnJlYWs7CiAgICAgY2FzZSBCX01PVVNFX1VQOgogICAgICAgICBtX2V2ZW50VHlwZSA9IE1vdXNl
RXZlbnRSZWxlYXNlZDsKLSAgICAgICAgbV9idXR0b24gPSBMZWZ0QnV0dG9uOyAvLyBGSVhNRTog
V2ViY29yZSB3YW50cyB0byBrbm93IHRoZSBidXR0b24gcmVsZWFzZWQgYnV0IHdlIGRvbid0IGtu
b3cuCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQl9NT1VTRV9NT1ZFRDoKLSAgICAgICAgbV9l
dmVudFR5cGUgPSBNb3VzZUV2ZW50TW92ZWQ7Ci0gICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6
CiAgICAgICAgIG1fZXZlbnRUeXBlID0gTW91c2VFdmVudE1vdmVkOwogICAgICAgICBicmVhazsK
ICAgICB9OworCisgICAgaW50MzIgbW9kaWZpZXJzID0gbWVzc2FnZS0+RmluZEludDMyKCJtb2Rp
ZmllcnMiKTsKKyAgICBtX3NoaWZ0S2V5ID0gbW9kaWZpZXJzICYgQl9TSElGVF9LRVk7CisgICAg
bV9jdHJsS2V5ID0gbW9kaWZpZXJzICYgQl9DT05UUk9MX0tFWTsKKyAgICBtX2FsdEtleSA9IG1v
ZGlmaWVycyAmIEJfQ09NTUFORF9LRVk7CisgICAgbV9tZXRhS2V5ID0gbW9kaWZpZXJzICYgQl9P
UFRJT05fS0VZOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48976</attachid>
            <date>2010-02-17 23:42:28 -0800</date>
            <delta_ts>2010-02-23 01:15:04 -0800</delta_ts>
            <desc>Some fixes to PlatformWheelEventHaiku.cpp</desc>
            <filename>wheel_events.diff</filename>
            <type>text/plain</type>
            <size>2710</size>
            <attacher name="Stephan Aßmus">superstippi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NDkzNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTAtMDItMTcgIFN0ZXBoYW4gQcOfbXVzICA8c3VwZXJzdGlwcGlA
Z214LmRlPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEZpeCB2YXJpb3VzIGlzc3VlcyBpbiBQbGF0Zm9ybVdoZWVsRXZlbnRIYWlrdS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM0Njg1CisKKyAgICAgICAg
Q292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKyAgICAgICAgCisgICAgICAgIEZpeGVkIGNvZGlu
ZyBzdHlsZSB2aW9sYXRpb25zLgorICAgICAgICBTeW5jZWQgZXh0cmFjdGluZyB0aGUgY29ycmVj
dCBjb29yZGluYXRlcyB3aXRoIEhhaWt1IFdlYktpdCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAg
QWRkZWQgZXh0cmFjdGluZyBtb2RpZmllciBrZXkgZmxhZ3MuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9oYWlrdS9QbGF0Zm9ybVdoZWVsRXZlbnRIYWlrdS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQ
bGF0Zm9ybVdoZWVsRXZlbnQ6OlBsYXRmb3JtV2hlZWxFdmVudCk6CisKIDIwMTAtMDItMTcgIFRv
bnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmlj
IFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vaGFpa3UvUGxhdGZvcm1XaGVlbEV2ZW50
SGFpa3UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vaGFpa3UvUGxhdGZvcm1X
aGVlbEV2ZW50SGFpa3UuY3BwCShyZXZpc2lvbiA1NDkzMikKKysrIFdlYkNvcmUvcGxhdGZvcm0v
aGFpa3UvUGxhdGZvcm1XaGVlbEV2ZW50SGFpa3UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDYg
KzEsNyBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwNyBSeWFuIExlYXZlbmdvb2QgPGxlYXZl
bmdvb2RAZ21haWwuY29tPgogICogQ29weXJpZ2h0IChDKSAyMDA5IE1heGltZSBTaW1vbiA8c2lt
b24ubWF4aW1lQGdtYWlsLmNvbT4KKyAqIENvcHlyaWdodCAoQykgMjAxMCBTdGVwaGFuIEHDn211
cyA8c3VwZXJzdGlwcGlAZ214LmRlPgogICoKICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgpA
QCAtMzEsNiArMzIsNyBAQAogCiAjaW5jbHVkZSAiU2Nyb2xsYmFyLmgiCiAKKyNpbmNsdWRlIDxJ
bnRlcmZhY2VEZWZzLmg+CiAjaW5jbHVkZSA8TWVzc2FnZS5oPgogI2luY2x1ZGUgPFBvaW50Lmg+
CiAKQEAgLTM4LDI0ICs0MCwyMyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBQbGF0Zm9ybVdo
ZWVsRXZlbnQ6OlBsYXRmb3JtV2hlZWxFdmVudChCTWVzc2FnZSogbWVzc2FnZSkKLSAgICA6IG1f
Z3JhbnVsYXJpdHkoU2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQpCi0gICAgLCBtX3NoaWZ0S2V5KGZh
bHNlKQotICAgICwgbV9jdHJsS2V5KGZhbHNlKQotICAgICwgbV9hbHRLZXkoZmFsc2UpCi0gICAg
LCBtX21ldGFLZXkoZmFsc2UpCisgICAgOiBtX3Bvc2l0aW9uKG1lc3NhZ2UtPkZpbmRQb2ludCgi
YmU6dmlld193aGVyZSIpKQorICAgICwgbV9nbG9iYWxQb3NpdGlvbihtZXNzYWdlLT5GaW5kUG9p
bnQoInNjcmVlbl93aGVyZSIpKQorICAgICwgbV9kZWx0YVgobWVzc2FnZS0+RmluZEZsb2F0KCJi
ZTp3aGVlbF9kZWx0YV94IikpCisgICAgLCBtX2RlbHRhWShtZXNzYWdlLT5GaW5kRmxvYXQoImJl
OndoZWVsX2RlbHRhX3kiKSkKKyAgICAsIG1fd2hlZWxUaWNrc1gobV9kZWx0YVgpCisgICAgLCBt
X3doZWVsVGlja3NZKG1fZGVsdGFZKQorICAgICwgbV9ncmFudWxhcml0eShTY3JvbGxCeVBpeGVs
V2hlZWxFdmVudCkKICAgICAsIG1faXNBY2NlcHRlZChmYWxzZSkKIHsKLSAgICBtX3Bvc2l0aW9u
ID0gSW50UG9pbnQobWVzc2FnZS0+RmluZFBvaW50KCJwb3NpdGlvbiIpKTsKLSAgICBtX2dsb2Jh
bFBvc2l0aW9uID0gSW50UG9pbnQobWVzc2FnZS0+RmluZFBvaW50KCJnbG9iYWxfcG9zaXRpb24i
KSk7Ci0KLSAgICBtX2RlbHRhWCA9IG1lc3NhZ2UtPkZpbmRGbG9hdCgiYmU6d2hlZWxfZGVsdGFf
eCIpOwotICAgIG1fZGVsdGFZID0gbWVzc2FnZS0+RmluZEZsb2F0KCJiZTp3aGVlbF9kZWx0YV95
Iik7Ci0KLSAgICBtX3doZWVsVGlja3NYID0gbV9kZWx0YVg7Ci0gICAgbV93aGVlbFRpY2tzWSA9
IG1fZGVsdGFZOwotCiAgICAgbV9kZWx0YVggKj0gLVNjcm9sbGJhcjo6cGl4ZWxzUGVyTGluZVN0
ZXAoKTsKICAgICBtX2RlbHRhWSAqPSAtU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpOwor
CisgICAgaW50MzIgbW9kaWZpZXJzID0gbWVzc2FnZS0+RmluZEludDMyKCJtb2RpZmllcnMiKTsK
KyAgICBtX3NoaWZ0S2V5ID0gbW9kaWZpZXJzICYgQl9TSElGVF9LRVk7CisgICAgbV9jdHJsS2V5
ID0gbW9kaWZpZXJzICYgQl9DT05UUk9MX0tFWTsKKyAgICBtX2FsdEtleSA9IG1vZGlmaWVycyAm
IEJfQ09NTUFORF9LRVk7CisgICAgbV9tZXRhS2V5ID0gbW9kaWZpZXJzICYgQl9PUFRJT05fS0VZ
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48977</attachid>
            <date>2010-02-17 23:53:49 -0800</date>
            <delta_ts>2010-02-23 03:10:02 -0800</delta_ts>
            <desc>Fixes to PlatformKeyboardEventHaiku.cpp</desc>
            <filename>keyboard_events.diff</filename>
            <type>text/plain</type>
            <size>8208</size>
            <attacher name="Stephan Aßmus">superstippi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NDkzNikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjYgQEAKKzIwMTAtMDItMTcgIFN0ZXBoYW4gQcOfbXVzICA8c3VwZXJzdGlwcGlA
Z214LmRlPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFtIYWlrdV0gRml4IHZhcmlvdXMgaXNzdWVzIGluIGtleWJvYXJkIGV2ZW50IGdlbmVyYXRpb24u
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNDY4NQor
CisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgRml4ZWQgYmFj
a3NwYWNlIGtleWNvZGUuCisgICAgICAgIEZpeGVkIHVzaW5nIHRoZSBhcHByb3ByaWF0ZSBmaWVs
ZHMgZnJvbSB0aGUgSGFpa3UgZXZlbnQgZm9yIG1hcHBpbmcKKyAgICAgICAgdG8gdGhlIFZLXyog
Y29kZXMgYW5kIGFkZGVkIG1hcHBpbmcgYSBncmVhdCBkZWFsIG1vcmUgY29kZXMuCisgICAgICAg
IEFkZGVkIGV4dHJhY3Rpb24gb2YgbW9kaWZpZXIga2V5IGZsYWdzLgorICAgICAgICBDb21wbGV0
ZWQgaW1wbGVtZW50YXRpb24gb2YgZGlzYW1iaWd1YXRlS2V5RG93bkV2ZW50KCkKKyAgICAgICAg
SW1wbGVtZW50ZWQgY3VycmVudENhcHNMb2NrU3RhdGUoKS4KKworICAgICAgICAqIHBsYXRmb3Jt
L2hhaWt1L1BsYXRmb3JtS2V5Ym9hcmRFdmVudEhhaWt1LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OmtleUlkZW50aWZpZXJGb3JIYWlrdUtleUNvZGUpOgorICAgICAgICAoV2ViQ29yZTo6d2luZG93
c0tleUNvZGVGb3JLZXlFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybUtleWJvYXJk
RXZlbnQ6OlBsYXRmb3JtS2V5Ym9hcmRFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9y
bUtleWJvYXJkRXZlbnQ6OmRpc2FtYmlndWF0ZUtleURvd25FdmVudCk6CisgICAgICAgIChXZWJD
b3JlOjpQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmN1cnJlbnRDYXBzTG9ja1N0YXRlKToKKwogMjAx
MC0wMi0xNyAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEVyaWMgU2VpZGVsLgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9oYWlrdS9QbGF0Zm9y
bUtleWJvYXJkRXZlbnRIYWlrdS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9o
YWlrdS9QbGF0Zm9ybUtleWJvYXJkRXZlbnRIYWlrdS5jcHAJKHJldmlzaW9uIDU0OTMyKQorKysg
V2ViQ29yZS9wbGF0Zm9ybS9oYWlrdS9QbGF0Zm9ybUtleWJvYXJkRXZlbnRIYWlrdS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTEsNiArMSw3IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA3IFJ5
YW4gTGVhdmVuZ29vZCA8bGVhdmVuZ29vZEBnbWFpbC5jb20+CiAgKiBDb3B5cmlnaHQgKEMpIDIw
MDggQW5kcmVhIEFuemFuaSA8YW5kcmVhLmFuemFuaUBnbWFpbC5jb20+CisgKiBDb3B5cmlnaHQg
KEMpIDIwMTAgU3RlcGhhbiBBw59tdXMgPHN1cGVyc3RpcHBpQGdteC5kZT4KICAqCiAgKiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTI5LDYgKzMwLDcgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJQbGF0Zm9ybUtleWJvYXJkRXZlbnQuaCIKIAorI2luY2x1ZGUgIkNTdHJp
bmcuaCIKICNpbmNsdWRlICJLZXlib2FyZENvZGVzLmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50
ZWQuaCIKICNpbmNsdWRlIDxJbnRlcmZhY2VEZWZzLmg+CkBAIC03OCw3ICs4MCw3IEBAIHN0YXRp
YyBTdHJpbmcga2V5SWRlbnRpZmllckZvckhhaWt1S2V5Q28KICAgICAgICAgYnJlYWs7CiAKICAg
ICBjYXNlIEJfQkFDS1NQQUNFOgotICAgICAgICByZXR1cm4gIlUrMDAwOSI7CisgICAgICAgIHJl
dHVybiAiVSswMDA4IjsKICAgICBjYXNlIEJfTEVGVF9BUlJPVzoKICAgICAgICAgcmV0dXJuICJM
ZWZ0IjsKICAgICBjYXNlIEJfUklHSFRfQVJST1c6CkBAIC0xMDUsMTIgKzEwNyw0NyBAQCBzdGF0
aWMgU3RyaW5nIGtleUlkZW50aWZpZXJGb3JIYWlrdUtleUNvCiAgICAgICAgIHJldHVybiAiVSsw
MDA5IjsKICAgICB9CiAKLSAgICByZXR1cm4gU3RyaW5nOjpmb3JtYXQoIlUrJTA0WCIsIHRvQVND
SUlVcHBlcihrZXlDb2RlKSk7CisgICAgcmV0dXJuIFN0cmluZzo6Zm9ybWF0KCJVKyUwNFgiLCB0
b0FTQ0lJVXBwZXIoc2luZ2xlQnl0ZSkpOwogfQogCi1zdGF0aWMgaW50IHdpbmRvd3NLZXlDb2Rl
Rm9yS2V5RXZlbnQoY2hhciBzaW5nbGVCeXRlKQorc3RhdGljIGludCB3aW5kb3dzS2V5Q29kZUZv
cktleUV2ZW50KGNoYXIgc2luZ2xlQnl0ZSwgaW50IGtleUNvZGUpCiB7CiAgICAgc3dpdGNoIChz
aW5nbGVCeXRlKSB7CisgICAgY2FzZSBCX0ZVTkNUSU9OX0tFWToKKyAgICAgICAgc3dpdGNoIChr
ZXlDb2RlKSB7CisgICAgICAgIGNhc2UgQl9GMV9LRVk6CisgICAgICAgICAgICByZXR1cm4gVktf
RjE7CisgICAgICAgIGNhc2UgQl9GMl9LRVk6CisgICAgICAgICAgICByZXR1cm4gVktfRjI7Cisg
ICAgICAgIGNhc2UgQl9GM19LRVk6CisgICAgICAgICAgICByZXR1cm4gVktfRjM7CisgICAgICAg
IGNhc2UgQl9GNF9LRVk6CisgICAgICAgICAgICByZXR1cm4gVktfRjQ7CisgICAgICAgIGNhc2Ug
Ql9GNV9LRVk6CisgICAgICAgICAgICByZXR1cm4gVktfRjU7CisgICAgICAgIGNhc2UgQl9GNl9L
RVk6CisgICAgICAgICAgICByZXR1cm4gVktfRjY7CisgICAgICAgIGNhc2UgQl9GN19LRVk6Cisg
ICAgICAgICAgICByZXR1cm4gVktfRjc7CisgICAgICAgIGNhc2UgQl9GOF9LRVk6CisgICAgICAg
ICAgICByZXR1cm4gVktfRjg7CisgICAgICAgIGNhc2UgQl9GOV9LRVk6CisgICAgICAgICAgICBy
ZXR1cm4gVktfRjk7CisgICAgICAgIGNhc2UgQl9GMTBfS0VZOgorICAgICAgICAgICAgcmV0dXJu
IFZLX0YxMDsKKyAgICAgICAgY2FzZSBCX0YxMV9LRVk6CisgICAgICAgICAgICByZXR1cm4gVktf
RjExOworICAgICAgICBjYXNlIEJfRjEyX0tFWToKKyAgICAgICAgICAgIHJldHVybiBWS19GMTI7
CisgICAgICAgIGNhc2UgQl9QUklOVF9LRVk6CisgICAgICAgICAgICByZXR1cm4gVktfUFJJTlQ7
CisgICAgICAgIGNhc2UgQl9QQVVTRV9LRVk6CisgICAgICAgICAgICByZXR1cm4gMDsgLy8gRklY
TUUKKyAgICAgICAgY2FzZSBCX1NDUk9MTF9LRVk6CisgICAgICAgICAgICByZXR1cm4gMDsgLy8g
RklYTUUKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKwogICAgIGNhc2UgQl9CQUNLU1BBQ0U6
CiAgICAgICAgIHJldHVybiBWS19CQUNLOyAvLyAoMDgpIEJBQ0tTUEFDRSBrZXkKICAgICBjYXNl
IEJfVEFCOgpAQCAtMTQxLDM5ICsxNzgsMTkxIEBAIHN0YXRpYyBpbnQgd2luZG93c0tleUNvZGVG
b3JLZXlFdmVudChjaGEKICAgICAgICAgcmV0dXJuIFZLX0lOU0VSVDsgLy8gKDJEKSBJTlMga2V5
CiAgICAgY2FzZSBCX0RFTEVURToKICAgICAgICAgcmV0dXJuIFZLX0RFTEVURTsgLy8gKDJFKSBE
RUwga2V5Ci0gICAgY2FzZSAweDJlOgotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiAwOwor
CisgICAgY2FzZSAnMCc6CisgICAgY2FzZSAnKSc6CisgICAgICAgIHJldHVybiBWS18wOworICAg
IGNhc2UgJzEnOgorICAgIGNhc2UgJyEnOgorICAgICAgICByZXR1cm4gVktfMTsKKyAgICBjYXNl
ICcyJzoKKyAgICBjYXNlICdAJzoKKyAgICAgICAgcmV0dXJuIFZLXzI7CisgICAgY2FzZSAnMyc6
CisgICAgY2FzZSAnIyc6CisgICAgICAgIHJldHVybiBWS18zOworICAgIGNhc2UgJzQnOgorICAg
IGNhc2UgJyQnOgorICAgICAgICByZXR1cm4gVktfNDsKKyAgICBjYXNlICc1JzoKKyAgICBjYXNl
ICclJzoKKyAgICAgICAgcmV0dXJuIFZLXzU7CisgICAgY2FzZSAnNic6CisgICAgY2FzZSAnXic6
CisgICAgICAgIHJldHVybiBWS182OworICAgIGNhc2UgJzcnOgorICAgIGNhc2UgJyYnOgorICAg
ICAgICByZXR1cm4gVktfNzsKKyAgICBjYXNlICc4JzoKKyAgICBjYXNlICcqJzoKKyAgICAgICAg
cmV0dXJuIFZLXzg7CisgICAgY2FzZSAnOSc6CisgICAgY2FzZSAnKCc6CisgICAgICAgIHJldHVy
biBWS185OworICAgIGNhc2UgJ2EnOgorICAgIGNhc2UgJ0EnOgorICAgICAgICByZXR1cm4gVktf
QTsKKyAgICBjYXNlICdiJzoKKyAgICBjYXNlICdCJzoKKyAgICAgICAgcmV0dXJuIFZLX0I7Cisg
ICAgY2FzZSAnYyc6CisgICAgY2FzZSAnQyc6CisgICAgICAgIHJldHVybiBWS19DOworICAgIGNh
c2UgJ2QnOgorICAgIGNhc2UgJ0QnOgorICAgICAgICByZXR1cm4gVktfRDsKKyAgICBjYXNlICdl
JzoKKyAgICBjYXNlICdFJzoKKyAgICAgICAgcmV0dXJuIFZLX0U7CisgICAgY2FzZSAnZic6Cisg
ICAgY2FzZSAnRic6CisgICAgICAgIHJldHVybiBWS19GOworICAgIGNhc2UgJ2cnOgorICAgIGNh
c2UgJ0cnOgorICAgICAgICByZXR1cm4gVktfRzsKKyAgICBjYXNlICdoJzoKKyAgICBjYXNlICdI
JzoKKyAgICAgICAgcmV0dXJuIFZLX0g7CisgICAgY2FzZSAnaSc6CisgICAgY2FzZSAnSSc6Cisg
ICAgICAgIHJldHVybiBWS19JOworICAgIGNhc2UgJ2onOgorICAgIGNhc2UgJ0onOgorICAgICAg
ICByZXR1cm4gVktfSjsKKyAgICBjYXNlICdrJzoKKyAgICBjYXNlICdLJzoKKyAgICAgICAgcmV0
dXJuIFZLX0s7CisgICAgY2FzZSAnbCc6CisgICAgY2FzZSAnTCc6CisgICAgICAgIHJldHVybiBW
S19MOworICAgIGNhc2UgJ20nOgorICAgIGNhc2UgJ00nOgorICAgICAgICByZXR1cm4gVktfTTsK
KyAgICBjYXNlICduJzoKKyAgICBjYXNlICdOJzoKKyAgICAgICAgcmV0dXJuIFZLX047CisgICAg
Y2FzZSAnbyc6CisgICAgY2FzZSAnTyc6CisgICAgICAgIHJldHVybiBWS19POworICAgIGNhc2Ug
J3AnOgorICAgIGNhc2UgJ1AnOgorICAgICAgICByZXR1cm4gVktfUDsKKyAgICBjYXNlICdxJzoK
KyAgICBjYXNlICdRJzoKKyAgICAgICAgcmV0dXJuIFZLX1E7CisgICAgY2FzZSAncic6CisgICAg
Y2FzZSAnUic6CisgICAgICAgIHJldHVybiBWS19SOworICAgIGNhc2UgJ3MnOgorICAgIGNhc2Ug
J1MnOgorICAgICAgICByZXR1cm4gVktfUzsKKyAgICBjYXNlICd0JzoKKyAgICBjYXNlICdUJzoK
KyAgICAgICAgcmV0dXJuIFZLX1Q7CisgICAgY2FzZSAndSc6CisgICAgY2FzZSAnVSc6CisgICAg
ICAgIHJldHVybiBWS19VOworICAgIGNhc2UgJ3YnOgorICAgIGNhc2UgJ1YnOgorICAgICAgICBy
ZXR1cm4gVktfVjsKKyAgICBjYXNlICd3JzoKKyAgICBjYXNlICdXJzoKKyAgICAgICAgcmV0dXJu
IFZLX1c7CisgICAgY2FzZSAneCc6CisgICAgY2FzZSAnWCc6CisgICAgICAgIHJldHVybiBWS19Y
OworICAgIGNhc2UgJ3knOgorICAgIGNhc2UgJ1knOgorICAgICAgICByZXR1cm4gVktfWTsKKyAg
ICBjYXNlICd6JzoKKyAgICBjYXNlICdaJzoKKyAgICAgICAgcmV0dXJuIFZLX1o7CisgICAgY2Fz
ZSAnOyc6CisgICAgY2FzZSAnOic6CisgICAgICAgIHJldHVybiBWS19PRU1fMTsKKyAgICBjYXNl
ICcrJzoKKyAgICBjYXNlICc9JzoKKyAgICAgICAgcmV0dXJuIFZLX09FTV9QTFVTOworICAgIGNh
c2UgJywnOgorICAgIGNhc2UgJzwnOgorICAgICAgICByZXR1cm4gVktfT0VNX0NPTU1BOworICAg
IGNhc2UgJy0nOgorICAgIGNhc2UgJ18nOgorICAgICAgICByZXR1cm4gVktfT0VNX01JTlVTOwor
ICAgIGNhc2UgJy4nOgorICAgIGNhc2UgJz4nOgorICAgICAgICByZXR1cm4gVktfT0VNX1BFUklP
RDsKKyAgICBjYXNlICcvJzoKKyAgICBjYXNlICc/JzoKKyAgICAgICAgcmV0dXJuIFZLX09FTV8y
OworICAgIGNhc2UgJ2AnOgorICAgIGNhc2UgJ34nOgorICAgICAgICByZXR1cm4gVktfT0VNXzM7
CisgICAgY2FzZSAnWyc6CisgICAgY2FzZSAneyc6CisgICAgICAgIHJldHVybiBWS19PRU1fNDsK
KyAgICBjYXNlICdcXCc6CisgICAgY2FzZSAnfCc6CisgICAgICAgIHJldHVybiBWS19PRU1fNTsK
KyAgICBjYXNlICddJzoKKyAgICBjYXNlICd9JzoKKyAgICAgICAgcmV0dXJuIFZLX09FTV82Owor
ICAgIGNhc2UgJ1wnJzoKKyAgICBjYXNlICciJzoKKyAgICAgICAgcmV0dXJuIFZLX09FTV83Owog
ICAgIH0KKyAgICByZXR1cm4gc2luZ2xlQnl0ZTsKIH0KIAogUGxhdGZvcm1LZXlib2FyZEV2ZW50
OjpQbGF0Zm9ybUtleWJvYXJkRXZlbnQoQk1lc3NhZ2UqIG1lc3NhZ2UpCiAgICAgOiBtX2F1dG9S
ZXBlYXQoZmFsc2UpCisgICAgLCBtX2lzS2V5cGFkKGZhbHNlKQorICAgICwgbV9zaGlmdEtleShm
YWxzZSkKICAgICAsIG1fY3RybEtleShmYWxzZSkKICAgICAsIG1fYWx0S2V5KGZhbHNlKQogICAg
ICwgbV9tZXRhS2V5KGZhbHNlKQotICAgICwgbV9pc0tleXBhZChmYWxzZSkKLSAgICAsIG1fc2hp
ZnRLZXkoZmFsc2UpCiB7CiAgICAgQlN0cmluZyBieXRlcyA9IG1lc3NhZ2UtPkZpbmRTdHJpbmco
ImJ5dGVzIik7CiAKKyAgICBtX25hdGl2ZVZpcnR1YWxLZXlDb2RlID0gbWVzc2FnZS0+RmluZElu
dDMyKCJrZXkiKTsKKwogICAgIG1fdGV4dCA9IFN0cmluZzo6ZnJvbVVURjgoYnl0ZXMuU3RyaW5n
KCksIGJ5dGVzLkxlbmd0aCgpKTsKICAgICBtX3VubW9kaWZpZWRUZXh0ID0gU3RyaW5nKGJ5dGVz
LlN0cmluZygpLCBieXRlcy5MZW5ndGgoKSk7Ci0gICAgbV9rZXlJZGVudGlmaWVyID0ga2V5SWRl
bnRpZmllckZvckhhaWt1S2V5Q29kZShieXRlcy5CeXRlQXQoMCksIG1lc3NhZ2UtPkZpbmRJbnQz
Migia2V5IikpOworICAgIG1fa2V5SWRlbnRpZmllciA9IGtleUlkZW50aWZpZXJGb3JIYWlrdUtl
eUNvZGUoYnl0ZXMuQnl0ZUF0KDApLCBtX25hdGl2ZVZpcnR1YWxLZXlDb2RlKTsKKworICAgIG1f
d2luZG93c1ZpcnR1YWxLZXlDb2RlID0gd2luZG93c0tleUNvZGVGb3JLZXlFdmVudChieXRlcy5C
eXRlQXQoMCksIG1fbmF0aXZlVmlydHVhbEtleUNvZGUpOwogCiAgICAgaWYgKG1lc3NhZ2UtPndo
YXQgPT0gQl9LRVlfVVApCiAgICAgICAgIG1fdHlwZSA9IEtleVVwOwogICAgIGVsc2UgaWYgKG1l
c3NhZ2UtPndoYXQgPT0gQl9LRVlfRE9XTikKICAgICAgICAgbV90eXBlID0gS2V5RG93bjsKIAot
ICAgIG1fd2luZG93c1ZpcnR1YWxLZXlDb2RlID0gd2luZG93c0tleUNvZGVGb3JLZXlFdmVudChi
eXRlcy5CeXRlQXQoMCkpOworICAgIGludDMyIG1vZGlmaWVycyA9IG1lc3NhZ2UtPkZpbmRJbnQz
MigibW9kaWZpZXJzIik7CisgICAgbV9zaGlmdEtleSA9IG1vZGlmaWVycyAmIEJfU0hJRlRfS0VZ
OworICAgIG1fY3RybEtleSA9IG1vZGlmaWVycyAmIEJfQ09NTUFORF9LRVk7CisgICAgbV9hbHRL
ZXkgPSBtb2RpZmllcnMgJiBCX0NPTlRST0xfS0VZOworICAgIG1fbWV0YUtleSA9IG1vZGlmaWVy
cyAmIEJfT1BUSU9OX0tFWTsKIH0KIAotdm9pZCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmRpc2Ft
YmlndWF0ZUtleURvd25FdmVudChUeXBlIHR5cGUsIGJvb2wpCit2b2lkIFBsYXRmb3JtS2V5Ym9h
cmRFdmVudDo6ZGlzYW1iaWd1YXRlS2V5RG93bkV2ZW50KFR5cGUgdHlwZSwgYm9vbCBiYWNrd2Fy
ZENvbXBhdGliaWxpdHlNb2RlKQogewogICAgIC8vIENhbiBvbmx5IGNoYW5nZSB0eXBlIGZyb20g
S2V5RG93biB0byBSYXdLZXlEb3duIG9yIENoYXIsIGFzIHdlIGxhY2sgaW5mb3JtYXRpb24gZm9y
IG90aGVyIGNvbnZlcnNpb25zLgogICAgIEFTU0VSVChtX3R5cGUgPT0gS2V5RG93bik7CiAgICAg
bV90eXBlID0gdHlwZTsKKworICAgIGlmIChiYWNrd2FyZENvbXBhdGliaWxpdHlNb2RlKQorICAg
ICAgICByZXR1cm47CisKICAgICBpZiAodHlwZSA9PSBSYXdLZXlEb3duKSB7CiAgICAgICAgIG1f
dGV4dCA9IFN0cmluZygpOwogICAgICAgICBtX3VubW9kaWZpZWRUZXh0ID0gU3RyaW5nKCk7CkBA
IC0xODUsOCArMzc0LDcgQEAgdm9pZCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmRpc2FtYmlndWF0
ZQogCiBib29sIFBsYXRmb3JtS2V5Ym9hcmRFdmVudDo6Y3VycmVudENhcHNMb2NrU3RhdGUoKQog
ewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiA6
Om1vZGlmaWVycygpICYgQl9DQVBTX0xPQ0s7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48979</attachid>
            <date>2010-02-18 00:08:59 -0800</date>
            <delta_ts>2010-02-23 04:53:13 -0800</delta_ts>
            <desc>Various improvements to EventHandlerHaiku.cpp</desc>
            <filename>event_handler.diff</filename>
            <type>text/plain</type>
            <size>5036</size>
            <attacher name="Stephan Aßmus">superstippi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NDkzOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzQgQEAKKzIwMTAtMDItMTcgIFN0ZXBoYW4gQcOfbXVzICA8c3VwZXJzdGlwcGlA
Z214LmRlPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFtIYWlrdV0gVmFyaW91cyBpbXByb3ZlbWVudHMgdG8gRXZlbnRIYW5kbGVySGFpa3UuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNDY4NQorCisgICAg
ICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgRml4IHRoZSBidWlsZCBi
eSBub3QgaW5jbHVkaW5nIFBsYXRmb3JtU2Nyb2xsQmFyLmguCisKKyAgICAgICAgKiBwYWdlL2hh
aWt1L0V2ZW50SGFuZGxlckhhaWt1LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlzS2V5Ym9hcmRP
cHRpb25UYWIpOgorICAgICAgICAgICAgVXNlIHRoZSBjb3JyZWN0IGtleWNvZGUgZm9yIHRhYiBr
ZXlzLgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpmb2N1c0RvY3VtZW50Vmlldyk6
CisgICAgICAgICAgICBVc2UgcHJvcGVyIGxvY2tpbmcuIEluIGFueSBjYXNlLCBIYWlrdSBkb2Vz
bid0IGFwcGVuZCBwbGF0Zm9ybQorICAgICAgICAgICAgd2lkZ2V0cyB0byBXZWJDb3JlIHdpZGdl
dHMuIEJ1dCBpZiBpdCBkaWQsIHRoaXMgaW1wbGVtZW50YXRpb24KKyAgICAgICAgICAgIHdvdWxk
IGJlIGNvcnJlY3QuCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnBhc3NXaWRnZXRN
b3VzZURvd25FdmVudFRvV2lkZ2V0KToKKyAgICAgICAgICAgIEltcGxlbWVudGVkLgorICAgICAg
ICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpldmVudEFjdGl2YXRlZFZpZXcpOgorICAgICAgICAg
ICAgUmVtb3ZlZCBub3RJbXBsZW1lbnRlZCgpIGFuZCBhZGRlZCBub3RlLgorICAgICAgICAoV2Vi
Q29yZTo6RXZlbnRIYW5kbGVyOjpwYXNzTW91c2VQcmVzc0V2ZW50VG9TdWJmcmFtZSk6CisgICAg
ICAgICAgICBJbXBsZW1lbnRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6cGFz
c01vdXNlTW92ZUV2ZW50VG9TdWJmcmFtZSk6CisgICAgICAgICAgICBJbXBsZW1lbnRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6cGFzc01vdXNlUmVsZWFzZUV2ZW50VG9TdWJm
cmFtZSk6CisgICAgICAgICAgICBJbXBsZW1lbnRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6YWNjZXNzS2V5TW9kaWZpZXJzKToKKyAgICAgICAgICAgIEFkZGVkIG5vdGUuCisK
IDIwMTAtMDItMTcgIERtaXRyeSBUaXRvdiAgPGRpbWljaEBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgRGF2aWQgTGV2aW4sIERhcmluIEZpc2hlciwgU2ltb24gSGF1c21hbm4u
CkluZGV4OiBXZWJDb3JlL3BhZ2UvaGFpa3UvRXZlbnRIYW5kbGVySGFpa3UuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGFnZS9oYWlrdS9FdmVudEhhbmRsZXJIYWlrdS5jcHAJKHJldmlzaW9u
IDU0OTMyKQorKysgV2ViQ29yZS9wYWdlL2hhaWt1L0V2ZW50SGFuZGxlckhhaWt1LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMiw2ICsyLDcgQEAKICAqIENvcHlyaWdodCAoQykgMjAwNiBaYWNrIFJ1
c2luIDx6YWNrQGtkZS5vcmc+CiAgKiBDb3B5cmlnaHQgKEMpIDIwMDcgUnlhbiBMZWF2ZW5nb29k
IDxsZWF2ZW5nb29kQGdtYWlsLmNvbT4KICAqIENvcHlyaWdodCAoQykgMjAwOSBNYXhpbWUgU2lt
b24gPHNpbW9uLm1heGltZUBnbWFpbC5jb20+CisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgU3RlcGhh
biBBw59tdXMgPHN1cGVyc3RpcHBpQGdteC5kZT4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtMzksNyArNDAsNiBAQAogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5j
bHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oIgotI2luY2x1
ZGUgIlBsYXRmb3JtU2Nyb2xsQmFyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50Lmgi
CiAjaW5jbHVkZSAiUmVuZGVyV2lkZ2V0LmgiCiAKQEAgLTU2LDcgKzU2LDcgQEAgc3RhdGljIGJv
b2wgaXNLZXlib2FyZE9wdGlvblRhYihLZXlib2FyZAogICAgICAgICAmJiAoZXZlbnQtPnR5cGUo
KSA9PSBldmVudE5hbWVzKCkua2V5ZG93bkV2ZW50CiAgICAgICAgICAgICB8fCBldmVudC0+dHlw
ZSgpID09IGV2ZW50TmFtZXMoKS5rZXlwcmVzc0V2ZW50KQogICAgICAgICAmJiBldmVudC0+YWx0
S2V5KCkKLSAgICAgICAgJiYgZXZlbnQtPmtleUlkZW50aWZpZXIoKSA9PSAiVSswMDAwMDkiOwor
ICAgICAgICAmJiBldmVudC0+a2V5SWRlbnRpZmllcigpID09ICJVKzAwMDkiOwogfQogCiBib29s
IEV2ZW50SGFuZGxlcjo6aW52ZXJ0U2Vuc2VPZlRhYnNUb0xpbmtzKEtleWJvYXJkRXZlbnQqIGV2
ZW50KSBjb25zdApAQCAtNzQsOCArNzQsMTAgQEAgYm9vbCBFdmVudEhhbmRsZXI6OnRhYnNUb0Fs
bENvbnRyb2xzKEtleQogdm9pZCBFdmVudEhhbmRsZXI6OmZvY3VzRG9jdW1lbnRWaWV3KCkKIHsK
ICAgICBCVmlldyogdmlldyA9IG1fZnJhbWUtPnZpZXcoKS0+cGxhdGZvcm1XaWRnZXQoKTsKLSAg
ICBpZiAodmlldykKLSAgICAgICAgdmlldy0+TWFrZUZvY3VzKCk7CisgICAgaWYgKHZpZXcgJiYg
dmlldy0+TG9ja0xvb3BlcldpdGhUaW1lb3V0KDUwMDApID09IEJfT0spIHsKKyAgICAgICAgdmll
dy0+TWFrZUZvY3VzKHRydWUpOworICAgICAgICB2aWV3LT5VbmxvY2tMb29wZXIoKTsKKyAgICB9
CiAKICAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmIChwYWdlKQpAQCAt
MTAyLDE4ICsxMDQsMTQgQEAgYm9vbCBFdmVudEhhbmRsZXI6OnBhc3NNb3VzZURvd25FdmVudFRv
VwogICAgIHJldHVybiBmYWxzZTsKIH0KIAotYm9vbCBFdmVudEhhbmRsZXI6OmV2ZW50QWN0aXZh
dGVkVmlldyhjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmKSBjb25zdAorYm9vbCBFdmVudEhhbmRs
ZXI6OmV2ZW50QWN0aXZhdGVkVmlldyhjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2ZW50KSBj
b25zdAogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgLy8gT24gSGFpa3UsIGNsaWNrcyB3
aGljaCBhY3RpdmF0ZSB0aGUgd2luZG93IGluIG5vbiBmb2N1cy1mb2xsb3dzLW1vdXNlIG1vZGUK
KyAgICAvLyBhcmUgbm90IHBhc3NlZCB0byB0aGUgd2luZG93LCBzbyBhbnkgZXZlbnQgd2UgZ2Vu
ZXJhdGUgaXMgbm90IHRoZSBhY3RpdmF0aW9uCisgICAgLy8gZXZlbnQuCiAgICAgcmV0dXJuIGZh
bHNlOwogfQogCi1ib29sIEV2ZW50SGFuZGxlcjo6cGFzc1N1YmZyYW1lRXZlbnRUb1N1YmZyYW1l
KE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIGV2ZW50LCBGcmFtZSogc3ViZnJhbWUsIEhp
dFRlc3RSZXN1bHQqKQotewotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIHRydWU7
Ci19Ci0KIGJvb2wgRXZlbnRIYW5kbGVyOjpwYXNzV2hlZWxFdmVudFRvV2lkZ2V0KFBsYXRmb3Jt
V2hlZWxFdmVudCYgZXZlbnQsIFdpZGdldCogd2lkZ2V0KQogewogICAgIGlmICghd2lkZ2V0LT5p
c0ZyYW1lVmlldygpKQpAQCAtMTI5LDIxICsxMjcsMjcgQEAgUGFzc1JlZlB0cjxDbGlwYm9hcmQ+
IEV2ZW50SGFuZGxlcjo6Y3JlYQogCiBib29sIEV2ZW50SGFuZGxlcjo6cGFzc01vdXNlUHJlc3NF
dmVudFRvU3ViZnJhbWUoTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cyYgbWV2LCBGcmFtZSog
c3ViZnJhbWUpCiB7Ci0gICAgcmV0dXJuIHBhc3NTdWJmcmFtZUV2ZW50VG9TdWJmcmFtZShtZXYs
IHN1YmZyYW1lKTsKKyAgICBzdWJmcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZU1vdXNlUHJl
c3NFdmVudChtZXYuZXZlbnQoKSk7CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgRXZlbnRI
YW5kbGVyOjpwYXNzTW91c2VNb3ZlRXZlbnRUb1N1YmZyYW1lKE1vdXNlRXZlbnRXaXRoSGl0VGVz
dFJlc3VsdHMmIG1ldiwgRnJhbWUqIHN1YmZyYW1lLCBIaXRUZXN0UmVzdWx0KiBob3ZlcmVkTm9k
ZSkKIHsKLSAgICByZXR1cm4gcGFzc1N1YmZyYW1lRXZlbnRUb1N1YmZyYW1lKG1ldiwgc3ViZnJh
bWUsIGhvdmVyZWROb2RlKTsKKyAgICBzdWJmcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZU1v
dXNlTW92ZUV2ZW50KG1ldi5ldmVudCgpLCBob3ZlcmVkTm9kZSk7CisgICAgcmV0dXJuIHRydWU7
CiB9CiAKIGJvb2wgRXZlbnRIYW5kbGVyOjpwYXNzTW91c2VSZWxlYXNlRXZlbnRUb1N1YmZyYW1l
KE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMmIG1ldiwgRnJhbWUqIHN1YmZyYW1lKQogewot
ICAgIHJldHVybiBwYXNzU3ViZnJhbWVFdmVudFRvU3ViZnJhbWUobWV2LCBzdWJmcmFtZSk7Cisg
ICAgc3ViZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5oYW5kbGVNb3VzZVJlbGVhc2VFdmVudChtZXYu
ZXZlbnQoKSk7CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIHVuc2lnbmVkIEV2ZW50SGFuZGxlcjo6
YWNjZXNzS2V5TW9kaWZpZXJzKCkKIHsKKyAgICAvLyBOT1RFOiBPbiBIYWlrdSwgdGhlIHVzZXIg
Y2FuIGNob29zZSBBbHQgb3IgQ3RybCBhcyBhY2Nlc3Mga2V5LCBidXQKKyAgICAvLyB0aGUgUGxh
dGZvcm1LZXlib2FyZEV2ZW50IGFscmVhZHkgdGFrZXMgY2FyZSBvZiB0aGlzLCBpbnRlcm5hbGx5
LAorICAgIC8vIHdlIGFsd2F5cyB1c2UgQWx0LgogICAgIHJldHVybiBQbGF0Zm9ybUtleWJvYXJk
RXZlbnQ6OkFsdEtleTsKIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>