<?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>46229</bug_id>
          
          <creation_ts>2010-09-21 16:23:45 -0700</creation_ts>
          <short_desc>Need caps log and num lock state on Chromium input events</short_desc>
          <delta_ts>2010-12-20 22:53:51 -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>WebKit API</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="Brett Wilson (Google)">brettw</reporter>
          <assigned_to name="Brett Wilson (Google)">brettw</assigned_to>
          <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>282615</commentid>
    <comment_count>0</comment_count>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2010-09-21 16:23:45 -0700</bug_when>
    <thetext>on WebInputEvents, we need to have the current caps lock and num lock state for some plugin messages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282616</commentid>
    <comment_count>1</comment_count>
      <attachid>68302</attachid>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2010-09-21 16:25:57 -0700</bug_when>
    <thetext>Created attachment 68302
Patch for Linux &amp; Windows

I&apos;m not sure how to do this for Mac, I&apos;m going to try to find a mac expert to do a patch for me in a later pass (will file a bug).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282622</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-21 16:28:55 -0700</bug_when>
    <thetext>Attachment 68302 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebKit/chromium/src/WebViewImpl.cpp:1089:  Use 0 instead of NULL.  [readability/null] [5]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282629</commentid>
    <comment_count>3</comment_count>
      <attachid>68302</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-09-21 16:32:21 -0700</bug_when>
    <thetext>Comment on attachment 68302
Patch for Linux &amp; Windows

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

&gt; WebKit/chromium/public/WebInputEvent.h:127
&gt; +        // WebCore, so round-tripping from  WebInputEvent to a WebCore

nit: only one space before WebInputEvent.

