<?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>16462</bug_id>
          
          <creation_ts>2007-12-16 03:43:17 -0800</creation_ts>
          <short_desc>REGRESSION: access keys broken on Windows</short_desc>
          <delta_ts>2007-12-16 08:18:55 -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>Forms</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Regression</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>64362</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-12-16 03:43:17 -0800</bug_when>
    <thetext>I realized that I broke access keys with my fix to bug 16436. Layout tests didn&apos;t catch that, because we send WM_KEYDOWN/WM_CHAR events with Alt key pressed, and not WM_SYSKEYDOWN.

Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64366</commentid>
    <comment_count>1</comment_count>
      <attachid>17930</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-12-16 05:21:10 -0800</bug_when>
    <thetext>Created attachment 17930
proposed fix

I hate to submit this without an automated test - but it looks like while our behavior matches IE well, the underlying mechanics are quite different. So, while it&apos;s possible to catch the changes with a test, such a test would fail for certain legitimate changes, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64368</commentid>
    <comment_count>2</comment_count>
      <attachid>17930</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-12-16 05:24:45 -0800</bug_when>
    <thetext>Comment on attachment 17930
proposed fix

This needs some more work...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64369</commentid>
    <comment_count>3</comment_count>
      <attachid>17931</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-12-16 05:35:14 -0800</bug_when>
    <thetext>Created attachment 17931
proposed fix

Fixed DRT to send system key events as appropriate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64370</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-12-16 07:21:20 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; I hate to submit this without an automated test - but it looks like while our
&gt; behavior matches IE well, the underlying mechanics are quite different. So,
&gt; while it&apos;s possible to catch the changes with a test, such a test would fail
&gt; for certain legitimate changes, too.

It&apos;s OK to have an automated test that captures our current behavior, even if it&apos;s too specific, and requires behavior that is not necessarily &quot;correct&quot;. Our automated tests help us notice behavior changes. Failures in them don&apos;t have to reflect bugs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64371</commentid>
    <comment_count>5</comment_count>
      <attachid>17931</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-12-16 07:23:55 -0800</bug_when>
    <thetext>Comment on attachment 17931
proposed fix

I don&apos;t entirely understand why the code to call handleAccessKey couldn&apos;t just go into keyEvent.

r=me, though</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64374</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-12-16 08:18:55 -0800</bug_when>
    <thetext>Committed revision 28770.

