<?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>86270</bug_id>
          
          <creation_ts>2012-05-11 16:06:15 -0700</creation_ts>
          <short_desc>[Chromium] android/WebInputEventFactory should handle wheel events and gesture events</short_desc>
          <delta_ts>2012-05-14 14:03:33 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          <blocked>66687</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>aelias</cc>
    
    <cc>bhsu</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>peter</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>622075</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:06:15 -0700</bug_when>
    <thetext>[Chromium] android/WebInputEventFactory should handle wheel events and gesture events</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622077</commentid>
    <comment_count>1</comment_count>
      <attachid>141520</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:07:17 -0700</bug_when>
    <thetext>Created attachment 141520
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622081</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-11 16:10:27 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622085</commentid>
    <comment_count>3</comment_count>
      <attachid>141522</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:13:06 -0700</bug_when>
    <thetext>Created attachment 141522
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622086</commentid>
    <comment_count>4</comment_count>
      <attachid>141522</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-11 16:14:46 -0700</bug_when>
    <thetext>Comment on attachment 141522
Patch

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

&gt; Source/WebKit/chromium/public/android/WebInputEventFactory.h:59
&gt; +                                                        long timeStampSeconds,

a timestamp in seconds of an integral type seems completely useless. is this milliseconds (like DOMTimeStamp)? is the type here wrong or the name?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622087</commentid>
    <comment_count>5</comment_count>
      <attachid>141522</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:14:54 -0700</bug_when>
    <thetext>Comment on attachment 141522
Patch

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

&gt; Source/WebKit/chromium/public/android/WebInputEventFactory.h:37
&gt; +#define WEBKIT_UPDATED_WEB_INPUT_EVENT_FACTORY_API 1

I&apos;ll use this #define to make the API change land smoothly in Chromium.  The only file that appears to care currently is browser/renderer_host/native_web_keyboard_event_android.cc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622092</commentid>
    <comment_count>6</comment_count>
      <attachid>141522</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:18:47 -0700</bug_when>
    <thetext>Comment on attachment 141522
Patch

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

&gt;&gt; Source/WebKit/chromium/public/android/WebInputEventFactory.h:59
&gt;&gt; +                                                        long timeStampSeconds,
&gt; 
&gt; a timestamp in seconds of an integral type seems completely useless. is this milliseconds (like DOMTimeStamp)? is the type here wrong or the name?

You&apos;re right.  I&apos;ve goofed this up.  One moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622097</commentid>
    <comment_count>7</comment_count>
      <attachid>141525</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:23:02 -0700</bug_when>
    <thetext>Created attachment 141525
Units fixed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622098</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:24:06 -0700</bug_when>
    <thetext>Turns out I don&apos;t need WEBKIT_UPDATED_WEB_INPUT_EVENT_FACTORY_API because the API is correct here.  The downstream one is the one that&apos;s backwards.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622104</commentid>
    <comment_count>9</comment_count>
      <attachid>141525</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-11 16:31:51 -0700</bug_when>
    <thetext>Comment on attachment 141525
Units fixed

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

