<?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>40529</bug_id>
          
          <creation_ts>2010-06-12 11:19:26 -0700</creation_ts>
          <short_desc>eventSender.keyDown(&quot;delete&quot;) incorrectly sends a backspace on some platforms</short_desc>
          <delta_ts>2010-06-14 15:23:40 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robert Hogan">robert</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>237318</commentid>
    <comment_count>0</comment_count>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-06-12 11:19:26 -0700</bug_when>
    <thetext>[Qt] Use backspace for eventSender.keyDown(&quot;delete&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237319</commentid>
    <comment_count>1</comment_count>
      <attachid>58561</attachid>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-06-12 11:23:10 -0700</bug_when>
    <thetext>Created attachment 58561
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237323</commentid>
    <comment_count>2</comment_count>
      <attachid>58562</attachid>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-06-12 11:26:54 -0700</bug_when>
    <thetext>Created attachment 58562
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237324</commentid>
    <comment_count>3</comment_count>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-06-12 11:29:31 -0700</bug_when>
    <thetext>To tell the truth I think using &quot;delete&quot; to refer to backspace in eventsender is a bit confusing. I was going to add a &quot;backspace&quot; event but noticed that Mac actually attaches the delete unicode value to &quot;delete&quot; while everyone else uses backspace.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237394</commentid>
    <comment_count>4</comment_count>
      <attachid>58562</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-12 18:44:05 -0700</bug_when>
    <thetext>Comment on attachment 58562
Patch

Yay for fixing layout tests!  Are we certain this is the right fix and that it doesn&apos;t needs some different fix in WebCore?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237395</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-12 18:44:31 -0700</bug_when>
    <thetext>CCing editing peeps just so they see this go by.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237499</commentid>
    <comment_count>6</comment_count>
      <attachid>58562</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-06-12 22:41:39 -0700</bug_when>
    <thetext>Comment on attachment 58562
Patch

This seems wrong - Mac EventSender sends backspace for &quot;\x8&quot; and forward delete for &quot;delete&quot;:

    } else if ([character isEqualToString:@&quot;delete&quot;]) {
        const unichar ch = 0x7f;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237501</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-06-12 22:42:54 -0700</bug_when>
    <thetext>I just noticed that you said the same in comment 3, but then I&apos;m not sure why you poposed this fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237531</commentid>
    <comment_count>8</comment_count>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-06-13 03:15:22 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; I just noticed that you said the same in comment 3, but then I&apos;m not sure why you poposed this fix.

For the fairly blinkered reason that it makes keyDown(&quot;delete&quot;) work for all tests that use it on Qt, and otherwise everyone but Mac translates keyDown(&quot;delete&quot;) as backspace.

win:

    else if (JSStringIsEqualToUTF8CString(character, &quot;delete&quot;))
        virtualKeyCode = VK_BACK;

chromium:

    else if (&quot;delete&quot; == codeStr)
        code = base::VKEY_BACK;

and so on.

The Mac keycodes listed at: http://forums.macrumors.com/showthread.php?t=780577 don&apos;t include backspace, but it has forwardDelete: &apos;kVK_ForwardDelete             = 0x75&apos;.

This link ( http://www.davidalison.com/2008/03/mac-where-did-my-backspace-key-go.html ) suggests that Mac does something special with backspace/delete so maybe that&apos;s the source of the difference?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237583</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-06-13 11:00:15 -0700</bug_when>
    <thetext>Mac virtual key code for backspace in 0x33. This key is marked &quot;delete&quot; on U.S. Mac keyboards, and the other one is marked with an icon, and called &quot;forward delete&quot;, which is a source of some confusion. There is also a &quot;clear&quot; key, which is located where num lock usually is on PC keyboards.

See e.g. &lt;http://boredzo.org/blog/wp-content/uploads/2007/05/IMTx-virtual-keycodes.pdf&gt; for a layout of an (old) Mac keyboard.

The immediate reason for the difference in layout test behavior is that on Mac, character code 0x7f is later turned into 0x08 in PlatformKeyboardEvent:

    // Turn 0x7F into 8, because backspace needs to always be 8.
    if (m_text == &quot;\x7F&quot;)
        m_text = &quot;\x8&quot;;
    if (m_unmodifiedText == &quot;\x7F&quot;)
        m_unmodifiedText = &quot;\x8&quot;;

Mac character code for forward delete is 0xF728 (NSDeleteFunctionKey), not 0x7f.

I&apos;m not yet sure what&apos;s going on, will need to dig up the history of this code. But we probably don&apos;t want eventSender.keyDown(&quot;delete&quot;) and eventSender.keyDown(&quot;\x8&quot;) to do the same thing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237971</commentid>
    <comment_count>10</comment_count>
      <attachid>58682</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-06-14 12:09:24 -0700</bug_when>
    <thetext>Created attachment 58682
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237981</commentid>
    <comment_count>11</comment_count>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-06-14 12:23:33 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; Created an attachment (id=58682) [details]
&gt; proposed fix

why not add keyDown(&quot;backspace&quot;)? I think you&apos;d have to know your keycodes to realize \x8 is backspace without a bit of digging.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238009</commentid>
    <comment_count>12</comment_count>
      <attachid>58682</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-06-14 13:13:48 -0700</bug_when>
    <thetext>Comment on attachment 58682
proposed fix

&gt; +        * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
&gt; +        Use virtual key code to force correct character code for clarity. Also, reworded comment,
&gt; +        since saying that &quot;backspace needs to always be 8&quot; misleadingly implied that it could
&gt; +        &quot;sometimes&quot; be such without this code.

I don’t think that the use of 0x33 here improves clarity. Where does that 0x33 value come from? AppKit has constants named NSDeleteCharacter and NSDeleteFunctionKey, but I don’t see any constant for the 0x33 value. At least within this source file, I’d like to see a named constant used for the 0x33 value. Or maybe the comment can say what the number means.

Do we have a guarantee that this new code behaves the same in all cases as the old code? Even in applications that construct their own NSEvent objects?

&gt;      // The adjustments below are only needed in backward compatibility mode, but we cannot tell what mode we are in from here.

Is this comment still correct? What is &quot;backward compatibility mode&quot;?

&gt; +        * DumpRenderTree/mac/EventSendingController.mm:
&gt; +        (-[EventSendingController keyDown:withModifiers:withLocation:]): We were sending a broken
&gt; +        event for &quot;delete&quot; - it had virtual key code from forward delete, and text from backspace.
&gt; +        Fixed &quot;delete&quot; to mean forward delete.

I don&apos;t think that was our intention when making the word &quot;delete&quot; be one of the values taken by the keyDown function in eventSender.

Both keys are labeled &quot;delete&quot; on my keyboard, and the Unicode character for U+007F is named DELETE. Because of all these overlapping uses of the word, I think it’s confusing to use &quot;delete&quot; to mean the forward delete button. Maybe we should change eventSender.keyDown to work with the names &quot;backspace&quot; and &quot;forward delete&quot; and eliminate the &quot;delete&quot; name entirely?

r=me on this change as is, since it at least makes things consistent, but please consider my comments anyway</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238039</commentid>
    <comment_count>13</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-06-14 14:10:21 -0700</bug_when>
    <thetext>&gt; I don’t think that the use of 0x33 here improves clarity. 
&gt; Where does that 0x33 value come from? 
&gt; AppKit has constants named NSDeleteCharacter and NSDeleteFunctionKey, 
&gt; but I don’t see any constant for the 0x33 value.

Virtual key codes are only documented in Inside Mac, and a few have constants in HIToolBox/Events.h header.

I&apos;ve changed this to check Windows virtual key code, as other code in this function does, and used constants from WindowsKeyboardCodes.h.

&gt; Do we have a guarantee that this new code behaves the same in all cases as the old code? Even in applications that construct their own NSEvent objects?

I&apos;ve checked that combinations like Option+Backspace are unaffected. Applications that construct inconsistent NSEvents (like DRT did) can be affected, of course.

&gt; &gt;      // The adjustments below are only needed in backward compatibility mode, but we cannot tell what mode we are in from here.
&gt; 
&gt; Is this comment still correct? What is &quot;backward compatibility mode&quot;?

It&apos;s Dashboard compatibility mode that we extended to apply to applications linked against old WebKit, see &lt;http://trac.webkit.org/changeset/28693&gt;.

This comment refers to the fact that we don&apos;t generate keypress event, and thus don&apos;t expose character code for backspace and tab keys to JS (other than in backward compatibility mode). But I think that having inconsistent data internally is also bad, so I removed this comment now.

&gt; Both keys are labeled &quot;delete&quot; on my keyboard, and the Unicode character for U+007F is named DELETE. Because of all these overlapping uses of the word, I think it’s confusing to use &quot;delete&quot; to mean the forward delete button. Maybe we should change eventSender.keyDown to work with the names &quot;backspace&quot; and &quot;forward delete&quot; and eliminate the &quot;delete&quot; name entirely?

AFAIK, it&apos;s only Apple&apos;s U.S. keyboards that have this trait - even international Apple keyboards have an icon for backspace. But I definitely agree that backspace/forward delete are the least ambiguous technical terms for this in WebKit code. I chose to not make this change in this patch to avoid making it larger and more confusing.

At least, the new test will make sure that DRT ports won&apos;t get this wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238064</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-06-14 14:59:20 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/changeset/61153&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238082</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-14 15:23:40 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/61153 might have broken Chromium Linux Release
The following changes are on the blame list:
http://trac.webkit.org/changeset/61153
http://trac.webkit.org/changeset/61154
http://trac.webkit.org/changeset/61155</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58561</attachid>
            <date>2010-06-12 11:23:10 -0700</date>
            <delta_ts>2010-06-12 11:26:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40529-20100612192312.patch</filename>
            <type>text/plain</type>
            <size>1337</size>
            <attacher name="Robert Hogan">robert</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCmluZGV4IDU2OWQyYTdmY2VhZDRlYTkzNGVmMTM1MjIzYjU5
YTVhODI2NGI0ZjQuLjE2NTE2ZDBhOWU5NjcxZmM4NmNmN2UyZTNhMzRlNjRkNDc1NTUzNmEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vcXQvU2tpcHBlZApAQCAtODMzLDEwICs4MzMsNiBAQCBmYXN0L2V2ZW50cy9v
bmRyb3AtdGV4dC1odG1sLmh0bWwKICMgY2F1c2VkIGJ5OiBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC81MjE5MgogaHR0cC90ZXN0cy9taXNjL2RyYWctb3Zlci1pZnJhbWUtaW52YWxp
ZC1zb3VyY2UtY3Jhc2guaHRtbAogCi0jIC0tLS0tLS0gYnJva2VuIGJhY2tncm91bmRPZihlbCkK
LWZhc3QvZm9ybXMvaW5wdXQtbGl2ZS1wc2V1ZG8tc2VsZWN0b3JzLmh0bWwKLWZhc3QvZm9ybXMv
dGV4dGFyZWEtbGl2ZS1wc2V1ZG8tc2VsZWN0b3JzLmh0bWwKLQogIyAtLS0tLS0tIGJyb2tlbiBJ
Q08gZmlsZSBkZWNvZGluZwogZmFzdC9pbWFnZXMvZmF2aWNvbi1hcy1pbWFnZS5odG1sCiBmYXN0
L2ltYWdlcy9pY29uLTBjb2xvcnMuaHRtbApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvcXQvRXZlbnRTZW5kZXJRdC5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9xdC9FdmVudFNlbmRlclF0LmNwcAppbmRleCA3ZWM1MDVmY2RkNWI5OThjN2U4ZGM4NDAyYjVi
ZWY0MjEyNTc3Y2U3Li45ZTZmNGZiY2U0YWRlZWQ3OTgwYjQ3Y2E5NzEwMjMwZmI4ZTJhY2ZjIDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9FdmVudFNlbmRlclF0LmNw
cAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9FdmVudFNlbmRlclF0LmNwcApA
QCAtMzI0LDcgKzMyNCw3IEBAIHZvaWQgRXZlbnRTZW5kZXI6OmtleURvd24oY29uc3QgUVN0cmlu
ZyYgc3RyaW5nLCBjb25zdCBRU3RyaW5nTGlzdCYgbW9kaWZpZXJzLCB1CiAgICAgICAgICAgICBj
b2RlID0gUXQ6OktleV9FbmQ7CiAgICAgICAgIH0gZWxzZSBpZiAoc3RyaW5nID09IFFMYXRpbjFT
dHJpbmcoImRlbGV0ZSIpKSB7CiAgICAgICAgICAgICBzID0gUVN0cmluZygpOwotICAgICAgICAg
ICAgY29kZSA9IFF0OjpLZXlfRGVsZXRlOworICAgICAgICAgICAgY29kZSA9IFF0OjpLZXlfQmFj
a3NwYWNlOwogICAgICAgICB9CiAgICAgfQogICAgIFFLZXlFdmVudCBldmVudChRRXZlbnQ6Oktl
eVByZXNzLCBjb2RlLCBtb2RpZnMsIHMpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58562</attachid>
            <date>2010-06-12 11:26:54 -0700</date>
            <delta_ts>2010-06-12 22:41:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40529-20100612192656.patch</filename>
            <type>text/plain</type>
            <size>2800</size>
            <attacher name="Robert Hogan">robert</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkNjU1ZjAzMGM2ZjY1OTgyOWU5MWU1NDZhMWI0MDA4ZGM5NzYyNmU2Li4xMDJhMGZm
ZmUyNjUzOGVlM2RmMmZhM2JhN2E2ZGU2YjViNTM2MWNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMTAtMDYtMTIgIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gVXNlIGJhY2tzcGFj
ZSBmb3IgZXZlbnRTZW5kZXIua2V5RG93bigiZGVsZXRlIikgbGlrZSBldmVyeW9uZSBlbHNlCisK
KyAgICAgICAgVW5za2lwOgorICAgICAgICBmYXN0L2Zvcm1zL2lucHV0LWxpdmUtcHNldWRvLXNl
bGVjdG9ycy5odG1sCisgICAgICAgIGZhc3QvZm9ybXMvdGV4dGFyZWEtbGl2ZS1wc2V1ZG8tc2Vs
ZWN0b3JzLmh0bWwKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDA1MjkKKworICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6CisKIDIwMTAtMDYt
MTMgIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9xdC9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAppbmRleCA1Njlk
MmE3ZmNlYWQ0ZWE5MzRlZjEzNTIyM2I1OWE1YTgyNjRiNGY0Li4xNjUxNmQwYTllOTY3MWZjODZj
ZjdlMmUzYTM0ZTY0ZDQ3NTU1MzZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKQEAgLTgzMywx
MCArODMzLDYgQEAgZmFzdC9ldmVudHMvb25kcm9wLXRleHQtaHRtbC5odG1sCiAjIGNhdXNlZCBi
eTogaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNTIxOTIKIGh0dHAvdGVzdHMvbWlz
Yy9kcmFnLW92ZXItaWZyYW1lLWludmFsaWQtc291cmNlLWNyYXNoLmh0bWwKIAotIyAtLS0tLS0t
IGJyb2tlbiBiYWNrZ3JvdW5kT2YoZWwpCi1mYXN0L2Zvcm1zL2lucHV0LWxpdmUtcHNldWRvLXNl
bGVjdG9ycy5odG1sCi1mYXN0L2Zvcm1zL3RleHRhcmVhLWxpdmUtcHNldWRvLXNlbGVjdG9ycy5o
dG1sCi0KICMgLS0tLS0tLSBicm9rZW4gSUNPIGZpbGUgZGVjb2RpbmcKIGZhc3QvaW1hZ2VzL2Zh
dmljb24tYXMtaW1hZ2UuaHRtbAogZmFzdC9pbWFnZXMvaWNvbi0wY29sb3JzLmh0bWwKZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRl
eCA5ZTNhYzY3OGUyZGY0YjE2ZjhmYmEyODRjMWJiMDZhMWE5N2RmZGJjLi4wZWMwODk3ODIwMzMw
MjZmZWZlMDMwMjE2ZDM5MjIxZWMyNGU2MTRmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFu
Z2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTAt
MDYtMTIgIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gVXNlIGJhY2tzcGFjZSBmb3Ig
ZXZlbnRTZW5kZXIua2V5RG93bigiZGVsZXRlIikgbGlrZSBldmVyeW9uZSBlbHNlCisKKyAgICAg
ICAgVW5za2lwOgorICAgICAgICBmYXN0L2Zvcm1zL2lucHV0LWxpdmUtcHNldWRvLXNlbGVjdG9y
cy5odG1sCisgICAgICAgIGZhc3QvZm9ybXMvdGV4dGFyZWEtbGl2ZS1wc2V1ZG8tc2VsZWN0b3Jz
Lmh0bWwKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDA1MjkKKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0V2ZW50U2VuZGVyUXQuY3BwOgor
ICAgICAgICAoRXZlbnRTZW5kZXI6OmtleURvd24pOgorCiAyMDEwLTA2LTEyICBLZW50IFRhbXVy
YSAgPHRrZW50QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEds
YXprb3YuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9FdmVudFNl
bmRlclF0LmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0V2ZW50U2VuZGVyUXQu
Y3BwCmluZGV4IDdlYzUwNWZjZGQ1Yjk5OGM3ZThkYzg0MDJiNWJlZjQyMTI1NzdjZTcuLjllNmY0
ZmJjZTRhZGVlZDc5ODBiNDdjYTk3MTAyMzBmYjhlMmFjZmMgMTAwNjQ0Ci0tLSBhL1dlYktpdFRv
b2xzL0R1bXBSZW5kZXJUcmVlL3F0L0V2ZW50U2VuZGVyUXQuY3BwCisrKyBiL1dlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL3F0L0V2ZW50U2VuZGVyUXQuY3BwCkBAIC0zMjQsNyArMzI0LDcgQEAg
dm9pZCBFdmVudFNlbmRlcjo6a2V5RG93bihjb25zdCBRU3RyaW5nJiBzdHJpbmcsIGNvbnN0IFFT
dHJpbmdMaXN0JiBtb2RpZmllcnMsIHUKICAgICAgICAgICAgIGNvZGUgPSBRdDo6S2V5X0VuZDsK
ICAgICAgICAgfSBlbHNlIGlmIChzdHJpbmcgPT0gUUxhdGluMVN0cmluZygiZGVsZXRlIikpIHsK
ICAgICAgICAgICAgIHMgPSBRU3RyaW5nKCk7Ci0gICAgICAgICAgICBjb2RlID0gUXQ6OktleV9E
ZWxldGU7CisgICAgICAgICAgICBjb2RlID0gUXQ6OktleV9CYWNrc3BhY2U7CiAgICAgICAgIH0K
ICAgICB9CiAgICAgUUtleUV2ZW50IGV2ZW50KFFFdmVudDo6S2V5UHJlc3MsIGNvZGUsIG1vZGlm
cywgcyk7Cg==
</data>
<flag name="review"
          id="44916"
          type_id="1"
          status="-"
          setter="ap"
    />
    <flag name="commit-queue"
          id="44927"
          type_id="3"
          status="-"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58682</attachid>
            <date>2010-06-14 12:09:24 -0700</date>
            <delta_ts>2010-06-14 13:13:47 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>DeleteKey.txt</filename>
            <type>text/plain</type>
            <size>9583</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTEzMykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTAtMDYtMTQgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNTI5CisgICAgICAgIGV2
ZW50U2VuZGVyLmtleURvd24oImRlbGV0ZSIpIGluY29ycmVjdGx5IHNlbmRzIGEgYmFja3NwYWNl
IG9uIHNvbWUgcGxhdGZvcm1zCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvS2V5RXZlbnRNYWMu
bW06IChXZWJDb3JlOjpQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OlBsYXRmb3JtS2V5Ym9hcmRFdmVu
dCk6CisgICAgICAgIFVzZSB2aXJ0dWFsIGtleSBjb2RlIHRvIGZvcmNlIGNvcnJlY3QgY2hhcmFj
dGVyIGNvZGUgZm9yIGNsYXJpdHkuIEFsc28sIHJld29yZGVkIGNvbW1lbnQsCisgICAgICAgIHNp
bmNlIHNheWluZyB0aGF0ICJiYWNrc3BhY2UgbmVlZHMgdG8gYWx3YXlzIGJlIDgiIG1pc2xlYWRp
bmdseSBpbXBsaWVkIHRoYXQgaXQgY291bGQKKyAgICAgICAgInNvbWV0aW1lcyIgYmUgc3VjaCB3
aXRob3V0IHRoaXMgY29kZS4KKwogMjAxMC0wNi0xNCAgSmlhbiBMaSAgPGppYW5saUBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gRml4IGJ1aWxkIGJyZWFrIGluIEdUSy4KSW5k
ZXg6IFdlYkNvcmUvcGxhdGZvcm0vbWFjL0tleUV2ZW50TWFjLm1tCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGxhdGZvcm0vbWFjL0tleUV2ZW50TWFjLm1tCShyZXZpc2lvbiA2MTEyNSkKKysrIFdl
YkNvcmUvcGxhdGZvcm0vbWFjL0tleUV2ZW50TWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yMTAs
MTEgKzIxMCwxMSBAQCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OlBsYXRmb3JtS2V5Ym9hcmRFCiAK
ICAgICAvLyBUaGUgYWRqdXN0bWVudHMgYmVsb3cgYXJlIG9ubHkgbmVlZGVkIGluIGJhY2t3YXJk
IGNvbXBhdGliaWxpdHkgbW9kZSwgYnV0IHdlIGNhbm5vdCB0ZWxsIHdoYXQgbW9kZSB3ZSBhcmUg
aW4gZnJvbSBoZXJlLgogCi0gICAgLy8gVHVybiAweDdGIGludG8gOCwgYmVjYXVzZSBiYWNrc3Bh
Y2UgbmVlZHMgdG8gYWx3YXlzIGJlIDguCi0gICAgaWYgKG1fdGV4dCA9PSAiXHg3RiIpCisgICAg
Ly8gQXBwS2l0IHNldHMgdGV4dCB0byAiXHg3RiIgZm9yIGJhY2tzcGFjZSwgYnV0IHRoZSBjb3Jy
ZWN0IEtleWJvYXJkRXZlbnQgY2hhcmFjdGVyIGNvZGUgaXMgOC4KKyAgICBpZiAobV9uYXRpdmVW
aXJ0dWFsS2V5Q29kZSA9PSAweDMzKSB7CiAgICAgICAgIG1fdGV4dCA9ICJceDgiOwotICAgIGlm
IChtX3VubW9kaWZpZWRUZXh0ID09ICJceDdGIikKICAgICAgICAgbV91bm1vZGlmaWVkVGV4dCA9
ICJceDgiOworICAgIH0KICAgICAvLyBBbHdheXMgdXNlIDkgZm9yIHRhYiAtLSB3ZSBkb24ndCB3
YW50IHRvIHVzZSBBcHBLaXQncyBkaWZmZXJlbnQgY2hhcmFjdGVyIGZvciBzaGlmdC10YWIuCiAg
ICAgaWYgKG1fd2luZG93c1ZpcnR1YWxLZXlDb2RlID09IDkpIHsKICAgICAgICAgbV90ZXh0ID0g
Ilx4OSI7CkluZGV4OiBXZWJLaXRUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA2MTEzMykKKysrIFdlYktpdFRvb2xzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIwIEBACisyMDEwLTA2LTE0ICBBbGV4ZXkgUHJv
c2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MDUyOQorICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJkZWxldGUiKSBpbmNvcnJlY3Rs
eSBzZW5kcyBhIGJhY2tzcGFjZSBvbiBzb21lIHBsYXRmb3JtcworCisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW06CisgICAgICAgICgtW0V2ZW50
U2VuZGluZ0NvbnRyb2xsZXIga2V5RG93bjp3aXRoTW9kaWZpZXJzOndpdGhMb2NhdGlvbjpdKTog
V2Ugd2VyZSBzZW5kaW5nIGEgYnJva2VuCisgICAgICAgIGV2ZW50IGZvciAiZGVsZXRlIiAtIGl0
IGhhZCB2aXJ0dWFsIGtleSBjb2RlIGZyb20gZm9yd2FyZCBkZWxldGUsIGFuZCB0ZXh0IGZyb20g
YmFja3NwYWNlLgorICAgICAgICBGaXhlZCAiZGVsZXRlIiB0byBtZWFuIGZvcndhcmQgZGVsZXRl
LgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwOiAo
RXZlbnRTZW5kZXI6OmtleURvd24pOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9FdmVu
dFNlbmRlci5jcHA6IChrZXlEb3duQ2FsbGJhY2spOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L3dpbi9FdmVudFNlbmRlci5jcHA6IChrZXlEb3duQ2FsbGJhY2spOgorICAgICAgICBNYWMgRFJU
IGNvbmZ1c2lvbiBoYXMgcHJvcGFnYXRlZCB0byBvdGhlciBwbGF0Zm9ybXMsIGZpeGluZyB0aG9z
ZS4KKwogMjAxMC0wNi0xNCAgTWFoZXNoIEt1bGthcm5pICA8bWFoZXNoLmt1bGthcm5pQG5va2lh
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBMYXN6bG8gR29tYm9zLgpJbmRleDogV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRXZlbnRTZW5kZXIuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0V2ZW50U2VuZGVyLmNwcAko
cmV2aXNpb24gNjExMjUpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9F
dmVudFNlbmRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU0Miw3ICs1NDIsNyBAQCB2b2lkIEV2
ZW50U2VuZGVyOjprZXlEb3duKGNvbnN0IENwcEFyZ3VtCiAgICAgZWxzZSBpZiAoInVwQXJyb3ci
ID09IGNvZGVTdHIpCiAgICAgICAgIGNvZGUgPSBiYXNlOjpWS0VZX1VQOwogICAgIGVsc2UgaWYg
KCJkZWxldGUiID09IGNvZGVTdHIpCi0gICAgICAgIGNvZGUgPSBiYXNlOjpWS0VZX0JBQ0s7Cisg
ICAgICAgIGNvZGUgPSBiYXNlOjpWS19ERUxFVEU7CiAgICAgZWxzZSBpZiAoInBhZ2VVcCIgPT0g
Y29kZVN0cikKICAgICAgICAgY29kZSA9IGJhc2U6OlZLRVlfUFJJT1I7CiAgICAgZWxzZSBpZiAo
InBhZ2VEb3duIiA9PSBjb2RlU3RyKQpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
Z3RrL0V2ZW50U2VuZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9ndGsvRXZlbnRTZW5kZXIuY3BwCShyZXZpc2lvbiA2MTEyNSkKKysrIFdlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL2d0ay9FdmVudFNlbmRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ2
Nyw3ICs0NjcsNyBAQCBzdGF0aWMgSlNWYWx1ZVJlZiBrZXlEb3duQ2FsbGJhY2soSlNDb250CiAg
ICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAi
ZW5kIikpCiAgICAgICAgICAgICBnZGtLZXlTeW0gPSBHREtfRW5kOwogICAgICAgICBlbHNlIGlm
IChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKGNoYXJhY3RlciwgImRlbGV0ZSIpKQotICAg
ICAgICAgICAgZ2RrS2V5U3ltID0gR0RLX0JhY2tTcGFjZTsKKyAgICAgICAgICAgIGdka0tleVN5
bSA9IEdES19EZWxldGU7CiAgICAgICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENT
dHJpbmcoY2hhcmFjdGVyLCAiRjEiKSkKICAgICAgICAgICAgIGdka0tleVN5bSA9IEdES19GMTsK
ICAgICAgICAgZWxzZSBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhjaGFyYWN0ZXIs
ICJGMiIpKQpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGlu
Z0NvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0JKHJldmlzaW9uIDYxMTI1KQorKysgV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0JKHdvcmtp
bmcgY29weSkKQEAgLTU5OCw3ICs1OTgsNyBAQCAtICh2b2lkKWtleURvd246KE5TU3RyaW5nICop
Y2hhcmFjdGVyIHdpCiAgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5nIHN0cmluZ1dp
dGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CiAgICAgICAgIGtleUNvZGUgPSAweDc3OwogICAg
IH0gZWxzZSBpZiAoW2NoYXJhY3RlciBpc0VxdWFsVG9TdHJpbmc6QCJkZWxldGUiXSkgewotICAg
ICAgICBjb25zdCB1bmljaGFyIGNoID0gMHg3ZjsKKyAgICAgICAgY29uc3QgdW5pY2hhciBjaCA9
IE5TRGVsZXRlRnVuY3Rpb25LZXk7CiAgICAgICAgIGV2ZW50Q2hhcmFjdGVyID0gW05TU3RyaW5n
IHN0cmluZ1dpdGhDaGFyYWN0ZXJzOiZjaCBsZW5ndGg6MV07CiAgICAgICAgIGtleUNvZGUgPSAw
eDc1OwogICAgIH0KSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9FdmVudFNl
bmRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0V2
ZW50U2VuZGVyLmNwcAkocmV2aXNpb24gNjExMjUpCisrKyBXZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS93aW4vRXZlbnRTZW5kZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NjgsNyArNDY4LDcg
QEAgc3RhdGljIEpTVmFsdWVSZWYga2V5RG93bkNhbGxiYWNrKEpTQ29udAogICAgIGVsc2UgaWYg
KEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZW5kIikpCiAgICAgICAg
IHZpcnR1YWxLZXlDb2RlID0gVktfRU5EOwogICAgIGVsc2UgaWYgKEpTU3RyaW5nSXNFcXVhbFRv
VVRGOENTdHJpbmcoY2hhcmFjdGVyLCAiZGVsZXRlIikpCi0gICAgICAgIHZpcnR1YWxLZXlDb2Rl
ID0gVktfQkFDSzsKKyAgICAgICAgdmlydHVhbEtleUNvZGUgPSBWS19ERUxFVEU7CiAgICAgZWxz
ZSB7CiAgICAgICAgIGNoYXJDb2RlID0gSlNTdHJpbmdHZXRDaGFyYWN0ZXJzUHRyKGNoYXJhY3Rl
cilbMF07CiAgICAgICAgIHZpcnR1YWxLZXlDb2RlID0gTE9CWVRFKFZrS2V5U2NhbihjaGFyQ29k
ZSkpOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNjExMzMpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMCBAQAorMjAxMC0wNi0xNCAgQWxleGV5IFByb3Nr
dXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDA1MjkKKyAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiZGVsZXRlIikgaW5jb3JyZWN0bHkg
c2VuZHMgYSBiYWNrc3BhY2Ugb24gc29tZSBwbGF0Zm9ybXMKKworICAgICAgICAqIGVkaXRpbmcv
ZGVsZXRpbmcvZm9yd2FyZC1kZWxldGUta2V5LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogZWRpdGluZy9kZWxldGluZy9mb3J3YXJkLWRlbGV0ZS1rZXkuaHRtbDogQWRkZWQuCisgICAg
ICAgIEFkZGVkIGEgdGVzdCBmb3IgZm9yd2FyZCBkZWxldGUga2V5IHdvcmtpbmcgKHBhcnRpY3Vs
YXJseSBpbiBEUlQsIHNpbmNlIHRoZXJlIHdhcyBhIGxvdCBvZgorICAgICAgICBjb25mdXNpb24g
YmV0d2VlbiBwbGF0Zm9ybSBtYWludGFpbmVycyBhYm91dCBpdCkuCisKKyAgICAgICAgKiBmYXN0
L2Zvcm1zL3Jlc291cmNlcy9pbnB1dC1saXZlLXBzZXVkby1zZWxlY3RvcnMuanM6CisgICAgICAg
ICogZmFzdC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEtbGl2ZS1wc2V1ZG8tc2VsZWN0b3JzLmpz
OgorICAgICAgICBUaGVzZSB0d28gdGVzdHMgZXhwZWN0ZWQgdGhhdCBrZXlEb3duKCJkZWxldGUi
KSBleGVjdXRlZCBiYWNrd2FyZCBkZWxldGUsIGNoYW5nZWQgdGhlbSB0bworICAgICAgICBzZW5k
ICJceDA4IiBmb3IgYmFja3NwYWNlLgorCiAyMDEwLTA2LTE0ICBDaHJpcyBGbGVpemFjaCAgPGNm
bGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQmV0aCBEYWtpbi4KSW5k
ZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZGVsZXRpbmcvZm9yd2FyZC1kZWxldGUta2V5LWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2RlbGV0aW5nL2Zvcndh
cmQtZGVsZXRlLWtleS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9l
ZGl0aW5nL2RlbGV0aW5nL2ZvcndhcmQtZGVsZXRlLWtleS1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMyBAQAorVGVzdCB0aGF0IGZvcndhcmQgZGVsZXRlIGtleSB3b3Jrcy4K
KworUEFTUwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9kZWxldGluZy9mb3J3YXJkLWRlbGV0
ZS1rZXkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2RlbGV0aW5nL2Zv
cndhcmQtZGVsZXRlLWtleS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGlu
Zy9kZWxldGluZy9mb3J3YXJkLWRlbGV0ZS1rZXkuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwyNCBAQAorPGJvZHk+Cis8cD5UZXN0IHRoYXQgZm9yd2FyZCBkZWxldGUga2V5IHdvcmtzLjwv
cD4KKzxkaXYgaWQ9cmVzdWx0PlRlc3RpbmcuLi48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVu
dGVkaXRhYmxlPSJ0cnVlIj4xMjM0NTY8L2Rpdj4KKworPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpCisgICAgd2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKKwordGV4dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5maXJzdENo
aWxkOword2luZG93LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQodGV4dCwgMCwgdGV4
dCwgMSk7CitpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgZXZlbnRTZW5kZXIua2V5RG93
bigiZGVsZXRlIik7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bigiZGVsZXRlIik7CisgICAgaWYg
KHRleHQuZGF0YSA9PSAiMzQ1NiIpCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZXN1bHQiKS5pbm5lckhUTUwgPSAiUEFTUyI7CisgICAgZWxzZQorICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJIVE1MID0gIkZBSUw6ICIgKyB0ZXh0LmRhdGE7
CisgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2IikpOworfSBlbHNlIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0Iiku
aW5uZXJIVE1MID0gIlBsZWFzZSB2ZXJpZnkgdGhhdCBmb3J3YXJkIGRlbGV0ZSB3b3JrcyBtYW51
YWxseS4iOworfQorPC9zY3JpcHQ+Cis8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL3Jlc291cmNlcy9pbnB1dC1saXZlLXBzZXVkby1zZWxlY3RvcnMuanMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yZXNvdXJjZXMvaW5wdXQtbGl2ZS1wc2V1ZG8tc2Vs
ZWN0b3JzLmpzCShyZXZpc2lvbiA2MTEyNSkKKysrIExheW91dFRlc3RzL2Zhc3QvZm9ybXMvcmVz
b3VyY2VzL2lucHV0LWxpdmUtcHNldWRvLXNlbGVjdG9ycy5qcwkod29ya2luZyBjb3B5KQpAQCAt
NzYsNyArNzYsNyBAQCBlbCA9IG1ha2VJbnZhbGlkKCk7CiBlbC5mb2N1cygpOwogZXZlbnRTZW5k
ZXIua2V5RG93bignYScpOwogc2hvdWxkQmUoZWxCYWNrZ3JvdW5kLCAndmFsaWRDb2xvcicpOwot
ZXZlbnRTZW5kZXIua2V5RG93bignZGVsZXRlJywgW10pOworZXZlbnRTZW5kZXIua2V5RG93bign
XHgwOCcsIFtdKTsKIHNob3VsZEJlKGVsQmFja2dyb3VuZCwgJ2ludmFsaWRDb2xvcicpOwogCiAv
LyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEtbGl2ZS1wc2V1ZG8tc2VsZWN0b3JzLmpzCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZm9ybXMvcmVzb3VyY2VzL3RleHRhcmVhLWxpdmUt
cHNldWRvLXNlbGVjdG9ycy5qcwkocmV2aXNpb24gNjExMjUpCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3Jlc291cmNlcy90ZXh0YXJlYS1saXZlLXBzZXVkby1zZWxlY3RvcnMuanMJKHdvcmtp
bmcgY29weSkKQEAgLTc2LDcgKzc2LDcgQEAgZWwgPSBtYWtlSW52YWxpZCgpOwogZWwuZm9jdXMo
KTsKIGV2ZW50U2VuZGVyLmtleURvd24oJ2EnKTsKIHNob3VsZEJlKGVsQmFja2dyb3VuZCwgJ3Zh
bGlkQ29sb3InKTsKLWV2ZW50U2VuZGVyLmtleURvd24oJ2RlbGV0ZScsIFtdKTsKK2V2ZW50U2Vu
ZGVyLmtleURvd24oJ1x4MDgnLCBbXSk7CiBzaG91bGRCZShlbEJhY2tncm91bmQsICdpbnZhbGlk
Q29sb3InKTsKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTk2LDcg
Kzk2LDcgQEAgc2hvdWxkQmUoZWxCYWNrZ3JvdW5kLCAndmFsaWRDb2xvcicpOwogLy8gTWFrZSB0
aGUgdmFsdWUgZGlydHkgYnkgZGVsZXRpbmcgdGhlIGxhc3QgY2hhcmFjdGVyLgogZWwuZm9jdXMo
KTsKIGVsLnNldFNlbGVjdGlvblJhbmdlKDEwLCAxMCk7Ci1kb2N1bWVudC5leGVjQ29tbWFuZCgn
ZGVsZXRlJyk7Citkb2N1bWVudC5leGVjQ29tbWFuZCgnXHgwOCcpOwogZWwubWF4TGVuZ3RoID0g
NTsKIHNob3VsZEJlKGVsQmFja2dyb3VuZCwgJ2ludmFsaWRDb2xvcicpOwogZWwubWF4TGVuZ3Ro
ID0gMTA7Cg==
</data>
<flag name="review"
          id="45089"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>