(In reply to comment #4)
&gt; It&apos;s OK to have an automated test that captures our current behavior, even if
&gt; it&apos;s too specific, and requires behavior that is not necessarily &quot;correct&quot;. Our
&gt; automated tests help us notice behavior changes. Failures in them don&apos;t have to
&gt; reflect bugs.

I looked into it a bit more, and it seems that a test cannot be written without changing code - there is no way to dispatch a WM_SYSCHAR with alt key pressed.

I agree that it is possible to write some kind of test for this, possibly by adding functionality to DRT, but somehow, it feels wrong to me.

&gt; I don&apos;t entirely understand why the code to call handleAccessKey couldn&apos;t just
&gt; go into keyEvent.

Checking for system key is entirely platform-specific, not even wxWindows does that. I still have a feeling that a perfect implementation of this feature on Windows should use some mechanism that&apos;s separate form event dispatch.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17930</attachid>
            <date>2007-12-16 05:21:10 -0800</date>
            <delta_ts>2007-12-16 05:35:14 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>16462r1_patch.txt</filename>
            <type>text/plain</type>
            <size>6739</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyODc2OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMDctMTItMTYgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NDYyCisgICAgICAgIFJF
R1JFU1NJT046IGFjY2VzcyBrZXlzIGJyb2tlbiBvbiBXaW5kb3dzCisKKyAgICAgICAgKiBwYWdl
L0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRs
ZUFjY2Vzc0tleSk6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmtleUV2ZW50KToK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5oOgorICAgICAgICBNYWtlIGhhbmRsZUFjY2Vz
c0tleSBhIGNsYXNzIG1ldGhvZDsgcmVseSBvbiBXZWJLaXQgdG8gY2FsbCBpdCBvbiBXaW5kb3dz
IGFuZCB3eFdpZGdldHMuCisKIDIwMDctMTItMTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KSW5kZXg6IFdlYkNvcmUvcGFn
ZS9FdmVudEhhbmRsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuY3BwCShyZXZpc2lvbiAyODc2OCkKKysrIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNDY0LDcgKzE0NjQsNyBAQCBzdGF0aWMgRXZlbnRUYXJnZXRO
b2RlKiBldmVudFRhcmdldE5vZGVGCiAgICAgcmV0dXJuIEV2ZW50VGFyZ2V0Tm9kZUNhc3Qobm9k
ZSk7CiB9CiAKLXN0YXRpYyBib29sIGhhbmRsZUFjY2Vzc0tleShEb2N1bWVudCogZG9jdW1lbnQs
IGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCYgZXZ0KQorYm9vbCBFdmVudEhhbmRsZXI6Omhh
bmRsZUFjY2Vzc0tleShjb25zdCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQmIGV2dCkKIHsKICNpZiBQ
TEFURk9STShNQUMpCiAgICAgaWYgKGV2dC5jdHJsS2V5KCkpCkBAIC0xNDczLDcgKzE0NzMsNyBA
QCBzdGF0aWMgYm9vbCBoYW5kbGVBY2Nlc3NLZXkoRG9jdW1lbnQqIGRvCiAjZW5kaWYKICAgICB7
CiAgICAgICAgIFN0cmluZyBrZXkgPSBldnQudW5tb2RpZmllZFRleHQoKTsKLSAgICAgICAgRWxl
bWVudCogZWxlbSA9IGRvY3VtZW50LT5nZXRFbGVtZW50QnlBY2Nlc3NLZXkoa2V5Lmxvd2VyKCkp
OworICAgICAgICBFbGVtZW50KiBlbGVtID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+Z2V0RWxlbWVu
dEJ5QWNjZXNzS2V5KGtleS5sb3dlcigpKTsKICAgICAgICAgaWYgKGVsZW0pIHsKICAgICAgICAg
ICAgIGVsZW0tPmFjY2Vzc0tleUFjdGlvbihmYWxzZSk7CiAgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKQEAgLTE1MDIsMTUgKzE1MDIsMTMgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmtleUV2ZW50KGNv
bnN0IFBsYXRmbwogICAgIG1fZnJhbWUtPmxvYWRlcigpLT5yZXNldE11bHRpcGxlRm9ybVN1Ym1p
c3Npb25Qcm90ZWN0aW9uKCk7CiAKICAgICAvLyBJbiBJRSwgYWNjZXNzIGtleXMgYXJlIHNwZWNp
YWwsIHRoZXkgYXJlIGhhbmRsZWQgYWZ0ZXIgZGVmYXVsdCBrZXlkb3duIHByb2Nlc3NpbmcsIGJ1
dCBjYW5ub3QgYmUgY2FuY2VsZWQgLSB0aGlzIGlzIGhhcmQgdG8gbWF0Y2guCi0gICAgLy8gT24g
V2luZG93cywgd2UgcHJvY2VzcyB0aGVtIGJlZm9yZSBkaXNwYXRjaGluZyBrZXlwcmVzcyBldmVu
dCAoYW5kIHJlbHkgb24gV2ViS2l0IHRvIG5vdCBkcm9wIFdNX1NZU0NIQVIgZXZlbnRzIHdoZW4g
YSBrZXlkb3duIHJlcHJlc2VudGluZyBXTV9TWVNLRVlET1dOIGlzIGNhbmNlbGVkKS4KLSAgICAv
LyBPbiBNYWMgT1MgWCwgd2UgcHJvY2VzcyB0aGVtIGJlZm9yZSBkaXNwYXRjaGluZyBrZXlkb3du
LCBhcyB0aGUgZGVmYXVsdCBrZXlkb3duIGhhbmRsZXIgaW1wbGVtZW50cyBFbWFjcyBrZXkgYmlu
ZGluZ3MsIHdoaWNoIG1heSBjb25mbGljdCB3aXRoIGFjY2VzcyBrZXlzLgorICAgIC8vIE9uIE1h
YyBPUyBYLCB3ZSBwcm9jZXNzIHRoZW0gYmVmb3JlIGRpc3BhdGNoaW5nIGtleWRvd24sIGFzIHRo
ZSBkZWZhdWx0IGtleWRvd24gaGFuZGxlciBpbXBsZW1lbnRzIEVtYWNzIGtleSBiaW5kaW5ncywg
d2hpY2ggbWF5IGNvbmZsaWN0CisgICAgLy8gd2l0aCBhY2Nlc3Mga2V5cy4gVGhlbiB3ZSBkaXNw
YXRjaCBrZXlkb3duLCBidXQgc3VwcHJlc3MgaXRzIGRlZmF1bHQgaGFuZGxpbmcuCisgICAgLy8g
T24gV2luZG93cywgV2ViS2l0IGV4cGxpY2l0bHkgY2FsbHMgaGFuZGxlQWNjZXNzS2V5KCkgaW5z
dGVhZCBvZiBkaXNwYXRjaGluZyBhIGtleXByZXNzIGV2ZW50IGZvciBXTV9TWVNDSEFSIG1lc3Nh
Z2VzLgogICAgIC8vIE90aGVyIHBsYXRmb3JtcyBjdXJyZW50bHkgbWF0Y2ggZWl0aGVyIE1hYyBv
ciBXaW5kb3dzIGJlaGF2aW9yLCBkZXBlbmRpbmcgb24gd2hldGhlciB0aGV5IHNlbmQgY29tYmlu
ZWQgS2V5RG93biBldmVudHMuCiAgICAgYm9vbCBtYXRjaGVkQW5BY2Nlc3NLZXkgPSBmYWxzZTsK
LSAgICBpZiAoaW5pdGlhbEtleUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6
OkNoYXIpIHsKLSAgICAgICAgaWYgKGhhbmRsZUFjY2Vzc0tleShtX2ZyYW1lLT5kb2N1bWVudCgp
LCBpbml0aWFsS2V5RXZlbnQpKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfSBlbHNl
IGlmIChpbml0aWFsS2V5RXZlbnQudHlwZSgpID09IFBsYXRmb3JtS2V5Ym9hcmRFdmVudDo6S2V5
RG93bikKLSAgICAgICAgbWF0Y2hlZEFuQWNjZXNzS2V5ID0gaGFuZGxlQWNjZXNzS2V5KG1fZnJh
bWUtPmRvY3VtZW50KCksIGluaXRpYWxLZXlFdmVudCk7CisgICAgaWYgKGluaXRpYWxLZXlFdmVu
dC50eXBlKCkgPT0gUGxhdGZvcm1LZXlib2FyZEV2ZW50OjpLZXlEb3duKQorICAgICAgICBtYXRj
aGVkQW5BY2Nlc3NLZXkgPSBoYW5kbGVBY2Nlc3NLZXkoaW5pdGlhbEtleUV2ZW50KTsKIAogICAg
IC8vIEZJWE1FOiBpdCB3b3VsZCBiZSBmYWlyIHRvIGxldCBhbiBpbnB1dCBtZXRob2QgaGFuZGxl
IEtleVVwIGV2ZW50cyBiZWZvcmUgRE9NIGRpc3BhdGNoLgogICAgIGlmIChpbml0aWFsS2V5RXZl
bnQudHlwZSgpID09IFBsYXRmb3JtS2V5Ym9hcmRFdmVudDo6S2V5VXAgfHwgaW5pdGlhbEtleUV2
ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OkNoYXIpCkluZGV4OiBXZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0V2ZW50SGFu
ZGxlci5oCShyZXZpc2lvbiAyODc2OCkKKysrIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtMTM0LDYgKzEzNCw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgbmVl
ZHNLZXlib2FyZEV2ZW50RGlzYW1iaWd1YXRpb25RdWlya3MoKSBjb25zdDsKIAorICAgIGJvb2wg
aGFuZGxlQWNjZXNzS2V5KGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCYpOwogICAgIGJvb2wg
a2V5RXZlbnQoY29uc3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50Jik7CiAgICAgdm9pZCBkZWZhdWx0
S2V5Ym9hcmRFdmVudEhhbmRsZXIoS2V5Ym9hcmRFdmVudCopOwogCkluZGV4OiBXZWJLaXQvd2lu
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd2luL0NoYW5nZUxvZwkocmV2aXNpb24g
Mjg3NjgpCisrKyBXZWJLaXQvd2luL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDEyIEBACisyMDA3LTEyLTE2ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAd2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQ2MgorICAgICAgICBSRUdSRVNTSU9O
OiBhY2Nlc3Mga2V5cyBicm9rZW4gb24gV2luZG93cworCisgICAgICAgICogV2ViVmlldy5jcHA6
IChXZWJWaWV3OjprZXlQcmVzcyk6IEhhbmRsZSBzeXN0ZW0ga2V5IHByZXNzZXMgYXMgYWNjZXNz
IGtleXMuCisKIDIwMDctMTItMTUgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hY2llai4KSW5kZXg6IFdlYktpdC93aW4vV2ViVmll
dy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAkocmV2aXNpb24gMjg3
NjgpCisrKyBXZWJLaXQvd2luL1dlYlZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDgzLDEz
ICsxNDgzLDEyIEBAIGJvb2wgV2ViVmlldzo6a2V5RG93bihXUEFSQU0gdmlydHVhbEtleUMKIAog
Ym9vbCBXZWJWaWV3OjprZXlQcmVzcyhXUEFSQU0gY2hhckNvZGUsIExQQVJBTSBrZXlEYXRhLCBi
b29sIHN5c3RlbUtleURvd24pCiB7Ci0gICAgLy8gSUUgZG9lcyBub3QgZGlzcGF0Y2gga2V5cHJl
c3MgZXZlbnQgZm9yIFdNX1NZU0NIQVIuCi0gICAgaWYgKHN5c3RlbUtleURvd24pCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQogICAgIEZyYW1lKiBmcmFtZSA9IG1fcGFnZS0+Zm9jdXNDb250cm9s
bGVyKCktPmZvY3VzZWRPck1haW5GcmFtZSgpOwogCiAgICAgUGxhdGZvcm1LZXlib2FyZEV2ZW50
IGtleUV2ZW50KG1fdmlld1dpbmRvdywgY2hhckNvZGUsIGtleURhdGEsIFBsYXRmb3JtS2V5Ym9h
cmRFdmVudDo6Q2hhciwgc3lzdGVtS2V5RG93bik7CisgICAgLy8gSUUgZG9lcyBub3QgZGlzcGF0
Y2gga2V5cHJlc3MgZXZlbnQgZm9yIFdNX1NZU0NIQVIuCisgICAgaWYgKHN5c3RlbUtleURvd24p
CisgICAgICAgIHJldHVybiBmcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZUFjY2Vzc0tleShr
ZXlFdmVudCk7CiAgICAgaWYgKGZyYW1lLT5ldmVudEhhbmRsZXIoKS0+a2V5RXZlbnQoa2V5RXZl
bnQpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIApJbmRleDogV2ViS2l0L3d4L0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQvd3gvQ2hhbmdlTG9nCShyZXZpc2lvbiAyODc2OCkKKysrIFdl
YktpdC93eC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMTAgKzEsMTkgQEAKKzIwMDct
MTItMTYgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2NDYyCisgICAgICAgIFJFR1JFU1NJT046IGFjY2VzcyBrZXlz
IGJyb2tlbiBvbiBXaW5kb3dzCisKKyAgICAgICAgKiBXZWJWaWV3LmNwcDogKHd4V2ViVmlldzo6
T25LZXlFdmVudHMpOiBDYWxsIGhhbmRsZUFjY2Vzc0tleSgpIGFzIGFwcHJvcHJpYXRlLgorCiAy
MDA3LTEyLTE0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBBbGV4ZXkuCiAKICAgICAgICAgKiBXZWJLaXRTdXBwb3J0L0VkaXRvckNsaWVudFd4
LmNwcDoKICAgICAgICAgKFdlYkNvcmU6OkVkaXRvckNsaWVudFd4OjpoYW5kbGVLZXlib2FyZEV2
ZW50KTogU3dpdGNoZWQgZnJvbSBFZGl0b3I6OmV4ZWNDb21tYW5kCi0gICAgICAgIHRvIEVkdG9y
Ojpjb21tYW5kLgorICAgICAgICB0byBFZGl0b3I6OmNvbW1hbmQuCiAKIDIwMDctMTItMTIgIEJy
YWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCkluZGV4OiBXZWJLaXQvd3gvV2ViVmll
dy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3d4L1dlYlZpZXcuY3BwCShyZXZpc2lvbiAyODc2
OCkKKysrIFdlYktpdC93eC9XZWJWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDk5LDcgKzQ5
OSwxMCBAQCB2b2lkIHd4V2ViVmlldzo6T25LZXlFdmVudHMod3hLZXlFdmVudCYgCiAgICAgICAg
IH0KICAgICAgICAgZWxzZSB7ICAgCiAgICAgICAgICAgICBXZWJDb3JlOjpQbGF0Zm9ybUtleWJv
YXJkRXZlbnQgd2tFdmVudChldmVudCk7Ci0gICAgICAgICAgICBtX2ltcGwtPmZyYW1lLT5ldmVu
dEhhbmRsZXIoKS0+a2V5RXZlbnQod2tFdmVudCk7CisgICAgICAgICAgICBpZiAod2tFdmVudC50
eXBlKCkgPT0gUGxhdGZvcm1LZXlib2FyZEV2ZW50OjpDaGFyICYmIHdrRXZlbnQuYWx0S2V5KCkp
CisgICAgICAgICAgICAgICAgbV9pbXBsLT5mcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZUFj
Y2Vzc0tleSh3a0V2ZW50KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBtX2lt
cGwtPmZyYW1lLT5ldmVudEhhbmRsZXIoKS0+a2V5RXZlbnQod2tFdmVudCk7CiAgICAgICAgIH0K
ICAgICB9CiAgICAgCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17931</attachid>
            <date>2007-12-16 05:35:14 -0800</date>
            <delta_ts>2007-12-16 07:23:55 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>16462r1_patch.txt</filename>
            <type>text/plain</type>
            <size>8447</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyODc2OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMDctMTItMTYgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NDYyCisgICAgICAgIFJF
R1JFU1NJT046IGFjY2VzcyBrZXlzIGJyb2tlbiBvbiBXaW5kb3dzCisKKyAgICAgICAgKiBwYWdl
L0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRs
ZUFjY2Vzc0tleSk6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmtleUV2ZW50KToK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5oOgorICAgICAgICBNYWtlIGhhbmRsZUFjY2Vz
c0tleSBhIGNsYXNzIG1ldGhvZDsgcmVseSBvbiBXZWJLaXQgdG8gY2FsbCBpdCBvbiBXaW5kb3dz
IGFuZCB3eFdpZGdldHMuCisKIDIwMDctMTItMTUgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KSW5kZXg6IFdlYkNvcmUvcGFn
ZS9FdmVudEhhbmRsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuY3BwCShyZXZpc2lvbiAyODc2OCkKKysrIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNDY0LDcgKzE0NjQsNyBAQCBzdGF0aWMgRXZlbnRUYXJnZXRO
b2RlKiBldmVudFRhcmdldE5vZGVGCiAgICAgcmV0dXJuIEV2ZW50VGFyZ2V0Tm9kZUNhc3Qobm9k
ZSk7CiB9CiAKLXN0YXRpYyBib29sIGhhbmRsZUFjY2Vzc0tleShEb2N1bWVudCogZG9jdW1lbnQs
IGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCYgZXZ0KQorYm9vbCBFdmVudEhhbmRsZXI6Omhh
bmRsZUFjY2Vzc0tleShjb25zdCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQmIGV2dCkKIHsKICNpZiBQ
TEFURk9STShNQUMpCiAgICAgaWYgKGV2dC5jdHJsS2V5KCkpCkBAIC0xNDczLDcgKzE0NzMsNyBA
QCBzdGF0aWMgYm9vbCBoYW5kbGVBY2Nlc3NLZXkoRG9jdW1lbnQqIGRvCiAjZW5kaWYKICAgICB7
CiAgICAgICAgIFN0cmluZyBrZXkgPSBldnQudW5tb2RpZmllZFRleHQoKTsKLSAgICAgICAgRWxl
bWVudCogZWxlbSA9IGRvY3VtZW50LT5nZXRFbGVtZW50QnlBY2Nlc3NLZXkoa2V5Lmxvd2VyKCkp
OworICAgICAgICBFbGVtZW50KiBlbGVtID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+Z2V0RWxlbWVu
dEJ5QWNjZXNzS2V5KGtleS5sb3dlcigpKTsKICAgICAgICAgaWYgKGVsZW0pIHsKICAgICAgICAg
ICAgIGVsZW0tPmFjY2Vzc0tleUFjdGlvbihmYWxzZSk7CiAgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKQEAgLTE1MDIsMTUgKzE1MDIsMTMgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmtleUV2ZW50KGNv
bnN0IFBsYXRmbwogICAgIG1fZnJhbWUtPmxvYWRlcigpLT5yZXNldE11bHRpcGxlRm9ybVN1Ym1p
c3Npb25Qcm90ZWN0aW9uKCk7CiAKICAgICAvLyBJbiBJRSwgYWNjZXNzIGtleXMgYXJlIHNwZWNp
YWwsIHRoZXkgYXJlIGhhbmRsZWQgYWZ0ZXIgZGVmYXVsdCBrZXlkb3duIHByb2Nlc3NpbmcsIGJ1
dCBjYW5ub3QgYmUgY2FuY2VsZWQgLSB0aGlzIGlzIGhhcmQgdG8gbWF0Y2guCi0gICAgLy8gT24g
V2luZG93cywgd2UgcHJvY2VzcyB0aGVtIGJlZm9yZSBkaXNwYXRjaGluZyBrZXlwcmVzcyBldmVu
dCAoYW5kIHJlbHkgb24gV2ViS2l0IHRvIG5vdCBkcm9wIFdNX1NZU0NIQVIgZXZlbnRzIHdoZW4g
YSBrZXlkb3duIHJlcHJlc2VudGluZyBXTV9TWVNLRVlET1dOIGlzIGNhbmNlbGVkKS4KLSAgICAv
LyBPbiBNYWMgT1MgWCwgd2UgcHJvY2VzcyB0aGVtIGJlZm9yZSBkaXNwYXRjaGluZyBrZXlkb3du
LCBhcyB0aGUgZGVmYXVsdCBrZXlkb3duIGhhbmRsZXIgaW1wbGVtZW50cyBFbWFjcyBrZXkgYmlu
ZGluZ3MsIHdoaWNoIG1heSBjb25mbGljdCB3aXRoIGFjY2VzcyBrZXlzLgorICAgIC8vIE9uIE1h
YyBPUyBYLCB3ZSBwcm9jZXNzIHRoZW0gYmVmb3JlIGRpc3BhdGNoaW5nIGtleWRvd24sIGFzIHRo
ZSBkZWZhdWx0IGtleWRvd24gaGFuZGxlciBpbXBsZW1lbnRzIEVtYWNzIGtleSBiaW5kaW5ncywg
d2hpY2ggbWF5IGNvbmZsaWN0CisgICAgLy8gd2l0aCBhY2Nlc3Mga2V5cy4gVGhlbiB3ZSBkaXNw
YXRjaCBrZXlkb3duLCBidXQgc3VwcHJlc3MgaXRzIGRlZmF1bHQgaGFuZGxpbmcuCisgICAgLy8g
T24gV2luZG93cywgV2ViS2l0IGV4cGxpY2l0bHkgY2FsbHMgaGFuZGxlQWNjZXNzS2V5KCkgaW5z
dGVhZCBvZiBkaXNwYXRjaGluZyBhIGtleXByZXNzIGV2ZW50IGZvciBXTV9TWVNDSEFSIG1lc3Nh
Z2VzLgogICAgIC8vIE90aGVyIHBsYXRmb3JtcyBjdXJyZW50bHkgbWF0Y2ggZWl0aGVyIE1hYyBv
ciBXaW5kb3dzIGJlaGF2aW9yLCBkZXBlbmRpbmcgb24gd2hldGhlciB0aGV5IHNlbmQgY29tYmlu
ZWQgS2V5RG93biBldmVudHMuCiAgICAgYm9vbCBtYXRjaGVkQW5BY2Nlc3NLZXkgPSBmYWxzZTsK
LSAgICBpZiAoaW5pdGlhbEtleUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6
OkNoYXIpIHsKLSAgICAgICAgaWYgKGhhbmRsZUFjY2Vzc0tleShtX2ZyYW1lLT5kb2N1bWVudCgp
LCBpbml0aWFsS2V5RXZlbnQpKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfSBlbHNl
IGlmIChpbml0aWFsS2V5RXZlbnQudHlwZSgpID09IFBsYXRmb3JtS2V5Ym9hcmRFdmVudDo6S2V5
RG93bikKLSAgICAgICAgbWF0Y2hlZEFuQWNjZXNzS2V5ID0gaGFuZGxlQWNjZXNzS2V5KG1fZnJh
bWUtPmRvY3VtZW50KCksIGluaXRpYWxLZXlFdmVudCk7CisgICAgaWYgKGluaXRpYWxLZXlFdmVu
dC50eXBlKCkgPT0gUGxhdGZvcm1LZXlib2FyZEV2ZW50OjpLZXlEb3duKQorICAgICAgICBtYXRj
aGVkQW5BY2Nlc3NLZXkgPSBoYW5kbGVBY2Nlc3NLZXkoaW5pdGlhbEtleUV2ZW50KTsKIAogICAg
IC8vIEZJWE1FOiBpdCB3b3VsZCBiZSBmYWlyIHRvIGxldCBhbiBpbnB1dCBtZXRob2QgaGFuZGxl
IEtleVVwIGV2ZW50cyBiZWZvcmUgRE9NIGRpc3BhdGNoLgogICAgIGlmIChpbml0aWFsS2V5RXZl
bnQudHlwZSgpID09IFBsYXRmb3JtS2V5Ym9hcmRFdmVudDo6S2V5VXAgfHwgaW5pdGlhbEtleUV2
ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OkNoYXIpCkluZGV4OiBXZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0V2ZW50SGFu
ZGxlci5oCShyZXZpc2lvbiAyODc2OCkKKysrIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtMTM0LDYgKzEzNCw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgbmVl
ZHNLZXlib2FyZEV2ZW50RGlzYW1iaWd1YXRpb25RdWlya3MoKSBjb25zdDsKIAorICAgIGJvb2wg
aGFuZGxlQWNjZXNzS2V5KGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCYpOwogICAgIGJvb2wg
a2V5RXZlbnQoY29uc3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50Jik7CiAgICAgdm9pZCBkZWZhdWx0
S2V5Ym9hcmRFdmVudEhhbmRsZXIoS2V5Ym9hcmRFdmVudCopOwogCkluZGV4OiBXZWJLaXQvd2lu
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd2luL0NoYW5nZUxvZwkocmV2aXNpb24g
Mjg3NjgpCisrKyBXZWJLaXQvd2luL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDEyIEBACisyMDA3LTEyLTE2ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAd2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQ2MgorICAgICAgICBSRUdSRVNTSU9O
OiBhY2Nlc3Mga2V5cyBicm9rZW4gb24gV2luZG93cworCisgICAgICAgICogV2ViVmlldy5jcHA6
IChXZWJWaWV3OjprZXlQcmVzcyk6IEhhbmRsZSBzeXN0ZW0ga2V5IHByZXNzZXMgYXMgYWNjZXNz
IGtleXMuCisKIDIwMDctMTItMTUgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hY2llai4KSW5kZXg6IFdlYktpdC93aW4vV2ViVmll
dy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAkocmV2aXNpb24gMjg3
NjgpCisrKyBXZWJLaXQvd2luL1dlYlZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDgzLDEz
ICsxNDgzLDEyIEBAIGJvb2wgV2ViVmlldzo6a2V5RG93bihXUEFSQU0gdmlydHVhbEtleUMKIAog
Ym9vbCBXZWJWaWV3OjprZXlQcmVzcyhXUEFSQU0gY2hhckNvZGUsIExQQVJBTSBrZXlEYXRhLCBi
b29sIHN5c3RlbUtleURvd24pCiB7Ci0gICAgLy8gSUUgZG9lcyBub3QgZGlzcGF0Y2gga2V5cHJl
c3MgZXZlbnQgZm9yIFdNX1NZU0NIQVIuCi0gICAgaWYgKHN5c3RlbUtleURvd24pCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQogICAgIEZyYW1lKiBmcmFtZSA9IG1fcGFnZS0+Zm9jdXNDb250cm9s
bGVyKCktPmZvY3VzZWRPck1haW5GcmFtZSgpOwogCiAgICAgUGxhdGZvcm1LZXlib2FyZEV2ZW50
IGtleUV2ZW50KG1fdmlld1dpbmRvdywgY2hhckNvZGUsIGtleURhdGEsIFBsYXRmb3JtS2V5Ym9h
cmRFdmVudDo6Q2hhciwgc3lzdGVtS2V5RG93bik7CisgICAgLy8gSUUgZG9lcyBub3QgZGlzcGF0
Y2gga2V5cHJlc3MgZXZlbnQgZm9yIFdNX1NZU0NIQVIuCisgICAgaWYgKHN5c3RlbUtleURvd24p
CisgICAgICAgIHJldHVybiBmcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZUFjY2Vzc0tleShr
ZXlFdmVudCk7CiAgICAgaWYgKGZyYW1lLT5ldmVudEhhbmRsZXIoKS0+a2V5RXZlbnQoa2V5RXZl
bnQpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIApJbmRleDogV2ViS2l0L3d4L0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQvd3gvQ2hhbmdlTG9nCShyZXZpc2lvbiAyODc2OCkKKysrIFdl
YktpdC93eC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMTAgKzEsMTkgQEAKKzIwMDct
MTItMTYgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2NDYyCisgICAgICAgIFJFR1JFU1NJT046IGFjY2VzcyBrZXlz
IGJyb2tlbiBvbiBXaW5kb3dzCisKKyAgICAgICAgKiBXZWJWaWV3LmNwcDogKHd4V2ViVmlldzo6
T25LZXlFdmVudHMpOiBDYWxsIGhhbmRsZUFjY2Vzc0tleSgpIGFzIGFwcHJvcHJpYXRlLgorCiAy
MDA3LTEyLTE0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBBbGV4ZXkuCiAKICAgICAgICAgKiBXZWJLaXRTdXBwb3J0L0VkaXRvckNsaWVudFd4
LmNwcDoKICAgICAgICAgKFdlYkNvcmU6OkVkaXRvckNsaWVudFd4OjpoYW5kbGVLZXlib2FyZEV2
ZW50KTogU3dpdGNoZWQgZnJvbSBFZGl0b3I6OmV4ZWNDb21tYW5kCi0gICAgICAgIHRvIEVkdG9y
Ojpjb21tYW5kLgorICAgICAgICB0byBFZGl0b3I6OmNvbW1hbmQuCiAKIDIwMDctMTItMTIgIEJy
YWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCkluZGV4OiBXZWJLaXQvd3gvV2ViVmll
dy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3d4L1dlYlZpZXcuY3BwCShyZXZpc2lvbiAyODc2
OCkKKysrIFdlYktpdC93eC9XZWJWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDk5LDcgKzQ5
OSwxMCBAQCB2b2lkIHd4V2ViVmlldzo6T25LZXlFdmVudHMod3hLZXlFdmVudCYgCiAgICAgICAg
IH0KICAgICAgICAgZWxzZSB7ICAgCiAgICAgICAgICAgICBXZWJDb3JlOjpQbGF0Zm9ybUtleWJv
YXJkRXZlbnQgd2tFdmVudChldmVudCk7Ci0gICAgICAgICAgICBtX2ltcGwtPmZyYW1lLT5ldmVu
dEhhbmRsZXIoKS0+a2V5RXZlbnQod2tFdmVudCk7CisgICAgICAgICAgICBpZiAod2tFdmVudC50
eXBlKCkgPT0gUGxhdGZvcm1LZXlib2FyZEV2ZW50OjpDaGFyICYmIHdrRXZlbnQuYWx0S2V5KCkp
CisgICAgICAgICAgICAgICAgbV9pbXBsLT5mcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmhhbmRsZUFj
Y2Vzc0tleSh3a0V2ZW50KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBtX2lt
cGwtPmZyYW1lLT5ldmVudEhhbmRsZXIoKS0+a2V5RXZlbnQod2tFdmVudCk7CiAgICAgICAgIH0K
ICAgICB9CiAgICAgCkluZGV4OiBXZWJLaXRUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyODc2OSkKKysrIFdlYktpdFRvb2xzL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDA3LTEyLTE2ICBBbGV4
ZXkgUHJvc2t1cnlha292ICA8YXBAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNjQ2MgorICAgICAgICBSRUdSRVNTSU9OOiBhY2Nlc3Mga2V5cyBicm9rZW4gb24g
V2luZG93cworCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvd2luL0V2ZW50U2VuZGVyLmNwcDog
KGtleURvd25DYWxsYmFjayk6IFNlbmQgc3lzdGVtIGtleSBldmVudHMKKyAgICAgICAgaWYgQWx0
IGlzIHByZXNzZWQuCisKIDIwMDctMTItMTUgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4K
IAogICAgICAgICBSZXZpZXdlZCBieSBNYXJrIFJvd2UuCkluZGV4OiBXZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS93aW4vRXZlbnRTZW5kZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL3dpbi9FdmVudFNlbmRlci5jcHAJKHJldmlzaW9uIDI4NzY4KQorKysg
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0V2ZW50U2VuZGVyLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMzQ0LDcgKzM0NCw3IEBAIHN0YXRpYyBKU1ZhbHVlUmVmIGtleURvd25DYWxsYmFj
ayhKU0NvbnQKICAgICAgICAgOjpTZXRLZXlib2FyZFN0YXRlKG5ld0tleVN0YXRlKTsKICAgICB9
CiAKLSAgICBNU0cgbXNnID0gbWFrZU1zZyh3ZWJWaWV3V2luZG93LCBXTV9LRVlET1dOLCB2aXJ0
dWFsS2V5Q29kZSwgMCk7CisgICAgTVNHIG1zZyA9IG1ha2VNc2cod2ViVmlld1dpbmRvdywgKDo6
R2V0S2V5U3RhdGUoVktfTUVOVSkgJiAweDgwMDApID8gV01fU1lTS0VZRE9XTiA6IFdNX0tFWURP
V04sIHZpcnR1YWxLZXlDb2RlLCAwKTsKICAgICBpZiAodmlydHVhbEtleUNvZGUgIT0gMjU1KQog
ICAgICAgICBkaXNwYXRjaE1lc3NhZ2UoJm1zZyk7CiAgICAgZWxzZSB7CkBAIC0zNTQsNyArMzU0
LDcgQEAgc3RhdGljIEpTVmFsdWVSZWYga2V5RG93bkNhbGxiYWNrKEpTQ29udAogICAgIH0KIAog
ICAgIC8vIFRlc3RzIGV4cGVjdCB0aGF0IGFsbCBtZXNzYWdlcyBhcmUgcHJvY2Vzc2VkIGJ5IHRo
ZSB0aW1lIGtleURvd24oKSByZXR1cm5zLgotICAgIGlmICg6OlBlZWtNZXNzYWdlKCZtc2csIHdl
YlZpZXdXaW5kb3csIFdNX0NIQVIsIFdNX0NIQVIsIFBNX1JFTU9WRSkpCisgICAgaWYgKDo6UGVl
a01lc3NhZ2UoJm1zZywgd2ViVmlld1dpbmRvdywgV01fQ0hBUiwgV01fQ0hBUiwgUE1fUkVNT1ZF
KSB8fCA6OlBlZWtNZXNzYWdlKCZtc2csIHdlYlZpZXdXaW5kb3csIFdNX1NZU0NIQVIsIFdNX1NZ
U0NIQVIsIFBNX1JFTU9WRSkpCiAgICAgICAgIDo6RGlzcGF0Y2hNZXNzYWdlKCZtc2cpOwogCiAg
ICAgTVNHIG1zZ1VwID0gbWFrZU1zZyh3ZWJWaWV3V2luZG93LCBXTV9LRVlVUCwgdmlydHVhbEtl
eUNvZGUsIDApOwo=
</data>
<flag name="review"
          id="7766"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>