&gt; Source/WebKit/chromium/public/android/WebInputEventFactory.h:49
&gt; +    enum MouseWheelDirectionType {

do you know the history / story with this? what&apos;s a sideways mousewheel, and what&apos;s it have to do with android?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622114</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:47:50 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 141525 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=141525&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/chromium/public/android/WebInputEventFactory.h:49
&gt; &gt; +    enum MouseWheelDirectionType {
&gt; 
&gt; do you know the history / story with this? what&apos;s a sideways mousewheel, and what&apos;s it have to do with android?

I&apos;m not sure what the relation is with Android, but sideways mousewheel events appear to exist.  See, for example: http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/src/gtk/WebInputEventFactory.cpp#L535</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622120</commentid>
    <comment_count>11</comment_count>
      <attachid>141525</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-11 16:53:55 -0700</bug_when>
    <thetext>Comment on attachment 141525
Units fixed

Green times on the Android build try server: http://build.chromium.org/p/tryserver.chromium/builders/android/builds/12566</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622842</commentid>
    <comment_count>12</comment_count>
    <who name="Peter Beverloo">peter</who>
    <bug_when>2012-05-14 04:53:59 -0700</bug_when>
    <thetext>This change looks good to me from cr-Android&apos;s perspective, adding aelias@ who has done recent work in this area as a FYI as we&apos;ll want to sync this to downstream. I can also confirm that there are no build errors when using a WebKit compile.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623129</commentid>
    <comment_count>13</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-05-14 11:15:34 -0700</bug_when>
    <thetext>In the Android branch we are using millisecond timestamps for the arguments here, since that&apos;s  the Android convention.  I realize the WebKit standard is seconds, but the role of these converter functions is to convert from platform events to WebKit events, so it seemed like a natural place to do the / 1000.  Otherwise all the callers need to remember to do it themselves.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623137</commentid>
    <comment_count>14</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-14 11:19:13 -0700</bug_when>
    <thetext>&gt; In the Android branch we are using millisecond timestamps for the arguments here, since that&apos;s  the Android convention.  I realize the WebKit standard is seconds, but the role of these converter functions is to convert from platform events to WebKit events, so it seemed like a natural place to do the / 1000.  Otherwise all the callers need to remember to do it themselves.

Yeah, I decided not to worry about that problem for this patch.  The existing functions in this file already use seconds.  If/when we convert to milliseconds, we should do them all at once so there isn&apos;t an inconsistency.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623142</commentid>
    <comment_count>15</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-05-14 11:24:05 -0700</bug_when>
    <thetext>The problem is that this patch will break Chrome for Android when it&apos;s auto-merged into the Android branch because all the callers will assume milliseconds.  This same millisecond/second issue has caused problems in the past, there won&apos;t even be compile errors and it&apos;s hard to track down.

In the Android branch, all of the functions have been changed to milliseconds.  The easiest solution would be just to bring these two files fully in sync with the Android branch version in one WebKit patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623143</commentid>
    <comment_count>16</comment_count>
    <who name="Peter Beverloo">peter</who>
    <bug_when>2012-05-14 11:25:40 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; The problem is that this patch will break Chrome for Android when it&apos;s auto-merged into the Android branch because all the callers will assume milliseconds.  This same millisecond/second issue has caused problems in the past, there won&apos;t even be compile errors and it&apos;s hard to track down.
&gt; 
&gt; In the Android branch, all of the functions have been changed to milliseconds.  The easiest solution would be just to bring these two files fully in sync with the Android branch version in one WebKit patch.

That&apos;s not an argument against doing it the right way of course :). This is a clear example of a patch which should be cherry picked ahead of being included in a merge, which we can definitely do after this lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623147</commentid>
    <comment_count>17</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-14 11:27:30 -0700</bug_when>
    <thetext>&gt; The problem is that this patch will break Chrome for Android when it&apos;s auto-merged into the Android branch because all the callers will assume milliseconds.  This same millisecond/second issue has caused problems in the past, there won&apos;t even be compile errors and it&apos;s hard to track down.

Correct.  I plan to merge the patch manually after it lands in order to avoid that problem.

&gt; In the Android branch, all of the functions have been changed to milliseconds.  The easiest solution would be just to bring these two files fully in sync with the Android branch version in one WebKit patch.

Let&apos;s do that in a followup patch.  It&apos;s unclear to me whether seconds or milliseconds are best.  We don&apos;t need to resolve this issue now, so we should delay worrying about it until we need to resolve it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623163</commentid>
    <comment_count>18</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-05-14 11:52:26 -0700</bug_when>
    <thetext>OK, we can change the Android branch version to use the seconds version (and may as well change back the keyboardEvent function and reorder the arguments again to cancel out what I did in https://gerrit-int.chromium.org/#change,15496).  Please make sure to also create an Android-branch Chrome-side patch that divides by 1000.0 at all the call sites.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623250</commentid>
    <comment_count>19</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-14 13:22:08 -0700</bug_when>
    <thetext>In the future, the sorts of changes in https://gerrit-int.chromium.org/#change,15496 upstream first and then merge the changes back downstream.  These sorts of changes need review from WebKit reviewers.  Making the changes downstream bypasses that feedback, which means we&apos;ll likely need to re-do them again in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623304</commentid>
    <comment_count>20</comment_count>
      <attachid>141525</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-14 14:03:27 -0700</bug_when>
    <thetext>Comment on attachment 141525
Units fixed

Clearing flags on attachment: 141525

Committed r116996: &lt;http://trac.webkit.org/changeset/116996&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>623305</commentid>
    <comment_count>21</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-14 14:03:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141520</attachid>
            <date>2012-05-11 16:07:17 -0700</date>
            <delta_ts>2012-05-11 16:12:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86270-20120511160715.patch</filename>
            <type>text/plain</type>
            <size>8808</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMTY4MTcpCisrKyBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4
IEBACisyMDEyLTA1LTExICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgW0Nocm9taXVtXSBhbmRyb2lkL1dlYklucHV0RXZlbnRGYWN0b3J5IHNob3VsZCBoYW5kbGUg
d2hlZWwgZXZlbnRzIGFuZCBnZXN0dXJlIGV2ZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODYyNzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9hbmRyb2lkL1dlYklucHV0RXZlbnRGYWN0
b3J5Lmg6CisgICAgICAgICogc3JjL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2ZW50RmFjdG9yeTo6a2V5Ym9hcmRFdmVudCk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZlbnRGYWN0b3J5Ojptb3VzZUV2ZW50KToKKyAgICAg
ICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZlbnRGYWN0b3J5Ojptb3Vz
ZVdoZWVsRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2ZW50RmFjdG9yeTo6Z2Vz
dHVyZUV2ZW50KToKKwogMjAxMi0wNS0xMSAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJv
dEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjExNjgwMi4K
SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL2FuZHJvaWQvV2ViSW5wdXRFdmVu
dEZhY3RvcnkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9h
bmRyb2lkL1dlYklucHV0RXZlbnRGYWN0b3J5LmgJKHJldmlzaW9uIDExNjY5MSkKKysrIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuaAko
d29ya2luZyBjb3B5KQpAQCAtNDYsMjIgKzQ2LDQxIEBAIHB1YmxpYzoKICAgICAgICAgTW91c2VF
dmVudFR5cGVNb3ZlLAogICAgIH07CiAKKyAgICBlbnVtIE1vdXNlV2hlZWxEaXJlY3Rpb25UeXBl
IHsKKyAgICAgICAgTW91c2VXaGVlbERpcmVjdGlvblR5cGVVcCA9IDAsCisgICAgICAgIE1vdXNl
V2hlZWxEaXJlY3Rpb25UeXBlRG93biwKKyAgICAgICAgTW91c2VXaGVlbERpcmVjdGlvblR5cGVM
ZWZ0LAorICAgICAgICBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZVJpZ2h0LAorICAgIH07CisKICAg
ICBXRUJLSVRfRVhQT1JUIHN0YXRpYyBXZWJLZXlib2FyZEV2ZW50IGtleWJvYXJkRXZlbnQoV2Vi
SW5wdXRFdmVudDo6VHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbG9uZyB0aW1lU3RhbXBTZWNvbmRzLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbW9kaWZpZXJzLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
b3VibGUgdGltZVN0YW1wU2Vjb25kcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleWNvZGUsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlYlVDaGFyIHVuaWNvZGVDaGFy
YWN0ZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJvb2wgaXNTeXN0ZW1LZXkpOwogCi0gICAgV0VCS0lUX0VYUE9SVCBzdGF0aWMgV2Vi
TW91c2VFdmVudCBtb3VzZUV2ZW50KGludCB4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgeSwKKyAgICBXRUJLSVRfRVhQT1JUIHN0YXRpYyBX
ZWJNb3VzZUV2ZW50IG1vdXNlRXZlbnQoTW91c2VFdmVudFR5cGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9uZyB0
aW1lU3RhbXBTZWNvbmRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgd2luZG93WCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IHdpbmRvd1ksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIE1vdXNlRXZlbnRUeXBlLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3VibGUgdGltZVN0YW1wU2Vjb25k
cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50
IG1vZGlmaWVycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGNsaWNrQ291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbiA9IFdlYk1vdXNlRXZlbnQ6OkJ1
dHRvbkxlZnQpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgY2xpY2tDb3VudCk7CisKKyAgICBXRUJLSVRfRVhQT1JUIHN0YXRpYyBXZWJNb3Vz
ZVdoZWVsRXZlbnQgbW91c2VXaGVlbEV2ZW50KE1vdXNlV2hlZWxEaXJlY3Rpb25UeXBlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
bG9uZyB0aW1lU3RhbXBTZWNvbmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdpbmRvd1gsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgd2luZG93WSk7
CisKKyAgICBXRUJLSVRfRVhQT1JUIHN0YXRpYyBXZWJHZXN0dXJlRXZlbnQgZ2VzdHVyZUV2ZW50
KFdlYklucHV0RXZlbnQ6OlR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBsb25nIHRpbWVTdGFtcFNlY29uZHMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgeCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB5LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQg
ZGVsdGFYLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZmxvYXQgZGVsdGFZLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IG1vZGlmaWVycyk7CisKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvYW5kcm9pZC9XZWJJbnB1
dEV2ZW50RmFjdG9yeS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvYW5kcm9pZC9XZWJJbnB1dEV2ZW50RmFjdG9yeS5jcHAJKHJldmlzaW9uIDExNjY5MSkKKysr
IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3Rvcnku
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw4ICszOSw4IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogV2ViS2V5Ym9hcmRFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6a2V5Ym9hcmRFdmVudChX
ZWJJbnB1dEV2ZW50OjpUeXBlIHR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGxvbmcgdGltZVN0YW1wU2Vjb25kcywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1vZGlmaWVycywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG91
YmxlIHRpbWVTdGFtcFNlY29uZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBrZXljb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJVQ2hhciB1bmljb2RlQ2hhcmFjdGVyLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s
IGlzU3lzdGVtS2V5KQpAQCAtNTAsNyArNTAsNyBAQCBXZWJLZXlib2FyZEV2ZW50IFdlYklucHV0
RXZlbnRGYWN0b3J5OjprCiAgICAgcmVzdWx0LnR5cGUgPSB0eXBlOwogICAgIHJlc3VsdC5tb2Rp
ZmllcnMgPSBtb2RpZmllcnM7CiAgICAgcmVzdWx0LnRpbWVTdGFtcFNlY29uZHMgPSB0aW1lU3Rh
bXBTZWNvbmRzOwotICAgIHJlc3VsdC53aW5kb3dzS2V5Q29kZSA9IFdlYkNvcmU6OndpbmRvd3NL
ZXlDb2RlRm9yS2V5RXZlbnQoa2V5Y29kZSk7CisgICAgcmVzdWx0LndpbmRvd3NLZXlDb2RlID0g
a2V5Y29kZTsKICAgICByZXN1bHQubmF0aXZlS2V5Q29kZSA9IGtleWNvZGU7CiAgICAgcmVzdWx0
LnVubW9kaWZpZWRUZXh0WzBdID0gdW5pY29kZUNoYXJhY3RlcjsKICAgICBpZiAocmVzdWx0Lndp
bmRvd3NLZXlDb2RlID09IFdlYkNvcmU6OlZLRVlfUkVUVVJOKSB7CkBAIC02NiwyMyArNjYsMjAg
QEAgV2ViS2V5Ym9hcmRFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6awogICAgIHJldHVybiBy
ZXN1bHQ7CiB9CiAKLVdlYk1vdXNlRXZlbnQgV2ViSW5wdXRFdmVudEZhY3Rvcnk6Om1vdXNlRXZl
bnQoaW50IHgsIGludCB5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgd2luZG93WCwgaW50IHdpbmRvd1ksCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIE1vdXNlRXZlbnRUeXBlIHR5cGUsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdWJsZSB0aW1lU3RhbXBTZWNv
bmRzLAorV2ViTW91c2VFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6bW91c2VFdmVudChNb3Vz
ZUV2ZW50VHlwZSB0eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBXZWJNb3VzZUV2ZW50OjpCdXR0b24gYnV0dG9uLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb25nIHRpbWVTdGFtcFNlY29uZHMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aW5kb3dYLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgd2luZG93
WSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1v
ZGlmaWVycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW50IGNsaWNrQ291bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbiBidXR0b24pCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBjbGlja0NvdW50KQogewogICAgIFdlYk1v
dXNlRXZlbnQgcmVzdWx0OwogCi0gICAgcmVzdWx0LnggPSB4OwotICAgIHJlc3VsdC55ID0geTsK
KyAgICByZXN1bHQueCA9IHdpbmRvd1g7CisgICAgcmVzdWx0LnkgPSB3aW5kb3dZOwogICAgIHJl
c3VsdC53aW5kb3dYID0gd2luZG93WDsKICAgICByZXN1bHQud2luZG93WSA9IHdpbmRvd1k7Ci0g
ICAgLy8gRklYTUU6IFdlIG5lZWQgdG8gZGVjaWRlIHdoYXQgdG8gdXNlIGZvciB0aGUgZ2xvYmFs
WC9ZLgotICAgIHJlc3VsdC5nbG9iYWxYID0gd2luZG93WDsKLSAgICByZXN1bHQuZ2xvYmFsWSA9
IHdpbmRvd1k7CiAgICAgcmVzdWx0LnRpbWVTdGFtcFNlY29uZHMgPSB0aW1lU3RhbXBTZWNvbmRz
OwogICAgIHJlc3VsdC5jbGlja0NvdW50ID0gY2xpY2tDb3VudDsKICAgICByZXN1bHQubW9kaWZp
ZXJzID0gbW9kaWZpZXJzOwpAQCAtMTA1LDQgKzEwMiw2OSBAQCBXZWJNb3VzZUV2ZW50IFdlYklu
cHV0RXZlbnRGYWN0b3J5Ojptb3VzCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorLy8gV2ViTW91
c2VXaGVlbEV2ZW50IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLQorCitXZWJNb3VzZVdoZWVsRXZlbnQgV2ViSW5wdXRFdmVudEZhY3Rv
cnk6Om1vdXNlV2hlZWxFdmVudChNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZSBkaXJlY3Rpb24sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs
b25nIHRpbWVTdGFtcFNlY29uZHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgd2luZG93WCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aW5kb3dZKQoreworICAg
IFdlYk1vdXNlV2hlZWxFdmVudCByZXN1bHQ7CisKKyAgICByZXN1bHQudHlwZSA9IFdlYklucHV0
RXZlbnQ6Ok1vdXNlV2hlZWw7CisgICAgcmVzdWx0LnggPSB3aW5kb3dYOworICAgIHJlc3VsdC55
ID0gd2luZG93WTsKKyAgICByZXN1bHQud2luZG93WCA9IHdpbmRvd1g7CisgICAgcmVzdWx0Lndp
bmRvd1kgPSB3aW5kb3dZOworICAgIHJlc3VsdC50aW1lU3RhbXBTZWNvbmRzID0gdGltZVN0YW1w
U2Vjb25kczsKKyAgICByZXN1bHQuYnV0dG9uID0gV2ViTW91c2VFdmVudDo6QnV0dG9uTm9uZTsK
KworICAgIC8vIFRoZSBiZWxvdyBjaG9pY2VzIGFyZSBtYXRjaGVkIGZyb20gR1RLLgorICAgIHN0
YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxiYXJQaXhlbHNQZXJUaWNrID0gMTYwLjBmIC8gMy4wZjsK
KworICAgIHN3aXRjaCAoZGlyZWN0aW9uKSB7CisgICAgY2FzZSBNb3VzZVdoZWVsRGlyZWN0aW9u
VHlwZVVwOgorICAgICAgICByZXN1bHQuZGVsdGFZID0gc2Nyb2xsYmFyUGl4ZWxzUGVyVGljazsK
KyAgICAgICAgcmVzdWx0LndoZWVsVGlja3NZID0gMTsKKyAgICAgICAgYnJlYWs7CisgICAgY2Fz
ZSBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZURvd246CisgICAgICAgIHJlc3VsdC5kZWx0YVkgPSAt
c2Nyb2xsYmFyUGl4ZWxzUGVyVGljazsKKyAgICAgICAgcmVzdWx0LndoZWVsVGlja3NZID0gLTE7
CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgTW91c2VXaGVlbERpcmVjdGlvblR5cGVMZWZ0Ogor
ICAgICAgICByZXN1bHQuZGVsdGFYID0gc2Nyb2xsYmFyUGl4ZWxzUGVyVGljazsKKyAgICAgICAg
cmVzdWx0LndoZWVsVGlja3NYID0gMTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBNb3VzZVdo
ZWVsRGlyZWN0aW9uVHlwZVJpZ2h0OgorICAgICAgICByZXN1bHQuZGVsdGFYID0gLXNjcm9sbGJh
clBpeGVsc1BlclRpY2s7CisgICAgICAgIHJlc3VsdC53aGVlbFRpY2tzWCA9IC0xOworICAgICAg
ICBicmVhazsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCisvLyBXZWJHZXN0dXJl
RXZlbnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCisKK1dlYkdlc3R1cmVFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6Z2VzdHVy
ZUV2ZW50KFdlYklucHV0RXZlbnQ6OlR5cGUgdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvbmcgdGltZVN0YW1wU2Vjb25kcywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB4LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHksCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdCBk
ZWx0YVgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmbG9hdCBkZWx0YVksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgbW9kaWZpZXJzKQoreworICAgIFdlYkdlc3R1cmVFdmVudCByZXN1bHQ7
CisKKyAgICByZXN1bHQudHlwZSA9IHR5cGU7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3Vs
dC55ID0geTsKKyAgICByZXN1bHQuZGVsdGFYID0gZGVsdGFYOworICAgIHJlc3VsdC5kZWx0YVkg
PSBkZWx0YVk7CisgICAgcmVzdWx0LnRpbWVTdGFtcFNlY29uZHMgPSB0aW1lU3RhbXBTZWNvbmRz
OworICAgIHJlc3VsdC5tb2RpZmllcnMgPSBtb2RpZmllcnM7CisKKyAgICByZXR1cm4gcmVzdWx0
OworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141522</attachid>
            <date>2012-05-11 16:13:06 -0700</date>
            <delta_ts>2012-05-11 16:22:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86270-20120511161304.patch</filename>
            <type>text/plain</type>
            <size>8998</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMTY4MTcpCisrKyBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4
IEBACisyMDEyLTA1LTExICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgW0Nocm9taXVtXSBhbmRyb2lkL1dlYklucHV0RXZlbnRGYWN0b3J5IHNob3VsZCBoYW5kbGUg
d2hlZWwgZXZlbnRzIGFuZCBnZXN0dXJlIGV2ZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODYyNzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9hbmRyb2lkL1dlYklucHV0RXZlbnRGYWN0
b3J5Lmg6CisgICAgICAgICogc3JjL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2ZW50RmFjdG9yeTo6a2V5Ym9hcmRFdmVudCk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZlbnRGYWN0b3J5Ojptb3VzZUV2ZW50KToKKyAgICAg
ICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZlbnRGYWN0b3J5Ojptb3Vz
ZVdoZWVsRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2ZW50RmFjdG9yeTo6Z2Vz
dHVyZUV2ZW50KToKKwogMjAxMi0wNS0xMSAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJv
dEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjExNjgwMi4K
SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL2FuZHJvaWQvV2ViSW5wdXRFdmVu
dEZhY3RvcnkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9h
bmRyb2lkL1dlYklucHV0RXZlbnRGYWN0b3J5LmgJKHJldmlzaW9uIDExNjY5MSkKKysrIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuaAko
d29ya2luZyBjb3B5KQpAQCAtMzQsNiArMzQsOCBAQAogI2luY2x1ZGUgIi4uL3BsYXRmb3JtL1dl
YkNvbW1vbi5oIgogI2luY2x1ZGUgIi4uL1dlYklucHV0RXZlbnQuaCIKIAorI2RlZmluZSBXRUJL
SVRfVVBEQVRFRF9XRUJfSU5QVVRfRVZFTlRfRkFDVE9SWV9BUEkgMQorCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKIAogY2xhc3MgV2ViS2V5Ym9hcmRFdmVudDsKQEAgLTQ2LDIyICs0OCw0MSBAQCBwdWJs
aWM6CiAgICAgICAgIE1vdXNlRXZlbnRUeXBlTW92ZSwKICAgICB9OwogCisgICAgZW51bSBNb3Vz
ZVdoZWVsRGlyZWN0aW9uVHlwZSB7CisgICAgICAgIE1vdXNlV2hlZWxEaXJlY3Rpb25UeXBlVXAg
PSAwLAorICAgICAgICBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZURvd24sCisgICAgICAgIE1vdXNl
V2hlZWxEaXJlY3Rpb25UeXBlTGVmdCwKKyAgICAgICAgTW91c2VXaGVlbERpcmVjdGlvblR5cGVS
aWdodCwKKyAgICB9OworCiAgICAgV0VCS0lUX0VYUE9SVCBzdGF0aWMgV2ViS2V5Ym9hcmRFdmVu
dCBrZXlib2FyZEV2ZW50KFdlYklucHV0RXZlbnQ6OlR5cGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvbmcgdGltZVN0YW1wU2Vjb25k
cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IG1vZGlmaWVycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZG91YmxlIHRpbWVTdGFtcFNlY29uZHMsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXljb2RlLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBX
ZWJVQ2hhciB1bmljb2RlQ2hhcmFjdGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzU3lzdGVtS2V5KTsKIAotICAgIFdFQktJ
VF9FWFBPUlQgc3RhdGljIFdlYk1vdXNlRXZlbnQgbW91c2VFdmVudChpbnQgeCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHksCisgICAgV0VC
S0lUX0VYUE9SVCBzdGF0aWMgV2ViTW91c2VFdmVudCBtb3VzZUV2ZW50KE1vdXNlRXZlbnRUeXBl
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJN
b3VzZUV2ZW50OjpCdXR0b24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGxvbmcgdGltZVN0YW1wU2Vjb25kcywKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdpbmRvd1gsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aW5kb3dZLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNb3VzZUV2ZW50VHlw
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG91
YmxlIHRpbWVTdGFtcFNlY29uZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBtb2RpZmllcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBjbGlja0NvdW50LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJNb3VzZUV2ZW50OjpCdXR0b24g
PSBXZWJNb3VzZUV2ZW50OjpCdXR0b25MZWZ0KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGNsaWNrQ291bnQpOworCisgICAgV0VCS0lUX0VY
UE9SVCBzdGF0aWMgV2ViTW91c2VXaGVlbEV2ZW50IG1vdXNlV2hlZWxFdmVudChNb3VzZVdoZWVs
RGlyZWN0aW9uVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGxvbmcgdGltZVN0YW1wU2Vjb25kcywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aW5kb3dY
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IHdpbmRvd1kpOworCisgICAgV0VCS0lUX0VYUE9SVCBzdGF0aWMgV2ViR2VzdHVy
ZUV2ZW50IGdlc3R1cmVFdmVudChXZWJJbnB1dEV2ZW50OjpUeXBlLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9uZyB0aW1lU3RhbXBTZWNv
bmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgeSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGZsb2F0IGRlbHRhWCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0IGRlbHRhWSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb2RpZmllcnMpOworCiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwCShy
ZXZpc2lvbiAxMTY2OTEpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9hbmRyb2lkL1dl
YklucHV0RXZlbnRGYWN0b3J5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzksOCArMzksOCBAQAog
bmFtZXNwYWNlIFdlYktpdCB7CiAKIFdlYktleWJvYXJkRXZlbnQgV2ViSW5wdXRFdmVudEZhY3Rv
cnk6OmtleWJvYXJkRXZlbnQoV2ViSW5wdXRFdmVudDo6VHlwZSB0eXBlLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb25nIHRpbWVTdGFtcFNl
Y29uZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBtb2RpZmllcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGRvdWJsZSB0aW1lU3RhbXBTZWNvbmRzLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5Y29kZSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2ViVUNoYXIg
dW5pY29kZUNoYXJhY3RlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCBpc1N5c3RlbUtleSkKQEAgLTUwLDcgKzUwLDcgQEAgV2ViS2V5
Ym9hcmRFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6awogICAgIHJlc3VsdC50eXBlID0gdHlw
ZTsKICAgICByZXN1bHQubW9kaWZpZXJzID0gbW9kaWZpZXJzOwogICAgIHJlc3VsdC50aW1lU3Rh
bXBTZWNvbmRzID0gdGltZVN0YW1wU2Vjb25kczsKLSAgICByZXN1bHQud2luZG93c0tleUNvZGUg
PSBXZWJDb3JlOjp3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KGtleWNvZGUpOworICAgIHJlc3Vs
dC53aW5kb3dzS2V5Q29kZSA9IGtleWNvZGU7CiAgICAgcmVzdWx0Lm5hdGl2ZUtleUNvZGUgPSBr
ZXljb2RlOwogICAgIHJlc3VsdC51bm1vZGlmaWVkVGV4dFswXSA9IHVuaWNvZGVDaGFyYWN0ZXI7
CiAgICAgaWYgKHJlc3VsdC53aW5kb3dzS2V5Q29kZSA9PSBXZWJDb3JlOjpWS0VZX1JFVFVSTikg
ewpAQCAtNjYsMjMgKzY2LDIwIEBAIFdlYktleWJvYXJkRXZlbnQgV2ViSW5wdXRFdmVudEZhY3Rv
cnk6OmsKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1XZWJNb3VzZUV2ZW50IFdlYklucHV0RXZl
bnRGYWN0b3J5Ojptb3VzZUV2ZW50KGludCB4LCBpbnQgeSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdpbmRvd1gsIGludCB3aW5kb3dZLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNb3VzZUV2ZW50VHlw
ZSB0eXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
b3VibGUgdGltZVN0YW1wU2Vjb25kcywKK1dlYk1vdXNlRXZlbnQgV2ViSW5wdXRFdmVudEZhY3Rv
cnk6Om1vdXNlRXZlbnQoTW91c2VFdmVudFR5cGUgdHlwZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgV2ViTW91c2VFdmVudDo6QnV0dG9uIGJ1dHRvbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9uZyB0aW1l
U3RhbXBTZWNvbmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgd2luZG93WCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IHdpbmRvd1ksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBtb2RpZmllcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBjbGlja0NvdW50LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJNb3VzZUV2ZW50OjpCdXR0b24gYnV0dG9uKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgY2xpY2tD
b3VudCkKIHsKICAgICBXZWJNb3VzZUV2ZW50IHJlc3VsdDsKIAotICAgIHJlc3VsdC54ID0geDsK
LSAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnggPSB3aW5kb3dYOworICAgIHJlc3VsdC55
ID0gd2luZG93WTsKICAgICByZXN1bHQud2luZG93WCA9IHdpbmRvd1g7CiAgICAgcmVzdWx0Lndp
bmRvd1kgPSB3aW5kb3dZOwotICAgIC8vIEZJWE1FOiBXZSBuZWVkIHRvIGRlY2lkZSB3aGF0IHRv
IHVzZSBmb3IgdGhlIGdsb2JhbFgvWS4KLSAgICByZXN1bHQuZ2xvYmFsWCA9IHdpbmRvd1g7Ci0g
ICAgcmVzdWx0Lmdsb2JhbFkgPSB3aW5kb3dZOwogICAgIHJlc3VsdC50aW1lU3RhbXBTZWNvbmRz
ID0gdGltZVN0YW1wU2Vjb25kczsKICAgICByZXN1bHQuY2xpY2tDb3VudCA9IGNsaWNrQ291bnQ7
CiAgICAgcmVzdWx0Lm1vZGlmaWVycyA9IG1vZGlmaWVyczsKQEAgLTEwNSw0ICsxMDIsNjkgQEAg
V2ViTW91c2VFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6bW91cwogICAgIHJldHVybiByZXN1
bHQ7CiB9CiAKKy8vIFdlYk1vdXNlV2hlZWxFdmVudCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworV2ViTW91c2VXaGVlbEV2ZW50
IFdlYklucHV0RXZlbnRGYWN0b3J5Ojptb3VzZVdoZWVsRXZlbnQoTW91c2VXaGVlbERpcmVjdGlv
blR5cGUgZGlyZWN0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbG9uZyB0aW1lU3RhbXBTZWNvbmRzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdpbmRvd1gsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQgd2luZG93WSkKK3sKKyAgICBXZWJNb3VzZVdoZWVsRXZlbnQgcmVzdWx0OworCisgICAgcmVz
dWx0LnR5cGUgPSBXZWJJbnB1dEV2ZW50OjpNb3VzZVdoZWVsOworICAgIHJlc3VsdC54ID0gd2lu
ZG93WDsKKyAgICByZXN1bHQueSA9IHdpbmRvd1k7CisgICAgcmVzdWx0LndpbmRvd1ggPSB3aW5k
b3dYOworICAgIHJlc3VsdC53aW5kb3dZID0gd2luZG93WTsKKyAgICByZXN1bHQudGltZVN0YW1w
U2Vjb25kcyA9IHRpbWVTdGFtcFNlY29uZHM7CisgICAgcmVzdWx0LmJ1dHRvbiA9IFdlYk1vdXNl
RXZlbnQ6OkJ1dHRvbk5vbmU7CisKKyAgICAvLyBUaGUgYmVsb3cgY2hvaWNlcyBhcmUgbWF0Y2hl
ZCBmcm9tIEdUSy4KKyAgICBzdGF0aWMgY29uc3QgZmxvYXQgc2Nyb2xsYmFyUGl4ZWxzUGVyVGlj
ayA9IDE2MC4wZiAvIDMuMGY7CisKKyAgICBzd2l0Y2ggKGRpcmVjdGlvbikgeworICAgIGNhc2Ug
TW91c2VXaGVlbERpcmVjdGlvblR5cGVVcDoKKyAgICAgICAgcmVzdWx0LmRlbHRhWSA9IHNjcm9s
bGJhclBpeGVsc1BlclRpY2s7CisgICAgICAgIHJlc3VsdC53aGVlbFRpY2tzWSA9IDE7CisgICAg
ICAgIGJyZWFrOworICAgIGNhc2UgTW91c2VXaGVlbERpcmVjdGlvblR5cGVEb3duOgorICAgICAg
ICByZXN1bHQuZGVsdGFZID0gLXNjcm9sbGJhclBpeGVsc1BlclRpY2s7CisgICAgICAgIHJlc3Vs
dC53aGVlbFRpY2tzWSA9IC0xOworICAgICAgICBicmVhazsKKyAgICBjYXNlIE1vdXNlV2hlZWxE
aXJlY3Rpb25UeXBlTGVmdDoKKyAgICAgICAgcmVzdWx0LmRlbHRhWCA9IHNjcm9sbGJhclBpeGVs
c1BlclRpY2s7CisgICAgICAgIHJlc3VsdC53aGVlbFRpY2tzWCA9IDE7CisgICAgICAgIGJyZWFr
OworICAgIGNhc2UgTW91c2VXaGVlbERpcmVjdGlvblR5cGVSaWdodDoKKyAgICAgICAgcmVzdWx0
LmRlbHRhWCA9IC1zY3JvbGxiYXJQaXhlbHNQZXJUaWNrOworICAgICAgICByZXN1bHQud2hlZWxU
aWNrc1ggPSAtMTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJuIHJlc3VsdDsK
K30KKworLy8gV2ViR2VzdHVyZUV2ZW50IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitXZWJHZXN0dXJlRXZlbnQgV2ViSW5wdXRF
dmVudEZhY3Rvcnk6Omdlc3R1cmVFdmVudChXZWJJbnB1dEV2ZW50OjpUeXBlIHR5cGUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb25nIHRpbWVT
dGFtcFNlY29uZHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCB5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZmxvYXQgZGVsdGFYLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZmxvYXQgZGVsdGFZLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1vZGlmaWVycykKK3sKKyAgICBXZWJH
ZXN0dXJlRXZlbnQgcmVzdWx0OworCisgICAgcmVzdWx0LnR5cGUgPSB0eXBlOworICAgIHJlc3Vs
dC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LmRlbHRhWCA9IGRlbHRhWDsK
KyAgICByZXN1bHQuZGVsdGFZID0gZGVsdGFZOworICAgIHJlc3VsdC50aW1lU3RhbXBTZWNvbmRz
ID0gdGltZVN0YW1wU2Vjb25kczsKKyAgICByZXN1bHQubW9kaWZpZXJzID0gbW9kaWZpZXJzOwor
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141525</attachid>
            <date>2012-05-11 16:23:02 -0700</date>
            <delta_ts>2012-05-14 14:03:27 -0700</delta_ts>
            <desc>Units fixed</desc>
            <filename>bug-86270-20120511162301.patch</filename>
            <type>text/plain</type>
            <size>7634</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMTY4MTcpCisrKyBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4
IEBACisyMDEyLTA1LTExICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgW0Nocm9taXVtXSBhbmRyb2lkL1dlYklucHV0RXZlbnRGYWN0b3J5IHNob3VsZCBoYW5kbGUg
d2hlZWwgZXZlbnRzIGFuZCBnZXN0dXJlIGV2ZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODYyNzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9hbmRyb2lkL1dlYklucHV0RXZlbnRGYWN0
b3J5Lmg6CisgICAgICAgICogc3JjL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2ZW50RmFjdG9yeTo6a2V5Ym9hcmRFdmVudCk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZlbnRGYWN0b3J5Ojptb3VzZUV2ZW50KToKKyAgICAg
ICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYklucHV0RXZlbnRGYWN0b3J5Ojptb3Vz
ZVdoZWVsRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJJbnB1dEV2ZW50RmFjdG9yeTo6Z2Vz
dHVyZUV2ZW50KToKKwogMjAxMi0wNS0xMSAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJv
dEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjExNjgwMi4K
SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL2FuZHJvaWQvV2ViSW5wdXRFdmVu
dEZhY3RvcnkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9h
bmRyb2lkL1dlYklucHV0RXZlbnRGYWN0b3J5LmgJKHJldmlzaW9uIDExNjY5MSkKKysrIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuaAko
d29ya2luZyBjb3B5KQpAQCAtNDYsNiArNDYsMTMgQEAgcHVibGljOgogICAgICAgICBNb3VzZUV2
ZW50VHlwZU1vdmUsCiAgICAgfTsKIAorICAgIGVudW0gTW91c2VXaGVlbERpcmVjdGlvblR5cGUg
eworICAgICAgICBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZVVwID0gMCwKKyAgICAgICAgTW91c2VX
aGVlbERpcmVjdGlvblR5cGVEb3duLAorICAgICAgICBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZUxl
ZnQsCisgICAgICAgIE1vdXNlV2hlZWxEaXJlY3Rpb25UeXBlUmlnaHQsCisgICAgfTsKKwogICAg
IFdFQktJVF9FWFBPUlQgc3RhdGljIFdlYktleWJvYXJkRXZlbnQga2V5Ym9hcmRFdmVudChXZWJJ
bnB1dEV2ZW50OjpUeXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQgbW9kaWZpZXJzLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3VibGUgdGltZVN0YW1wU2Vjb25kcywK
QEAgLTUzLDE1ICs2MCwyNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlYlVDaGFyIHVuaWNvZGVDaGFyYWN0ZXIsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJv
b2wgaXNTeXN0ZW1LZXkpOwogCi0gICAgV0VCS0lUX0VYUE9SVCBzdGF0aWMgV2ViTW91c2VFdmVu
dCBtb3VzZUV2ZW50KGludCB4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgeSwKKyAgICBXRUJLSVRfRVhQT1JUIHN0YXRpYyBXZWJNb3VzZUV2
ZW50IG1vdXNlRXZlbnQoTW91c2VFdmVudFR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG91YmxlIHRpbWVTdGFt
cFNlY29uZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCB3aW5kb3dYLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgd2luZG93WSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgTW91c2VFdmVudFR5cGUsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdWJsZSB0aW1lU3RhbXBTZWNvbmRzLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbW9kaWZp
ZXJzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQgY2xpY2tDb3VudCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgV2ViTW91c2VFdmVudDo6QnV0dG9uID0gV2ViTW91c2VFdmVudDo6QnV0dG9uTGVm
dCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCBjbGlja0NvdW50KTsKKworICAgIFdFQktJVF9FWFBPUlQgc3RhdGljIFdlYk1vdXNlV2hlZWxF
dmVudCBtb3VzZVdoZWVsRXZlbnQoTW91c2VXaGVlbERpcmVjdGlvblR5cGUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3VibGUg
dGltZVN0YW1wU2Vjb25kcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCB3aW5kb3dYLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdpbmRvd1kpOworCisg
ICAgV0VCS0lUX0VYUE9SVCBzdGF0aWMgV2ViR2VzdHVyZUV2ZW50IGdlc3R1cmVFdmVudChXZWJJ
bnB1dEV2ZW50OjpUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZG91YmxlIHRpbWVTdGFtcFNlY29uZHMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgeCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB5LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgZGVs
dGFYLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmxvYXQgZGVsdGFZLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IG1vZGlmaWVycyk7CisKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdApJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvYW5kcm9pZC9XZWJJbnB1dEV2
ZW50RmFjdG9yeS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
YW5kcm9pZC9XZWJJbnB1dEV2ZW50RmFjdG9yeS5jcHAJKHJldmlzaW9uIDExNjY5MSkKKysrIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL2FuZHJvaWQvV2ViSW5wdXRFdmVudEZhY3RvcnkuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC02NiwyMyArNjYsMjAgQEAgV2ViS2V5Ym9hcmRFdmVudCBXZWJJ
bnB1dEV2ZW50RmFjdG9yeTo6awogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLVdlYk1vdXNlRXZl
bnQgV2ViSW5wdXRFdmVudEZhY3Rvcnk6Om1vdXNlRXZlbnQoaW50IHgsIGludCB5LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgd2luZG93WCwgaW50
IHdpbmRvd1ksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IE1vdXNlRXZlbnRUeXBlIHR5cGUsCitXZWJNb3VzZUV2ZW50IFdlYklucHV0RXZlbnRGYWN0b3J5
Ojptb3VzZUV2ZW50KE1vdXNlRXZlbnRUeXBlIHR5cGUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbiBidXR0b24sCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdWJsZSB0aW1l
U3RhbXBTZWNvbmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgd2luZG93WCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IHdpbmRvd1ksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBtb2RpZmllcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBjbGlja0NvdW50LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBXZWJNb3VzZUV2ZW50OjpCdXR0b24gYnV0dG9uKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgY2xpY2tD
b3VudCkKIHsKICAgICBXZWJNb3VzZUV2ZW50IHJlc3VsdDsKIAotICAgIHJlc3VsdC54ID0geDsK
LSAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnggPSB3aW5kb3dYOworICAgIHJlc3VsdC55
ID0gd2luZG93WTsKICAgICByZXN1bHQud2luZG93WCA9IHdpbmRvd1g7CiAgICAgcmVzdWx0Lndp
bmRvd1kgPSB3aW5kb3dZOwotICAgIC8vIEZJWE1FOiBXZSBuZWVkIHRvIGRlY2lkZSB3aGF0IHRv
IHVzZSBmb3IgdGhlIGdsb2JhbFgvWS4KLSAgICByZXN1bHQuZ2xvYmFsWCA9IHdpbmRvd1g7Ci0g
ICAgcmVzdWx0Lmdsb2JhbFkgPSB3aW5kb3dZOwogICAgIHJlc3VsdC50aW1lU3RhbXBTZWNvbmRz
ID0gdGltZVN0YW1wU2Vjb25kczsKICAgICByZXN1bHQuY2xpY2tDb3VudCA9IGNsaWNrQ291bnQ7
CiAgICAgcmVzdWx0Lm1vZGlmaWVycyA9IG1vZGlmaWVyczsKQEAgLTEwNSw0ICsxMDIsNjkgQEAg
V2ViTW91c2VFdmVudCBXZWJJbnB1dEV2ZW50RmFjdG9yeTo6bW91cwogICAgIHJldHVybiByZXN1
bHQ7CiB9CiAKKy8vIFdlYk1vdXNlV2hlZWxFdmVudCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworV2ViTW91c2VXaGVlbEV2ZW50
IFdlYklucHV0RXZlbnRGYWN0b3J5Ojptb3VzZVdoZWVsRXZlbnQoTW91c2VXaGVlbERpcmVjdGlv
blR5cGUgZGlyZWN0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZG91YmxlIHRpbWVTdGFtcFNlY29uZHMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgd2luZG93WCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCB3aW5kb3dZKQoreworICAgIFdlYk1vdXNlV2hlZWxFdmVudCByZXN1bHQ7CisKKyAgICBy
ZXN1bHQudHlwZSA9IFdlYklucHV0RXZlbnQ6Ok1vdXNlV2hlZWw7CisgICAgcmVzdWx0LnggPSB3
aW5kb3dYOworICAgIHJlc3VsdC55ID0gd2luZG93WTsKKyAgICByZXN1bHQud2luZG93WCA9IHdp
bmRvd1g7CisgICAgcmVzdWx0LndpbmRvd1kgPSB3aW5kb3dZOworICAgIHJlc3VsdC50aW1lU3Rh
bXBTZWNvbmRzID0gdGltZVN0YW1wU2Vjb25kczsKKyAgICByZXN1bHQuYnV0dG9uID0gV2ViTW91
c2VFdmVudDo6QnV0dG9uTm9uZTsKKworICAgIC8vIFRoZSBiZWxvdyBjaG9pY2VzIGFyZSBtYXRj
aGVkIGZyb20gR1RLLgorICAgIHN0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxiYXJQaXhlbHNQZXJU
aWNrID0gMTYwLjBmIC8gMy4wZjsKKworICAgIHN3aXRjaCAoZGlyZWN0aW9uKSB7CisgICAgY2Fz
ZSBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZVVwOgorICAgICAgICByZXN1bHQuZGVsdGFZID0gc2Ny
b2xsYmFyUGl4ZWxzUGVyVGljazsKKyAgICAgICAgcmVzdWx0LndoZWVsVGlja3NZID0gMTsKKyAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZURvd246CisgICAg
ICAgIHJlc3VsdC5kZWx0YVkgPSAtc2Nyb2xsYmFyUGl4ZWxzUGVyVGljazsKKyAgICAgICAgcmVz
dWx0LndoZWVsVGlja3NZID0gLTE7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgTW91c2VXaGVl
bERpcmVjdGlvblR5cGVMZWZ0OgorICAgICAgICByZXN1bHQuZGVsdGFYID0gc2Nyb2xsYmFyUGl4
ZWxzUGVyVGljazsKKyAgICAgICAgcmVzdWx0LndoZWVsVGlja3NYID0gMTsKKyAgICAgICAgYnJl
YWs7CisgICAgY2FzZSBNb3VzZVdoZWVsRGlyZWN0aW9uVHlwZVJpZ2h0OgorICAgICAgICByZXN1
bHQuZGVsdGFYID0gLXNjcm9sbGJhclBpeGVsc1BlclRpY2s7CisgICAgICAgIHJlc3VsdC53aGVl
bFRpY2tzWCA9IC0xOworICAgICAgICBicmVhazsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0
OworfQorCisvLyBXZWJHZXN0dXJlRXZlbnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1dlYkdlc3R1cmVFdmVudCBXZWJJbnB1
dEV2ZW50RmFjdG9yeTo6Z2VzdHVyZUV2ZW50KFdlYklucHV0RXZlbnQ6OlR5cGUgdHlwZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdWJsZSB0
aW1lU3RhbXBTZWNvbmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgeSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZsb2F0IGRlbHRhWCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0IGRlbHRhWSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb2RpZmllcnMpCit7CisgICAg
V2ViR2VzdHVyZUV2ZW50IHJlc3VsdDsKKworICAgIHJlc3VsdC50eXBlID0gdHlwZTsKKyAgICBy
ZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJlc3VsdC5kZWx0YVggPSBkZWx0
YVg7CisgICAgcmVzdWx0LmRlbHRhWSA9IGRlbHRhWTsKKyAgICByZXN1bHQudGltZVN0YW1wU2Vj
b25kcyA9IHRpbWVTdGFtcFNlY29uZHM7CisgICAgcmVzdWx0Lm1vZGlmaWVycyA9IG1vZGlmaWVy
czsKKworICAgIHJldHVybiByZXN1bHQ7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>