we also generally avoid mentioning WebCore types in WebKit API headers.
if the WebCore type name changes, then no one will ever update this
comment :-(  that said, i&apos;m not sure how else to share this info.

&gt; WebKit/chromium/src/WebViewImpl.h:321
&gt; +    // cases where the WebKit input event doesn&apos;t have the information we need.

nit: WebKit input event -&gt; WebCore DOM event?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282635</commentid>
    <comment_count>4</comment_count>
      <attachid>68305</attachid>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2010-09-21 16:38:25 -0700</bug_when>
    <thetext>Created attachment 68305
New patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282646</commentid>
    <comment_count>5</comment_count>
      <attachid>68305</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-09-21 16:50:21 -0700</bug_when>
    <thetext>Comment on attachment 68305
New patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321837</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-14 01:57:53 -0800</bug_when>
    <thetext>Did this get landed but not closed?  (If so, you might consider using webkit-patch land instead of svn commit, since it does all teh updating/closing, etc for you!)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324832</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-20 22:53:51 -0800</bug_when>
    <thetext>r68047.  Please close bugs after landing or use a tool which does it for you (like webkit-patch land).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68302</attachid>
            <date>2010-09-21 16:25:57 -0700</date>
            <delta_ts>2010-09-21 16:38:25 -0700</delta_ts>
            <desc>Patch for Linux &amp; Windows</desc>
            <filename>key.diff</filename>
            <type>text/plain</type>
            <size>6712</size>
            <attacher name="Brett Wilson (Google)">brettw</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCmluZGV4IDI5ZTcyNGQuLjRiNzRmNTMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIyIEBACisyMDEwLTA5LTIxICBCcmV0dCBXaWxzb24gIDxicmV0dHdAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBjYXBz
IGxvZyBhbmQgbnVtIGxvY2sgdG9nZ2xlIHN0YXRlIHRvIFdlYklucHV0RXZlbnQuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NjIyOQorCisgICAgICAg
ICogcHVibGljL1dlYklucHV0RXZlbnQuaDoKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6aGFuZGxlSW5wdXRFdmVudCk6CisgICAg
ICAgICogc3JjL1dlYlZpZXdJbXBsLmg6CisgICAgICAgICogc3JjL2d0ay9XZWJJbnB1dEV2ZW50
RmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJLaXQ6Omdka1N0YXRlVG9XZWJFdmVudE1vZGlmaWVy
cyk6CisgICAgICAgICogc3JjL3dpbi9XZWJJbnB1dEV2ZW50RmFjdG9yeS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OlNldFRvZ2dsZUtleVN0YXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViSW5wdXRF
dmVudEZhY3Rvcnk6OmtleWJvYXJkRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2
ZW50RmFjdG9yeTo6bW91c2VFdmVudCk6CisgICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZlbnRG
YWN0b3J5Ojptb3VzZVdoZWVsRXZlbnQpOgorCiAyMDEwLTA5LTIxICBKZXJlbXkgT3Jsb3cgIDxq
b3Jsb3dAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5hdGUgQ2hhcGluLgpk
aWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEV2ZW50LmggYi9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYklucHV0RXZlbnQuaAppbmRleCBmOGIwNTdiLi5lMGU3OGU5
IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYklucHV0RXZlbnQuaAorKysg
Yi9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYklucHV0RXZlbnQuaApAQCAtMTIyLDYgKzEyMiwx
MiBAQCBwdWJsaWM6CiAgICAgICAgIExlZnRCdXR0b25Eb3duICAgPSAxIDw8IDYsCiAgICAgICAg
IE1pZGRsZUJ1dHRvbkRvd24gPSAxIDw8IDcsCiAgICAgICAgIFJpZ2h0QnV0dG9uRG93biAgPSAx
IDw8IDgsCisKKyAgICAgICAgLy8gVG9nZ2xlIG1vZGlmaWVycyBmb3IgYWxsIGV2ZW50cy4gRGFu
Z2VyOiB0aGVzZSBhcmUgbm90IHJlZmxlY3RlZCBpbnRvCisgICAgICAgIC8vIFdlYkNvcmUsIHNv
IHJvdW5kLXRyaXBwaW5nIGZyb20gIFdlYklucHV0RXZlbnQgdG8gYSBXZWJDb3JlCisgICAgICAg
IC8vIFBsYXRmb3JtSW5wdXRFdmVudCBhbmQgYmFjayB3aWxsIG5vdCBwcmVzZXJ2ZSB0aGVzZSBm
bGFncy4KKyAgICAgICAgQ2Fwc0xvY2tPbiAgICAgICA9IDEgPDwgOSwKKyAgICAgICAgTnVtTG9j
a09uICAgICAgICA9IDEgPDwgMTAsCiAgICAgfTsKIAogICAgIHVuc2lnbmVkIHNpemU7ICAgLy8g
VGhlIHNpemUgb2YgdGhpcyBzdHJ1Y3R1cmUsIGZvciBzZXJpYWxpemF0aW9uLgpkaWZmIC0tZ2l0
IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCBhMWM2NTc4Li4zYzM4YjI5IDEwMDY0NAotLS0gYS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAorKysgYi9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMTA0MSw4ICsxMDQxLDYgQEAgdm9pZCBXZWJWaWV3SW1w
bDo6Y29tcG9zaXRlKGJvb2wgZmluaXNoKQogI2VuZGlmCiB9CiAKLS8vIEZJWE1FOiBtX2N1cnJl
bnRJbnB1dEV2ZW50IHNob3VsZCBiZSByZW1vdmVkIG9uY2UgQ2hyb21lQ2xpZW50OjpzaG93KCkg
Y2FuCi0vLyBnZXQgdGhlIGN1cnJlbnQtZXZlbnQgaW5mb3JtYXRpb24gZnJvbSBXZWJDb3JlLgog
Y29uc3QgV2ViSW5wdXRFdmVudCogV2ViVmlld0ltcGw6Om1fY3VycmVudElucHV0RXZlbnQgPSAw
OwogCiBib29sIFdlYlZpZXdJbXBsOjpoYW5kbGVJbnB1dEV2ZW50KGNvbnN0IFdlYklucHV0RXZl
bnQmIGlucHV0RXZlbnQpCkBAIC0xMDU3LDYgKzEwNTUsOCBAQCBib29sIFdlYlZpZXdJbXBsOjpo
YW5kbGVJbnB1dEV2ZW50KGNvbnN0IFdlYklucHV0RXZlbnQmIGlucHV0RXZlbnQpCiAgICAgaWYg
KG1faWdub3JlSW5wdXRFdmVudHMpCiAgICAgICAgIHJldHVybiB0cnVlOwogCisgICAgbV9jdXJy
ZW50SW5wdXRFdmVudCA9ICZpbnB1dEV2ZW50OworCiAgICAgaWYgKG1fbW91c2VDYXB0dXJlTm9k
ZS5nZXQoKSAmJiBXZWJJbnB1dEV2ZW50Ojppc01vdXNlRXZlbnRUeXBlKGlucHV0RXZlbnQudHlw
ZSkpIHsKICAgICAgICAgLy8gU2F2ZSBtX21vdXNlQ2FwdHVyZU5vZGUgc2luY2UgbW91c2VDYXB0
dXJlTG9zdCgpIHdpbGwgY2xlYXIgaXQuCiAgICAgICAgIFJlZlB0cjxOb2RlPiBub2RlID0gbV9t
b3VzZUNhcHR1cmVOb2RlOwpAQCAtMTA4NiwxNyArMTA4NiwxMCBAQCBib29sIFdlYlZpZXdJbXBs
OjpoYW5kbGVJbnB1dEV2ZW50KGNvbnN0IFdlYklucHV0RXZlbnQmIGlucHV0RXZlbnQpCiAgICAg
ICAgIG5vZGUtPmRpc3BhdGNoTW91c2VFdmVudCgKICAgICAgICAgICAgICAgUGxhdGZvcm1Nb3Vz
ZUV2ZW50QnVpbGRlcihtYWluRnJhbWVJbXBsKCktPmZyYW1lVmlldygpLCAqc3RhdGljX2Nhc3Q8
Y29uc3QgV2ViTW91c2VFdmVudCo+KCZpbnB1dEV2ZW50KSksCiAgICAgICAgICAgICAgIGV2ZW50
VHlwZSk7CisgICAgICAgIG1fY3VycmVudElucHV0RXZlbnQgPSBOVUxMOwogICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogUmVtb3ZlIG1fY3VycmVudElucHV0RXZl
bnQuCi0gICAgLy8gVGhpcyBvbmx5IGV4aXN0cyB0byBhbGxvdyBDaHJvbWVDbGllbnQ6OnNob3co
KSB0byBrbm93IHdoaWNoIG1vdXNlIGJ1dHRvbgotICAgIC8vIHRyaWdnZXJlZCBhIHdpbmRvdy5v
cGVuIGV2ZW50LgotICAgIC8vIFNhZmFyaSBtdXN0IHBlcmZvcm0gYSBzaW1pbGFyIGhhY2ssIG91
cnMgaXMgaW4gb3VyIFdlYktpdCBnbHVlIGxheWVyCi0gICAgLy8gdGhlaXJzIGlzIGluIHRoZSBh
cHBsaWNhdGlvbi4gIFRoaXMgc2hvdWxkIGdvIHdoZW4gV2ViQ29yZSBjYW4gYmUgZml4ZWQKLSAg
ICAvLyB0byBwYXNzIG1vcmUgZXZlbnQgaW5mb3JtYXRpb24gdG8gQ2hyb21lQ2xpZW50OjpzaG93
KCkKLSAgICBtX2N1cnJlbnRJbnB1dEV2ZW50ID0gJmlucHV0RXZlbnQ7Ci0KICAgICBib29sIGhh
bmRsZWQgPSB0cnVlOwogCiAgICAgLy8gRklYTUU6IFdlYktpdCBzZWVtcyB0byBhbHdheXMgcmV0
dXJuIGZhbHNlIG9uIG1vdXNlIGV2ZW50cyBwcm9jZXNzaW5nCmRpZmYgLS1naXQgYS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmggYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJ
bXBsLmgKaW5kZXggYmJkMjVhMi4uMDU2ODA3NiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5oCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
aApAQCAtMzE3LDkgKzMxNyw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgaGlkZUF1dG9GaWxsUG9w
dXAoKTsKIAotICAgIC8vIEhBQ0s6IGN1cnJlbnRJbnB1dEV2ZW50KCkgaXMgZm9yIENocm9tZUNs
aWVudEltcGw6OnNob3coKSwgdW50aWwgd2UgY2FuCi0gICAgLy8gZml4IFdlYktpdCB0byBwYXNz
IGVub3VnaCBpbmZvcm1hdGlvbiB1cCBpbnRvIENocm9tZUNsaWVudDo6c2hvdygpIHNvIHdlCi0g
ICAgLy8gY2FuIGRlY2lkZSBpZiB0aGUgd2luZG93Lm9wZW4gZXZlbnQgd2FzIGNhdXNlZCBieSBh
IG1pZGRsZS1tb3VzZSBjbGljaworICAgIC8vIFJldHVybnMgdGhlIGlucHV0IGV2ZW50IHdlJ3Jl
IGN1cnJlbnRseSBwcm9jZXNzaW5nLiBUaGlzIGlzIHVzZWQgaW4gc29tZQorICAgIC8vIGNhc2Vz
IHdoZXJlIHRoZSBXZWJLaXQgaW5wdXQgZXZlbnQgZG9lc24ndCBoYXZlIHRoZSBpbmZvcm1hdGlv
biB3ZSBuZWVkLgogICAgIHN0YXRpYyBjb25zdCBXZWJJbnB1dEV2ZW50KiBjdXJyZW50SW5wdXRF
dmVudCgpCiAgICAgewogICAgICAgICByZXR1cm4gbV9jdXJyZW50SW5wdXRFdmVudDsKZGlmZiAt
LWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvZ3RrL1dlYklucHV0RXZlbnRGYWN0b3J5LmNwcCBi
L1dlYktpdC9jaHJvbWl1bS9zcmMvZ3RrL1dlYklucHV0RXZlbnRGYWN0b3J5LmNwcAppbmRleCBm
OGExMzg2Li4wZDU1YzQzIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL2d0ay9XZWJJ
bnB1dEV2ZW50RmFjdG9yeS5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9ndGsvV2ViSW5w
dXRFdmVudEZhY3RvcnkuY3BwCkBAIC04NSw2ICs4NSwxMCBAQCBzdGF0aWMgaW50IGdka1N0YXRl
VG9XZWJFdmVudE1vZGlmaWVycyhndWludCBzdGF0ZSkKICAgICAgICAgbW9kaWZpZXJzIHw9IFdl
YklucHV0RXZlbnQ6Ok1pZGRsZUJ1dHRvbkRvd247CiAgICAgaWYgKHN0YXRlICYgR0RLX0JVVFRP
TjNfTUFTSykKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYklucHV0RXZlbnQ6OlJpZ2h0QnV0dG9u
RG93bjsKKyAgICBpZiAoc3RhdGUgJiBHREtfTE9DS19NQVNLKQorICAgICAgICBtb2RpZmllcnMg
fD0gV2ViSW5wdXRFdmVudDo6Q2Fwc0xvY2tPbjsKKyAgICBpZiAoc3RhdGUgJiBHREtfTU9EMl9N
QVNLKQorICAgICAgICBtb2RpZmllcnMgfD0gV2ViSW5wdXRFdmVudDo6TnVtTG9ja09uOwogICAg
IHJldHVybiBtb2RpZmllcnM7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMv
d2luL1dlYklucHV0RXZlbnRGYWN0b3J5LmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvd2luL1dl
YklucHV0RXZlbnRGYWN0b3J5LmNwcAppbmRleCBkMWQ1ODY5Li5jNzFhM2I2IDEwMDY0NAotLS0g
YS9XZWJLaXQvY2hyb21pdW0vc3JjL3dpbi9XZWJJbnB1dEV2ZW50RmFjdG9yeS5jcHAKKysrIGIv
V2ViS2l0L2Nocm9taXVtL3NyYy93aW4vV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwCkBAIC04Niw2
ICs4NiwxNiBAQCBzdGF0aWMgYm9vbCBpc0tleVBhZChXUEFSQU0gd3BhcmFtLCBMUEFSQU0gbHBh
cmFtKQogICAgIHJldHVybiBrZXlwYWQ7CiB9CiAKKy8vIExvYWRzIHRoZSBzdGF0ZSBmb3IgdG9n
Z2xlIGtleXMgaW50byB0aGUgZXZlbnQuCitzdGF0aWMgdm9pZCBTZXRUb2dnbGVLZXlTdGF0ZShX
ZWJJbnB1dEV2ZW50KiBldmVudCkKK3sKKyAgICAvLyBMb3cgYml0IHNldCBmcm9tIEdldEtleVN0
YXRlIGluZGljYXRlcyAidG9nZ2xlZCIuCisgICAgaWYgKDo6R2V0S2V5U3RhdGUoVktfTlVNTE9D
SykgJiAxKQorICAgICAgICBldmVudC0+bW9kaWZpZXJzIHw9IFdlYklucHV0RXZlbnQ6Ok51bUxv
Y2tPbjsKKyAgICBpZiAoOjpHZXRLZXlTdGF0ZShWS19DQVBJVEFMKSAmIDEpCisgICAgICAgIGV2
ZW50LT5tb2RpZmllcnMgfD0gV2ViSW5wdXRFdmVudDo6Q2Fwc0xvY2tPbjsKK30KKwogV2ViS2V5
Ym9hcmRFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6a2V5Ym9hcmRFdmVudChIV05EIGh3bmQs
IFVJTlQgbWVzc2FnZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgV1BBUkFNIHdwYXJhbSwgTFBBUkFNIGxwYXJhbSkKIHsKQEAgLTE0NCw2ICsx
NTQsNyBAQCBXZWJLZXlib2FyZEV2ZW50IFdlYklucHV0RXZlbnRGYWN0b3J5OjprZXlib2FyZEV2
ZW50KEhXTkQgaHduZCwgVUlOVCBtZXNzYWdlLAogICAgIGlmIChpc0tleVBhZCh3cGFyYW0sIGxw
YXJhbSkpCiAgICAgICAgIHJlc3VsdC5tb2RpZmllcnMgfD0gV2ViSW5wdXRFdmVudDo6SXNLZXlQ
YWQ7CiAKKyAgICBTZXRUb2dnbGVLZXlTdGF0ZSgmcmVzdWx0KTsKICAgICByZXR1cm4gcmVzdWx0
OwogfQogCkBAIC0yODksNiArMzAwLDcgQEAgV2ViTW91c2VFdmVudCBXZWJJbnB1dEV2ZW50RmFj
dG9yeTo6bW91c2VFdmVudChIV05EIGh3bmQsIFVJTlQgbWVzc2FnZSwKICAgICBpZiAod3BhcmFt
ICYgTUtfUkJVVFRPTikKICAgICAgICAgcmVzdWx0Lm1vZGlmaWVycyB8PSBXZWJJbnB1dEV2ZW50
OjpSaWdodEJ1dHRvbkRvd247CiAKKyAgICBTZXRUb2dnbGVLZXlTdGF0ZSgmcmVzdWx0KTsKICAg
ICByZXR1cm4gcmVzdWx0OwogfQogCkBAIC0zODYsNiArMzk4LDggQEAgV2ViTW91c2VXaGVlbEV2
ZW50IFdlYklucHV0RXZlbnRGYWN0b3J5Ojptb3VzZVdoZWVsRXZlbnQoSFdORCBod25kLCBVSU5U
IG1lc3NhZ2UKICAgICBpZiAoa2V5U3RhdGUgJiBNS19SQlVUVE9OKQogICAgICAgICByZXN1bHQu
bW9kaWZpZXJzIHw9IFdlYklucHV0RXZlbnQ6OlJpZ2h0QnV0dG9uRG93bjsKIAorICAgIFNldFRv
Z2dsZUtleVN0YXRlKCZyZXN1bHQpOworCiAgICAgLy8gU2V0IGNvb3JkaW5hdGVzIGJ5IHRyYW5z
bGF0aW5nIGV2ZW50IGNvb3JkaW5hdGVzIGZyb20gc2NyZWVuIHRvIGNsaWVudC4KICAgICBQT0lO
VCBjbGllbnRQb2ludCA9IHsgcmVzdWx0Lmdsb2JhbFgsIHJlc3VsdC5nbG9iYWxZIH07CiAgICAg
TWFwV2luZG93UG9pbnRzKDAsIGh3bmQsICZjbGllbnRQb2ludCwgMSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68305</attachid>
            <date>2010-09-21 16:38:25 -0700</date>
            <delta_ts>2010-09-21 16:50:21 -0700</delta_ts>
            <desc>New patch</desc>
            <filename>key.diff</filename>
            <type>text/plain</type>
            <size>6692</size>
            <attacher name="Brett Wilson (Google)">brettw</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCmluZGV4IDI5ZTcyNGQuLjdjYzcxYmMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIyIEBACisyMDEwLTA5LTIxICBCcmV0dCBXaWxzb24gIDxicmV0dHdAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4KKworICAgICAgICBBZGQgY2FwcyBs
b2cgYW5kIG51bSBsb2NrIHRvZ2dsZSBzdGF0ZSB0byBXZWJJbnB1dEV2ZW50LgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDYyMjkKKworICAgICAgICAq
IHB1YmxpYy9XZWJJbnB1dEV2ZW50Lmg6CisgICAgICAgICogc3JjL1dlYlZpZXdJbXBsLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OmhhbmRsZUlucHV0RXZlbnQpOgorICAgICAg
ICAqIHNyYy9XZWJWaWV3SW1wbC5oOgorICAgICAgICAqIHNyYy9ndGsvV2ViSW5wdXRFdmVudEZh
Y3RvcnkuY3BwOgorICAgICAgICAoV2ViS2l0OjpnZGtTdGF0ZVRvV2ViRXZlbnRNb2RpZmllcnMp
OgorICAgICAgICAqIHNyYy93aW4vV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwOgorICAgICAgICAo
V2ViS2l0OjpTZXRUb2dnbGVLZXlTdGF0ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZl
bnRGYWN0b3J5OjprZXlib2FyZEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViSW5wdXRFdmVu
dEZhY3Rvcnk6Om1vdXNlRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2ZW50RmFj
dG9yeTo6bW91c2VXaGVlbEV2ZW50KToKKwogMjAxMC0wOS0yMSAgSmVyZW15IE9ybG93ICA8am9y
bG93QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBOYXRlIENoYXBpbi4KZGlm
ZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViSW5wdXRFdmVudC5oIGIvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEV2ZW50LmgKaW5kZXggZjhiMDU3Yi4uMjZlNDFhNCAx
MDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEV2ZW50LmgKKysrIGIv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJbnB1dEV2ZW50LmgKQEAgLTEyMiw2ICsxMjIsMTIg
QEAgcHVibGljOgogICAgICAgICBMZWZ0QnV0dG9uRG93biAgID0gMSA8PCA2LAogICAgICAgICBN
aWRkbGVCdXR0b25Eb3duID0gMSA8PCA3LAogICAgICAgICBSaWdodEJ1dHRvbkRvd24gID0gMSA8
PCA4LAorCisgICAgICAgIC8vIFRvZ2dsZSBtb2RpZmllcnMgZm9yIGFsbCBldmVudHMuIERhbmdl
cjogdGhlc2UgYXJlIG5vdCByZWZsZWN0ZWQKKyAgICAgICAgLy8gaW50byBXZWJDb3JlLCBzbyBy
b3VuZC10cmlwcGluZyBmcm9tIFdlYklucHV0RXZlbnQgdG8gYSBXZWJDb3JlCisgICAgICAgIC8v
IGV2ZW50IGFuZCBiYWNrIHdpbGwgbm90IHByZXNlcnZlIHRoZXNlIGZsYWdzLgorICAgICAgICBD
YXBzTG9ja09uICAgICAgID0gMSA8PCA5LAorICAgICAgICBOdW1Mb2NrT24gICAgICAgID0gMSA8
PCAxMCwKICAgICB9OwogCiAgICAgdW5zaWduZWQgc2l6ZTsgICAvLyBUaGUgc2l6ZSBvZiB0aGlz
IHN0cnVjdHVyZSwgZm9yIHNlcmlhbGl6YXRpb24uCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
Y3BwCmluZGV4IGExYzY1NzguLjYwYzgwZWQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
Y3BwCkBAIC0xMDQxLDggKzEwNDEsNiBAQCB2b2lkIFdlYlZpZXdJbXBsOjpjb21wb3NpdGUoYm9v
bCBmaW5pc2gpCiAjZW5kaWYKIH0KIAotLy8gRklYTUU6IG1fY3VycmVudElucHV0RXZlbnQgc2hv
dWxkIGJlIHJlbW92ZWQgb25jZSBDaHJvbWVDbGllbnQ6OnNob3coKSBjYW4KLS8vIGdldCB0aGUg
Y3VycmVudC1ldmVudCBpbmZvcm1hdGlvbiBmcm9tIFdlYkNvcmUuCiBjb25zdCBXZWJJbnB1dEV2
ZW50KiBXZWJWaWV3SW1wbDo6bV9jdXJyZW50SW5wdXRFdmVudCA9IDA7CiAKIGJvb2wgV2ViVmll
d0ltcGw6OmhhbmRsZUlucHV0RXZlbnQoY29uc3QgV2ViSW5wdXRFdmVudCYgaW5wdXRFdmVudCkK
QEAgLTEwNTcsNiArMTA1NSw4IEBAIGJvb2wgV2ViVmlld0ltcGw6OmhhbmRsZUlucHV0RXZlbnQo
Y29uc3QgV2ViSW5wdXRFdmVudCYgaW5wdXRFdmVudCkKICAgICBpZiAobV9pZ25vcmVJbnB1dEV2
ZW50cykKICAgICAgICAgcmV0dXJuIHRydWU7CiAKKyAgICBtX2N1cnJlbnRJbnB1dEV2ZW50ID0g
JmlucHV0RXZlbnQ7CisKICAgICBpZiAobV9tb3VzZUNhcHR1cmVOb2RlLmdldCgpICYmIFdlYklu
cHV0RXZlbnQ6OmlzTW91c2VFdmVudFR5cGUoaW5wdXRFdmVudC50eXBlKSkgewogICAgICAgICAv
LyBTYXZlIG1fbW91c2VDYXB0dXJlTm9kZSBzaW5jZSBtb3VzZUNhcHR1cmVMb3N0KCkgd2lsbCBj
bGVhciBpdC4KICAgICAgICAgUmVmUHRyPE5vZGU+IG5vZGUgPSBtX21vdXNlQ2FwdHVyZU5vZGU7
CkBAIC0xMDg2LDE3ICsxMDg2LDEwIEBAIGJvb2wgV2ViVmlld0ltcGw6OmhhbmRsZUlucHV0RXZl
bnQoY29uc3QgV2ViSW5wdXRFdmVudCYgaW5wdXRFdmVudCkKICAgICAgICAgbm9kZS0+ZGlzcGF0
Y2hNb3VzZUV2ZW50KAogICAgICAgICAgICAgICBQbGF0Zm9ybU1vdXNlRXZlbnRCdWlsZGVyKG1h
aW5GcmFtZUltcGwoKS0+ZnJhbWVWaWV3KCksICpzdGF0aWNfY2FzdDxjb25zdCBXZWJNb3VzZUV2
ZW50Kj4oJmlucHV0RXZlbnQpKSwKICAgICAgICAgICAgICAgZXZlbnRUeXBlKTsKKyAgICAgICAg
bV9jdXJyZW50SW5wdXRFdmVudCA9IDA7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIAot
ICAgIC8vIEZJWE1FOiBSZW1vdmUgbV9jdXJyZW50SW5wdXRFdmVudC4KLSAgICAvLyBUaGlzIG9u
bHkgZXhpc3RzIHRvIGFsbG93IENocm9tZUNsaWVudDo6c2hvdygpIHRvIGtub3cgd2hpY2ggbW91
c2UgYnV0dG9uCi0gICAgLy8gdHJpZ2dlcmVkIGEgd2luZG93Lm9wZW4gZXZlbnQuCi0gICAgLy8g
U2FmYXJpIG11c3QgcGVyZm9ybSBhIHNpbWlsYXIgaGFjaywgb3VycyBpcyBpbiBvdXIgV2ViS2l0
IGdsdWUgbGF5ZXIKLSAgICAvLyB0aGVpcnMgaXMgaW4gdGhlIGFwcGxpY2F0aW9uLiAgVGhpcyBz
aG91bGQgZ28gd2hlbiBXZWJDb3JlIGNhbiBiZSBmaXhlZAotICAgIC8vIHRvIHBhc3MgbW9yZSBl
dmVudCBpbmZvcm1hdGlvbiB0byBDaHJvbWVDbGllbnQ6OnNob3coKQotICAgIG1fY3VycmVudElu
cHV0RXZlbnQgPSAmaW5wdXRFdmVudDsKLQogICAgIGJvb2wgaGFuZGxlZCA9IHRydWU7CiAKICAg
ICAvLyBGSVhNRTogV2ViS2l0IHNlZW1zIHRvIGFsd2F5cyByZXR1cm4gZmFsc2Ugb24gbW91c2Ug
ZXZlbnRzIHByb2Nlc3NpbmcKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmll
d0ltcGwuaCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuaAppbmRleCBiYmQyNWEy
Li4wOTYyOWM4IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmgK
KysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCkBAIC0zMTcsOSArMzE3LDgg
QEAgcHVibGljOgogCiAgICAgdm9pZCBoaWRlQXV0b0ZpbGxQb3B1cCgpOwogCi0gICAgLy8gSEFD
SzogY3VycmVudElucHV0RXZlbnQoKSBpcyBmb3IgQ2hyb21lQ2xpZW50SW1wbDo6c2hvdygpLCB1
bnRpbCB3ZSBjYW4KLSAgICAvLyBmaXggV2ViS2l0IHRvIHBhc3MgZW5vdWdoIGluZm9ybWF0aW9u
IHVwIGludG8gQ2hyb21lQ2xpZW50OjpzaG93KCkgc28gd2UKLSAgICAvLyBjYW4gZGVjaWRlIGlm
IHRoZSB3aW5kb3cub3BlbiBldmVudCB3YXMgY2F1c2VkIGJ5IGEgbWlkZGxlLW1vdXNlIGNsaWNr
CisgICAgLy8gUmV0dXJucyB0aGUgaW5wdXQgZXZlbnQgd2UncmUgY3VycmVudGx5IHByb2Nlc3Np
bmcuIFRoaXMgaXMgdXNlZCBpbiBzb21lCisgICAgLy8gY2FzZXMgd2hlcmUgdGhlIFdlYkNvcmUg
RE9NIGV2ZW50IGRvZXNuJ3QgaGF2ZSB0aGUgaW5mb3JtYXRpb24gd2UgbmVlZC4KICAgICBzdGF0
aWMgY29uc3QgV2ViSW5wdXRFdmVudCogY3VycmVudElucHV0RXZlbnQoKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIG1fY3VycmVudElucHV0RXZlbnQ7CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21p
dW0vc3JjL2d0ay9XZWJJbnB1dEV2ZW50RmFjdG9yeS5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3Jj
L2d0ay9XZWJJbnB1dEV2ZW50RmFjdG9yeS5jcHAKaW5kZXggZjhhMTM4Ni4uMGQ1NWM0MyAxMDA2
NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9ndGsvV2ViSW5wdXRFdmVudEZhY3RvcnkuY3Bw
CisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvZ3RrL1dlYklucHV0RXZlbnRGYWN0b3J5LmNwcApA
QCAtODUsNiArODUsMTAgQEAgc3RhdGljIGludCBnZGtTdGF0ZVRvV2ViRXZlbnRNb2RpZmllcnMo
Z3VpbnQgc3RhdGUpCiAgICAgICAgIG1vZGlmaWVycyB8PSBXZWJJbnB1dEV2ZW50OjpNaWRkbGVC
dXR0b25Eb3duOwogICAgIGlmIChzdGF0ZSAmIEdES19CVVRUT04zX01BU0spCiAgICAgICAgIG1v
ZGlmaWVycyB8PSBXZWJJbnB1dEV2ZW50OjpSaWdodEJ1dHRvbkRvd247CisgICAgaWYgKHN0YXRl
ICYgR0RLX0xPQ0tfTUFTSykKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdlYklucHV0RXZlbnQ6OkNh
cHNMb2NrT247CisgICAgaWYgKHN0YXRlICYgR0RLX01PRDJfTUFTSykKKyAgICAgICAgbW9kaWZp
ZXJzIHw9IFdlYklucHV0RXZlbnQ6Ok51bUxvY2tPbjsKICAgICByZXR1cm4gbW9kaWZpZXJzOwog
fQogCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL3dpbi9XZWJJbnB1dEV2ZW50RmFj
dG9yeS5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3JjL3dpbi9XZWJJbnB1dEV2ZW50RmFjdG9yeS5j
cHAKaW5kZXggZDFkNTg2OS4uYzcxYTNiNiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3Ny
Yy93aW4vV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMv
d2luL1dlYklucHV0RXZlbnRGYWN0b3J5LmNwcApAQCAtODYsNiArODYsMTYgQEAgc3RhdGljIGJv
b2wgaXNLZXlQYWQoV1BBUkFNIHdwYXJhbSwgTFBBUkFNIGxwYXJhbSkKICAgICByZXR1cm4ga2V5
cGFkOwogfQogCisvLyBMb2FkcyB0aGUgc3RhdGUgZm9yIHRvZ2dsZSBrZXlzIGludG8gdGhlIGV2
ZW50Lgorc3RhdGljIHZvaWQgU2V0VG9nZ2xlS2V5U3RhdGUoV2ViSW5wdXRFdmVudCogZXZlbnQp
Cit7CisgICAgLy8gTG93IGJpdCBzZXQgZnJvbSBHZXRLZXlTdGF0ZSBpbmRpY2F0ZXMgInRvZ2ds
ZWQiLgorICAgIGlmICg6OkdldEtleVN0YXRlKFZLX05VTUxPQ0spICYgMSkKKyAgICAgICAgZXZl
bnQtPm1vZGlmaWVycyB8PSBXZWJJbnB1dEV2ZW50OjpOdW1Mb2NrT247CisgICAgaWYgKDo6R2V0
S2V5U3RhdGUoVktfQ0FQSVRBTCkgJiAxKQorICAgICAgICBldmVudC0+bW9kaWZpZXJzIHw9IFdl
YklucHV0RXZlbnQ6OkNhcHNMb2NrT247Cit9CisKIFdlYktleWJvYXJkRXZlbnQgV2ViSW5wdXRF
dmVudEZhY3Rvcnk6OmtleWJvYXJkRXZlbnQoSFdORCBod25kLCBVSU5UIG1lc3NhZ2UsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdQQVJBTSB3
cGFyYW0sIExQQVJBTSBscGFyYW0pCiB7CkBAIC0xNDQsNiArMTU0LDcgQEAgV2ViS2V5Ym9hcmRF
dmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6a2V5Ym9hcmRFdmVudChIV05EIGh3bmQsIFVJTlQg
bWVzc2FnZSwKICAgICBpZiAoaXNLZXlQYWQod3BhcmFtLCBscGFyYW0pKQogICAgICAgICByZXN1
bHQubW9kaWZpZXJzIHw9IFdlYklucHV0RXZlbnQ6OklzS2V5UGFkOwogCisgICAgU2V0VG9nZ2xl
S2V5U3RhdGUoJnJlc3VsdCk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIApAQCAtMjg5LDYgKzMw
MCw3IEBAIFdlYk1vdXNlRXZlbnQgV2ViSW5wdXRFdmVudEZhY3Rvcnk6Om1vdXNlRXZlbnQoSFdO
RCBod25kLCBVSU5UIG1lc3NhZ2UsCiAgICAgaWYgKHdwYXJhbSAmIE1LX1JCVVRUT04pCiAgICAg
ICAgIHJlc3VsdC5tb2RpZmllcnMgfD0gV2ViSW5wdXRFdmVudDo6UmlnaHRCdXR0b25Eb3duOwog
CisgICAgU2V0VG9nZ2xlS2V5U3RhdGUoJnJlc3VsdCk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0K
IApAQCAtMzg2LDYgKzM5OCw4IEBAIFdlYk1vdXNlV2hlZWxFdmVudCBXZWJJbnB1dEV2ZW50RmFj
dG9yeTo6bW91c2VXaGVlbEV2ZW50KEhXTkQgaHduZCwgVUlOVCBtZXNzYWdlCiAgICAgaWYgKGtl
eVN0YXRlICYgTUtfUkJVVFRPTikKICAgICAgICAgcmVzdWx0Lm1vZGlmaWVycyB8PSBXZWJJbnB1
dEV2ZW50OjpSaWdodEJ1dHRvbkRvd247CiAKKyAgICBTZXRUb2dnbGVLZXlTdGF0ZSgmcmVzdWx0
KTsKKwogICAgIC8vIFNldCBjb29yZGluYXRlcyBieSB0cmFuc2xhdGluZyBldmVudCBjb29yZGlu
YXRlcyBmcm9tIHNjcmVlbiB0byBjbGllbnQuCiAgICAgUE9JTlQgY2xpZW50UG9pbnQgPSB7IHJl
c3VsdC5nbG9iYWxYLCByZXN1bHQuZ2xvYmFsWSB9OwogICAgIE1hcFdpbmRvd1BvaW50cygwLCBo
d25kLCAmY2xpZW50UG9pbnQsIDEpOwo=
</data>
<flag name="review"
          id="57811"
          type_id="1"
          status="+"
          setter="fishd"
    />
          </attachment>
      

    </bug>

</bugzilla>