<?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>102534</bug_id>
          
          <creation_ts>2012-11-16 10:12:29 -0800</creation_ts>
          <short_desc>[chromium] Add flag to enable/disable touch adjustment at runtime.</short_desc>
          <delta_ts>2013-01-04 00:52:57 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kevin Ellis">kevers</reporter>
          <assigned_to name="Kevin Ellis">kevers</assigned_to>
          <cc>abarth</cc>
    
    <cc>allan.jensen</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>rjkroege</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>769404</commentid>
    <comment_count>0</comment_count>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-16 10:12:29 -0800</bug_when>
    <thetext>[chromium] Add flag to enable/disable touch adjustment at runtime.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769410</commentid>
    <comment_count>1</comment_count>
      <attachid>174717</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-16 10:16:36 -0800</bug_when>
    <thetext>Created attachment 174717
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769418</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-16 10:20:42 -0800</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>769427</commentid>
    <comment_count>3</comment_count>
      <attachid>174717</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-11-16 10:32:22 -0800</bug_when>
    <thetext>Comment on attachment 174717
Patch

I&apos;m not terribly familiar with this feature - why does it make sense to adjust this on a per-process basis instead of something per WebView?  When would an embedder want to toggle this behavior?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769620</commentid>
    <comment_count>4</comment_count>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-16 13:21:44 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 174717 [details])
&gt; I&apos;m not terribly familiar with this feature - why does it make sense to adjust this on a per-process basis instead of something per WebView?  When would an embedder want to toggle this behavior?

The primary use of this feature is for the chrome developer to diagnose problems with touch.  To this end, following the same pattern used for enabling/disabling touch events.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>771950</commentid>
    <comment_count>5</comment_count>
      <attachid>175237</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-20 09:54:15 -0800</bug_when>
    <thetext>Created attachment 175237
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772022</commentid>
    <comment_count>6</comment_count>
      <attachid>175237</attachid>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2012-11-20 10:59:52 -0800</bug_when>
    <thetext>Comment on attachment 175237
Patch

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

Looks good overall.

&gt; Source/WebCore/page/EventHandler.cpp:2706
&gt; +bool EventHandler::touchAdjustmentEnabled(const PlatformGestureEvent&amp; event)
&gt; +{
&gt; +    if (m_frame-&gt;settings() &amp;&amp; !m_frame-&gt;settings()-&gt;touchAdjustmentEnabled())
&gt; +        return false;
&gt; +    return !event.area().isEmpty();
&gt; +}

With the combination of checking both the flag and if gesture events come with an area I am not sure touchAdjustmentEnabled is the right word. Perhaps shouldApplyTouchAdjustment, or something similar.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772037</commentid>
    <comment_count>7</comment_count>
      <attachid>175237</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-20 11:26:51 -0800</bug_when>
    <thetext>Comment on attachment 175237
Patch

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

&gt; Source/WebCore/page/Settings.h:295
&gt; +#if ENABLE(TOUCH_ADJUSTMENT)
&gt; +        void setEnableTouchAdjustment(bool flag) { m_touchAdjustmentEnabled = flag; }
&gt; +        bool touchAdjustmentEnabled() const { return m_touchAdjustmentEnabled; }
&gt; +#endif

Please use Settings.in rather than creating this setting manually.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772057</commentid>
    <comment_count>8</comment_count>
      <attachid>175256</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-20 11:58:10 -0800</bug_when>
    <thetext>Created attachment 175256
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772116</commentid>
    <comment_count>9</comment_count>
      <attachid>175267</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-20 13:25:34 -0800</bug_when>
    <thetext>Created attachment 175267
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772117</commentid>
    <comment_count>10</comment_count>
      <attachid>175237</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-20 13:26:09 -0800</bug_when>
    <thetext>Comment on attachment 175237
Patch

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

&gt;&gt; Source/WebCore/page/EventHandler.cpp:2706
&gt;&gt; +}
&gt; 
&gt; With the combination of checking both the flag and if gesture events come with an area I am not sure touchAdjustmentEnabled is the right word. Perhaps shouldApplyTouchAdjustment, or something similar.

Done.

&gt;&gt; Source/WebCore/page/Settings.h:295
&gt;&gt; +#endif
&gt; 
&gt; Please use Settings.in rather than creating this setting manually.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772118</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-20 13:27:52 -0800</bug_when>
    <thetext>Attachment 175267 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/ChangeLog:21:  Need whitespace between colon and description  [changelog/filechangedescriptionwhitespace] [5]
Total errors found: 1 in 8 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>772153</commentid>
    <comment_count>12</comment_count>
      <attachid>175274</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-20 14:04:57 -0800</bug_when>
    <thetext>Created attachment 175274
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772167</commentid>
    <comment_count>13</comment_count>
      <attachid>175274</attachid>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2012-11-20 14:17:26 -0800</bug_when>
    <thetext>Comment on attachment 175274
Patch

LGTM, but not a reviewer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772282</commentid>
    <comment_count>14</comment_count>
      <attachid>175274</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-11-20 16:40:13 -0800</bug_when>
    <thetext>Comment on attachment 175274
Patch

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

Looks good. One minor issue, one request and one question.

would like to see another round before it lands, then the r-.

&gt; Source/WebCore/ChangeLog:9
&gt; +        [chromium] Add flag to enable/disable touch adjustment at runtime.
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=102534
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Add setting for enabling or disabling touch adjustment.
&gt; +

You should mention here why the compile time only flag is not enough. Things like when compile-time would be enabled, but the run-time setting disable, etc.

&gt; Source/WebCore/page/EventHandler.cpp:2701
&gt; +bool EventHandler::shouldApplyTouchAdjustment(const PlatformGestureEvent&amp; event)

const?

&gt; Source/WebCore/page/Settings.in:143
&gt; +touchAdjustmentEnabled initial=true

default true? How does it work when the compile flag is disabled? Do we care? Found it a bit odd ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772869</commentid>
    <comment_count>15</comment_count>
      <attachid>175425</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-21 06:19:23 -0800</bug_when>
    <thetext>Created attachment 175425
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772873</commentid>
    <comment_count>16</comment_count>
      <attachid>175274</attachid>
    <who name="Kevin Ellis">kevers</who>
    <bug_when>2012-11-21 06:22:45 -0800</bug_when>
    <thetext>Comment on attachment 175274
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:9
&gt;&gt; +
&gt; 
&gt; You should mention here why the compile time only flag is not enough. Things like when compile-time would be enabled, but the run-time setting disable, etc.

Done.

&gt;&gt; Source/WebCore/page/EventHandler.cpp:2701
&gt;&gt; +bool EventHandler::shouldApplyTouchAdjustment(const PlatformGestureEvent&amp; event)
&gt; 
&gt; const?

Done.

&gt;&gt; Source/WebCore/page/Settings.in:143
&gt;&gt; +touchAdjustmentEnabled initial=true
&gt; 
&gt; default true? How does it work when the compile flag is disabled? Do we care? Found it a bit odd ...

Added comment to indicate that both the compile option is also required to enable touch adjustment.  This option provides dynamic control to disable touch adjustment as required at run-time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772901</commentid>
    <comment_count>17</comment_count>
      <attachid>175425</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-11-21 06:40:43 -0800</bug_when>
    <thetext>Comment on attachment 175425
Patch

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

&gt; Source/WebCore/page/EventHandler.cpp:2750
&gt;  bool EventHandler::adjustGesturePosition(const PlatformGestureEvent&amp; gestureEvent, IntPoint&amp; adjustedPoint)

did not check all call sites, but this returned bool seems not too useful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>773044</commentid>
    <comment_count>18</comment_count>
      <attachid>175425</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-21 09:49:42 -0800</bug_when>
    <thetext>Comment on attachment 175425
Patch

API change LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>773071</commentid>
    <comment_count>19</comment_count>
      <attachid>175425</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-21 10:10:04 -0800</bug_when>
    <thetext>Comment on attachment 175425
Patch

Clearing flags on attachment: 175425

Committed r135414: &lt;http://trac.webkit.org/changeset/135414&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>773072</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-21 10:10:09 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>800033</commentid>
    <comment_count>21</comment_count>
      <attachid>175274</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-04 00:52:57 -0800</bug_when>
    <thetext>Comment on attachment 175274
Patch

Cleared review? from obsolete attachment 175274 so that this bug does not appear in http://webkit.org/pending-review.  If you would like this patch reviewed, please attach it to a new bug (or re-open this bug before marking it for review again).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174717</attachid>
            <date>2012-11-16 10:16:36 -0800</date>
            <delta_ts>2012-11-20 09:54:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102534-20121116131431.patch</filename>
            <type>text/plain</type>
            <size>7475</size>
            <attacher name="Kevin Ellis">kevers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0NjAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjE0NWNkZjZmZmIwMjRi
MTY2MmJhOWVhNjM0ODk5NTViOTYxMDM0NC4uMTI2YzhlYjMwMjk4NzQyOTkwNGE2ODQyMGVhNWNh
YzVlNTA5MTY3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEyLTExLTE2ICBLZXZp
biBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
ZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRzIHJ1bnRpbWUg
ZmVhdHVyZSBmb3IgZW5hYmxpbmcgdG91Y2ggYWRqdXN0bWVudC4KKworICAgICAgICBObyBuZXcg
dGVzdHMgcmVxdWlyZWQuCisKKyAgICAgICAgKiBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3Mv
Z2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg6CisgICAgICAgIChSdW50aW1lRW5hYmxl
ZEZlYXR1cmVzKToKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnRv
dWNoQWRqdXN0bWVudEVuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6c2V0VG91Y2hBZGp1c3RtZW50RW5hYmxlZCk6CisgICAgICAgICogcGFnZS9FdmVu
dEhhbmRsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0
dXJlRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJl
VGFwKToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6c2VuZENvbnRleHRNZW51RXZl
bnRGb3JHZXN0dXJlKToKKwogMjAxMi0xMS0xNCAgQW50b24gT2J6aGlyb3YgIDxhLm9iemhpcm92
QHNhbXN1bmcuY29tPgogCiAgICAgICAgIEFkZCBwbGF0Zm9ybSBpbXBsZW1lbnRhdGlvbiBvZiBy
ZW1vdGUgd2ViIGluc3BlY3RvciBzZXJ2ZXIgZm9yIEdUSyBwb3J0LgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0No
YW5nZUxvZwppbmRleCA5NmIzNTY3M2E5MmJmZmI3MWQxZTY0MzJmMDY4MmZlZThhYjUyZWVhLi42
MDAwODI1ZTNlYjE3ZjRkMTRjYmM2ZTZlNGNkMjVmMzc1OTVlM2E1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTE2ICBLZXZpbiBFbGxpcyAgPGtl
dmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQgZmxhZyB0byBlbmFi
bGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRzIGhvb2sgZm9yIGVuYWJsaW5nL2Rp
c2FibGluZyB0b3VjaCBhZGp1c3RtZW50LgorCisgICAgICAgICogcHVibGljL1dlYlJ1bnRpbWVG
ZWF0dXJlcy5oOgorICAgICAgICAoV2ViUnVudGltZUZlYXR1cmVzKToKKyAgICAgICAgKiBzcmMv
V2ViUnVudGltZUZlYXR1cmVzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUnVudGltZUZlYXR1
cmVzOjplbmFibGVUb3VjaEFkanVzdG1lbnQpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAg
KFdlYktpdDo6V2ViUnVudGltZUZlYXR1cmVzOjppc1RvdWNoQWRqdXN0bWVudEVuYWJsZWQpOgor
CiAyMDEyLTExLTE0ICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBTdXBwb3J0IGZvciBsb2NhbGl6YXRpb24gdGVzdHMgb2YgY2FsZW5kYXIgcGlja2VyCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxl
ZEZlYXR1cmVzLmNwcAppbmRleCBlYTM2NzllMmQwMzcwYjUwMjEzNDY5OGQ0ZmMyYWNhZjMwNWI4
NzhiLi40OWMxYmQ0YzU4NmNjNjNhNzMwMGZkNjdjYTk2MjI3NmMyODEwNDc4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRG
ZWF0dXJlcy5jcHAKQEAgLTIzMiw0ICsyMzIsOCBAQCBib29sIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OmlzRGlhbG9nRWxlbWVudEVuYWJsZWQgPSBmYWxzZTsKIGJvb2wgUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6aXNSZXF1ZXN0QXV0b2NvbXBsZXRlRW5hYmxlZCA9IGZhbHNlOwogI2VuZGlmCiAK
KyNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKK2Jvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJl
czo6aXNUb3VjaEFkanVzdG1lbnRFbmFibGVkID0gdHJ1ZTsKKyNlbmRpZgorCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmlj
L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVy
aWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4IGJiOTVjZTg0NTZjYjkyM2NiOTAzMDA0
YTFmYWVmNmZlNzk4MzFiNDQuLmU3Y2U4Nzg0NGJmMjc4NTg1YzMzMDVkZjNmZDAxYTMxZmRiYTNh
NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVu
YWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVu
dGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0yNTYsNiArMjU2LDExIEBAIHB1YmxpYzoKICAgICBz
dGF0aWMgdm9pZCBzZXRSZXF1ZXN0QXV0b2NvbXBsZXRlRW5hYmxlZChib29sIGlzRW5hYmxlZCkg
eyBpc1JlcXVlc3RBdXRvY29tcGxldGVFbmFibGVkID0gaXNFbmFibGVkOyB9CiAjZW5kaWYKIAor
I2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5UKQorICAgIHN0YXRpYyBib29sIHRvdWNoQWRqdXN0
bWVudEVuYWJsZWQoKSB7IHJldHVybiBpc1RvdWNoQWRqdXN0bWVudEVuYWJsZWQ7IH0KKyAgICBz
dGF0aWMgdm9pZCBzZXRUb3VjaEFkanVzdG1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IGlz
VG91Y2hBZGp1c3RtZW50RW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorI2VuZGlmIAorCiAKIHByaXZh
dGU6CiAgICAgLy8gTmV2ZXIgaW5zdGFudGlhdGUuCkBAIC0zNTYsNiArMzYxLDEwIEBAIHByaXZh
dGU6CiAjaWYgRU5BQkxFKFJFUVVFU1RfQVVUT0NPTVBMRVRFKQogICAgIHN0YXRpYyBib29sIGlz
UmVxdWVzdEF1dG9jb21wbGV0ZUVuYWJsZWQ7CiAjZW5kaWYKKworI2lmIEVOQUJMRShUT1VDSF9B
REpVU1RNRU5UKQorICAgIHN0YXRpYyBib29sIGlzVG91Y2hBZGp1c3RtZW50RW5hYmxlZDsKKyNl
bmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuY3BwCmluZGV4IDg1YjgzYzFjM2M5NWQzNzgzMTAwNTBjZjFiMzIyNjdlOWUxZmQ2NTUu
LmZhYWE3ZWY2NjBiNzc3Yzg5MmYxMjY2MWMzMDUyYWM4ODMwNDRkZTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTcyLDYgKzcyLDcgQEAKICNpbmNsdWRlICJSZW5kZXJU
ZXh0Q29udHJvbFNpbmdsZUxpbmUuaCIKICNpbmNsdWRlICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVk
ZSAiUmVuZGVyV2lkZ2V0LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgog
I2luY2x1ZGUgIlNjcm9sbEFuaW1hdG9yLmgiCiAjaW5jbHVkZSAiU2Nyb2xsYmFyLmgiCiAjaW5j
bHVkZSAiU2V0dGluZ3MuaCIKQEAgLTI1MjUsNyArMjUyNiw3IEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVF
dmVudCkKICAgICBIaXRUZXN0UmVxdWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBlIGhpdFR5cGUgPSBI
aXRUZXN0UmVxdWVzdDo6VG91Y2hFdmVudDsKICAgICBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUoKSA9
PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bikgewogI2lmIEVOQUJMRShUT1VDSF9BREpV
U1RNRU5UKQotICAgICAgICBpZiAoIWdlc3R1cmVFdmVudC5hcmVhKCkuaXNFbXB0eSgpKQorICAg
ICAgICBpZiAoIWdlc3R1cmVFdmVudC5hcmVhKCkuaXNFbXB0eSgpICYmIFJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OnRvdWNoQWRqdXN0bWVudEVuYWJsZWQoKSkKICAgICAgICAgICAgIGFkanVzdEdl
c3R1cmVQb3NpdGlvbihnZXN0dXJlRXZlbnQsIGFkanVzdGVkUG9pbnQpOwogI2VuZGlmCiAgICAg
ICAgIGhpdFR5cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsKQEAgLTI1OTQsNyArMjU5NSw3
IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlVGFwKGNvbnN0IFBsYXRmb3JtR2Vz
dHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgLy8gRklYTUU6IFJlZmFjdG9yIHRoaXMgY29k
ZSB0byBub3QgaGl0IHRlc3QgbXVsdGlwbGUgdGltZXMuIFdlIHVzZSB0aGUgYWRqdXN0ZWQgcG9z
aXRpb24gdG8gZW5zdXJlIHRoYXQgdGhlIGNvcnJlY3Qgbm9kZSBpcyB0YXJnZXRlZCBieSB0aGUg
bGF0ZXIgcmVkdW5kYW50IGhpdCB0ZXN0cy4KICAgICBJbnRQb2ludCBhZGp1c3RlZFBvaW50ID0g
Z2VzdHVyZUV2ZW50LnBvc2l0aW9uKCk7CiAjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1FTlQpCi0g
ICAgaWYgKCFnZXN0dXJlRXZlbnQuYXJlYSgpLmlzRW1wdHkoKSkKKyAgICBpZiAoIWdlc3R1cmVF
dmVudC5hcmVhKCkuaXNFbXB0eSgpICYmICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjp0b3VjaEFk
anVzdG1lbnRFbmFibGVkKCkpCiAgICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlvbihnZXN0dXJl
RXZlbnQsIGFkanVzdGVkUG9pbnQpOwogI2VuZGlmCiAKQEAgLTI4NDUsNyArMjg0Niw3IEBAIGJv
b2wgRXZlbnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudEZvckdlc3R1cmUoY29uc3QgUGxh
dGZvcm1HZXN0dXJlRXZlbnQmIGV2CiAKICAgICBJbnRQb2ludCBhZGp1c3RlZFBvaW50ID0gZXZl
bnQucG9zaXRpb24oKTsKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKLSAgICBpZiAoIWV2
ZW50LmFyZWEoKS5pc0VtcHR5KCkpCisgICAgaWYgKCFldmVudC5hcmVhKCkuaXNFbXB0eSgpICYm
IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnRvdWNoQWRqdXN0bWVudEVuYWJsZWQoKSkKICAgICAg
ICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGV2ZW50LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgog
ICAgIFBsYXRmb3JtTW91c2VFdmVudCBtb3VzZUV2ZW50KGFkanVzdGVkUG9pbnQsIGV2ZW50Lmds
b2JhbFBvc2l0aW9uKCksIFJpZ2h0QnV0dG9uLCBldmVudFR5cGUsIDEsIGZhbHNlLCBmYWxzZSwg
ZmFsc2UsIGZhbHNlLCBXVEY6OmN1cnJlbnRUaW1lKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViUnVudGltZUZlYXR1cmVzLmggYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJSdW50aW1lRmVhdHVyZXMuaAppbmRleCBkNTRjYzJjNjBkNmE1
ZDMxMjJiYzM3ZDE4ZDQ5ZDkwNmM0NThhMTNiLi5jMzM2YWEzODNkOTMwZTRiMGUyYThjMzM4YjAy
OTJjYTQwNzczNmNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9X
ZWJSdW50aW1lRmVhdHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9X
ZWJSdW50aW1lRmVhdHVyZXMuaApAQCAtNzksNiArNzksOSBAQCBwdWJsaWM6CiAgICAgV0VCS0lU
X0VYUE9SVCBzdGF0aWMgdm9pZCBlbmFibGVUb3VjaChib29sKTsKICAgICBXRUJLSVRfRVhQT1JU
IHN0YXRpYyBib29sIGlzVG91Y2hFbmFibGVkKCk7CiAKKyAgICBXRUJLSVRfRVhQT1JUIHN0YXRp
YyB2b2lkIGVuYWJsZVRvdWNoQWRqdXN0bWVudChib29sKTsKKyAgICBXRUJLSVRfRVhQT1JUIHN0
YXRpYyBib29sIGlzVG91Y2hBZGp1c3RtZW50RW5hYmxlZCgpOworCiAgICAgV0VCS0lUX0VYUE9S
VCBzdGF0aWMgdm9pZCBlbmFibGVEZXZpY2VNb3Rpb24oYm9vbCk7CiAgICAgV0VCS0lUX0VYUE9S
VCBzdGF0aWMgYm9vbCBpc0RldmljZU1vdGlvbkVuYWJsZWQoKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUnVudGltZUZlYXR1cmVzLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlJ1bnRpbWVGZWF0dXJlcy5jcHAKaW5kZXggMzIxNDI5NzQ0
YzJjMzNhODlhMDE4N2I1YzI2MmNmZWUyNjVhYzc5Ni4uZjI3NGNmNDA3NzM1OGNjY2NjOTM1OTQy
Mzk5NTVlMTZkNjA5ZjkxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViUnVudGltZUZlYXR1cmVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJSdW50aW1lRmVhdHVyZXMuY3BwCkBAIC0yMjAsNiArMjIwLDIyIEBAIGJvb2wgV2ViUnVudGlt
ZUZlYXR1cmVzOjppc1RvdWNoRW5hYmxlZCgpCiAjZW5kaWYKIH0KIAordm9pZCBXZWJSdW50aW1l
RmVhdHVyZXM6OmVuYWJsZVRvdWNoQWRqdXN0bWVudChib29sIGVuYWJsZSkKK3sKKyNpZiBFTkFC
TEUoVE9VQ0hfQURKVVNUTUVOVCkKKyAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRUb3Vj
aEFkanVzdG1lbnRFbmFibGVkKGVuYWJsZSk7CisjZW5kaWYKK30KKworYm9vbCBXZWJSdW50aW1l
RmVhdHVyZXM6OmlzVG91Y2hBZGp1c3RtZW50RW5hYmxlZCgpCit7CisjaWYgRU5BQkxFKFRPVUNI
X0FESlVTVE1FTlQpCisgICAgcmV0dXJuIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnRvdWNoQWRq
dXN0bWVudEVuYWJsZWQoKTsKKyNlbHNlCisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisK
IHZvaWQgV2ViUnVudGltZUZlYXR1cmVzOjplbmFibGVEZXZpY2VNb3Rpb24oYm9vbCBlbmFibGUp
CiB7CiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0RGV2aWNlTW90aW9uRW5hYmxlZChl
bmFibGUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175237</attachid>
            <date>2012-11-20 09:54:15 -0800</date>
            <delta_ts>2012-11-20 13:26:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102534-20121120125204.patch</filename>
            <type>text/plain</type>
            <size>10175</size>
            <attacher name="Kevin Ellis">kevers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWJjZDZlODk3MDI5ZjQ3
NTc1NTc2ZTI4ZGJkYmEzYTA5NjE3MDYxYS4uZjMzMjU2MzEyYWUxYzljMTc5YTRkNzMwOGRkODcy
MDkyMDM4Yzc5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTExLTIwICBLZXZp
biBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
ZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc2V0dGluZyBm
b3IgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFkanVzdG1lbnQuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIHJlcXVpcmVkLgorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQpOiBNb3Zl
IGVuYWJsZSBjaGVjayB0byBhZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVUYXApOiBNb3ZlIGVuYWJsZSBjaGVjayB0byBh
ZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnRv
dWNoQWRqdXN0bWVudEVuYWJsZWQpOiBDaGVja3MgaWYgdG91Y2ggYWRqdXN0bWVudCBpcyBlbmFi
bGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6
OmFkanVzdEdlc3R1cmVQb3NpdGlvbik6ICBBZGQgY2hlY2sgZm9yIGVuYWJsaW5nIG9mIHRvdWNo
IGFkanVzdG1lbnQuCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnNlbmRDb250ZXh0
TWVudUV2ZW50Rm9yR2VzdHVyZSk6IE1vdmUgZW5hYmxlIGNoZWNrIHRvIGFkanVzdEdlc3R1cmVQ
b3NpdGlvbi4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5oOgorICAgICAgICAoRXZlbnRI
YW5kbGVyKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlNldHRpbmdzOjpTZXR0aW5ncyk6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorICAgICAg
ICAoU2V0dGluZ3MpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OnNldEVuYWJsZVRvdWNo
QWRqdXN0bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6dG91Y2hBZGp1c3RtZW50
RW5hYmxlZCk6CisKIDIwMTItMTEtMjAgIEtlaXNoaSBIYXR0b3JpICA8a2Vpc2hpQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgV2VlayBwaWNrZXIgd2lkdGggaXMgdG9vIHNtYWxsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IDk2ZmQxZWE5NzNhN2Y3Yzk5NjQ4Mzg1MmVlMzM1YWJjNzcxNjQ3
NmQuLjVkZWIxZTYxNDlkNDk4OWU1MGRhODU0N2RhODNlZGNlNjBmNTllYjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTItMTEtMjAgIEtldmluIEVsbGlz
ICA8a2V2ZXJzQGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEFkZCBmbGFnIHRv
IGVuYWJsZS9kaXNhYmxlIHRvdWNoIGFkanVzdG1lbnQgYXQgcnVudGltZS4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMjUzNAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzZXR0aW5nIGZvciBlbmFi
bGluZyBvciBkaXNhYmxpbmcgdG91Y2ggYWRqdXN0bWVudC4KKworICAgICAgICAqIHB1YmxpYy9X
ZWJTZXR0aW5ncy5oOgorICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJTZXR0aW5nc0ltcGw6OnNldEVuYWJsZVRvdWNoQWRqdXN0bWVudCk6Cisg
ICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuaDoKKyAgICAg
ICAgKFdlYlNldHRpbmdzSW1wbCk6CisKIDIwMTItMTEtMTkgIFl1cnkgU2VtaWtoYXRza3kgIDx5
dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gRml4IENocm9taXVtIFdp
biBjb21waWxhdGlvbiBhZnRlciByMTM1MTk2LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwCmluZGV4IDNhNzczOWZiZTJhODQzYWZmMjZlNzg5Zjc1NGIzZjg3MjM0ZDhhYjQuLjNiN2Jm
YzhiOWMzMzk2YmQ1MmY3NDhiNjA1Nzc3MzFjMjg4YTA5ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAKQEAgLTI1MzEsOCArMjUzMSw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpo
YW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVu
dCkKICAgICBIaXRUZXN0UmVxdWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBlIGhpdFR5cGUgPSBIaXRU
ZXN0UmVxdWVzdDo6VG91Y2hFdmVudDsKICAgICBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQ
bGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bikgewogI2lmIEVOQUJMRShUT1VDSF9BREpVU1RN
RU5UKQotICAgICAgICBpZiAoIWdlc3R1cmVFdmVudC5hcmVhKCkuaXNFbXB0eSgpKQotICAgICAg
ICAgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVFdmVudCwgYWRqdXN0ZWRQb2ludCk7
CisgICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlvbihnZXN0dXJlRXZlbnQsIGFkanVzdGVkUG9p
bnQpOwogI2VuZGlmCiAgICAgICAgIGhpdFR5cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsK
ICAgICB9IGVsc2UgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2Vz
dHVyZVRhcCB8fCBnZXN0dXJlRXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVU
YXBEb3duQ2FuY2VsKQpAQCAtMjYxNyw4ICsyNjE2LDcgQEAgYm9vbCBFdmVudEhhbmRsZXI6Omhh
bmRsZUdlc3R1cmVUYXAoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkK
ICAgICAvLyBGSVhNRTogUmVmYWN0b3IgdGhpcyBjb2RlIHRvIG5vdCBoaXQgdGVzdCBtdWx0aXBs
ZSB0aW1lcy4gV2UgdXNlIHRoZSBhZGp1c3RlZCBwb3NpdGlvbiB0byBlbnN1cmUgdGhhdCB0aGUg
Y29ycmVjdCBub2RlIGlzIHRhcmdldGVkIGJ5IHRoZSBsYXRlciByZWR1bmRhbnQgaGl0IHRlc3Rz
LgogICAgIEludFBvaW50IGFkanVzdGVkUG9pbnQgPSBnZXN0dXJlRXZlbnQucG9zaXRpb24oKTsK
ICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKLSAgICBpZiAoIWdlc3R1cmVFdmVudC5hcmVh
KCkuaXNFbXB0eSgpKQotICAgICAgICBhZGp1c3RHZXN0dXJlUG9zaXRpb24oZ2VzdHVyZUV2ZW50
LCBhZGp1c3RlZFBvaW50KTsKKyAgICBhZGp1c3RHZXN0dXJlUG9zaXRpb24oZ2VzdHVyZUV2ZW50
LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgogCiAgICAgUGxhdGZvcm1Nb3VzZUV2ZW50IGZha2VN
b3VzZU1vdmUoYWRqdXN0ZWRQb2ludCwgZ2VzdHVyZUV2ZW50Lmdsb2JhbFBvc2l0aW9uKCksCkBA
IC0yNzAwLDYgKzI2OTgsMTQgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVTY3Jv
bGxDb3JlKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXYKICNlbmRpZgogCiAj
aWYgRU5BQkxFKFRPVUNIX0FESlVTVE1FTlQpCitib29sIEV2ZW50SGFuZGxlcjo6dG91Y2hBZGp1
c3RtZW50RW5hYmxlZChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZXZlbnQpCit7CisgICAg
aWYgKG1fZnJhbWUtPnNldHRpbmdzKCkgJiYgIW1fZnJhbWUtPnNldHRpbmdzKCktPnRvdWNoQWRq
dXN0bWVudEVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiAhZXZl
bnQuYXJlYSgpLmlzRW1wdHkoKTsKK30KKworCiBib29sIEV2ZW50SGFuZGxlcjo6YmVzdENsaWNr
YWJsZU5vZGVGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwgY29uc3Qg
SW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFBvaW50JiB0YXJnZXRQb2ludCwgTm9kZSomIHRhcmdl
dE5vZGUpCiB7CiAgICAgSGl0VGVzdFJlcXVlc3Q6OkhpdFRlc3RSZXF1ZXN0VHlwZSBoaXRUeXBl
ID0gSGl0VGVzdFJlcXVlc3Q6OlJlYWRPbmx5IHwgSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsKQEAg
LTI3NDMsNiArMjc0OSw5IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpiZXN0Wm9vbWFibGVBcmVhRm9y
VG91Y2hQb2ludChjb25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIsIGNvCiAKIGJvb2wgRXZlbnRI
YW5kbGVyOjphZGp1c3RHZXN0dXJlUG9zaXRpb24oY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQm
IGdlc3R1cmVFdmVudCwgSW50UG9pbnQmIGFkanVzdGVkUG9pbnQpCiB7CisgICAgaWYgKCF0b3Vj
aEFkanVzdG1lbnRFbmFibGVkKGdlc3R1cmVFdmVudCkpCisgICAgICAgIHJldHVybiBmYWxzZTsK
KwogICAgIE5vZGUqIHRhcmdldE5vZGUgPSAwOwogICAgIHN3aXRjaCAoZ2VzdHVyZUV2ZW50LnR5
cGUoKSkgewogICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcDoKQEAgLTI4NzMsOCAr
Mjg4Miw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudEZvckdlc3R1
cmUoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGV2CiAKICAgICBJbnRQb2ludCBhZGp1c3Rl
ZFBvaW50ID0gZXZlbnQucG9zaXRpb24oKTsKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkK
LSAgICBpZiAoIWV2ZW50LmFyZWEoKS5pc0VtcHR5KCkpCi0gICAgICAgIGFkanVzdEdlc3R1cmVQ
b3NpdGlvbihldmVudCwgYWRqdXN0ZWRQb2ludCk7CisgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9u
KGV2ZW50LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgogICAgIFBsYXRmb3JtTW91c2VFdmVudCBt
b3VzZUV2ZW50KGFkanVzdGVkUG9pbnQsIGV2ZW50Lmdsb2JhbFBvc2l0aW9uKCksIFJpZ2h0QnV0
dG9uLCBldmVudFR5cGUsIDEsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBXVEY6OmN1cnJl
bnRUaW1lKCkpOwogICAgIC8vIFRvIHNpbXVsYXRlIHJpZ2h0LWNsaWNrIGJlaGF2aW9yLCB3ZSBz
ZW5kIGEgcmlnaHQgbW91c2UgZG93biBhbmQgdGhlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9FdmVudEhhbmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmgKaW5kZXggNDI0MTU3MzA0ZTYzYzRkNTFmZWQ3Y2ViN2FlNThiYjc0NjFmZGJhMy4uZmIwZDVi
NTFhYWVkNGMyYmIzNzUxNDAwZjU5MGVhOWYwY2VkZmEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50
SGFuZGxlci5oCkBAIC0xNzYsNiArMTc2LDggQEAgcHVibGljOgogI2VuZGlmCiAKICNpZiBFTkFC
TEUoVE9VQ0hfQURKVVNUTUVOVCkKKyAgICBib29sIHRvdWNoQWRqdXN0bWVudEVuYWJsZWQoY29u
c3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmKTsKKwogICAgIGJvb2wgYmVzdENsaWNrYWJsZU5vZGVG
b3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwgY29uc3QgSW50U2l6ZSYg
dG91Y2hSYWRpdXMsIEludFBvaW50JiB0YXJnZXRQb2ludCwgTm9kZSomIHRhcmdldE5vZGUpOwog
ICAgIGJvb2wgYmVzdENvbnRleHRNZW51Tm9kZUZvclRvdWNoUG9pbnQoY29uc3QgSW50UG9pbnQm
IHRvdWNoQ2VudGVyLCBjb25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywgSW50UG9pbnQmIHRhcmdl
dFBvaW50LCBOb2RlKiYgdGFyZ2V0Tm9kZSk7CiAgICAgYm9vbCBiZXN0Wm9vbWFibGVBcmVhRm9y
VG91Y2hQb2ludChjb25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIsIGNvbnN0IEludFNpemUmIHRv
dWNoUmFkaXVzLCBJbnRSZWN0JiB0YXJnZXRBcmVhLCBOb2RlKiYgdGFyZ2V0Tm9kZSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvU2V0dGluZ3MuY3BwCmluZGV4IDkzNzhjNDhkZTkwZTFhMmM3NmI1OGY1YWUzODk1NDlh
OTFmODQwNGIuLjcyMTkwNDc4MTZiMDk4NjAwYzdmMWEyOWFlOGE2ZGZiZmVlNTRlNmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvU2V0dGluZ3MuY3BwCkBAIC0xODYsNiArMTg2LDkgQEAgU2V0dGluZ3M6OlNldHRp
bmdzKFBhZ2UqIHBhZ2UpCiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICAsIG1fdG91Y2hF
dmVudEVtdWxhdGlvbkVuYWJsZWQoZmFsc2UpCiAjZW5kaWYKKyNpZiBFTkFCTEUoVE9VQ0hfQURK
VVNUTUVOVCkKKyAgICAsIG1fdG91Y2hBZGp1c3RtZW50RW5hYmxlZCh0cnVlKQorI2VuZGlmCiAg
ICAgLCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCiAgICAgLCBt
X3NldEltYWdlTG9hZGluZ1NldHRpbmdzVGltZXIodGhpcywgJlNldHRpbmdzOjppbWFnZUxvYWRp
bmdTZXR0aW5nc1RpbWVyRmlyZWQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKaW5kZXggYTg2NTU1
MDQ2ZWNkNDhkMmZjZGExMjBmNjNhYjNhYTU4YjgxOWI2ZC4uZmM1YWEzYzQyMmJkOWM0NTgxNmIy
Mjk0ZmI2NDFlNWE5MmY0MTI4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaApAQCAtMjg5LDYgKzI4
OSwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGJvb2wgaXNUb3VjaEV2ZW50RW11
bGF0aW9uRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdG91Y2hFdmVudEVtdWxhdGlvbkVuYWJs
ZWQ7IH0KICNlbmRpZgogCisjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1FTlQpCisgICAgICAgIHZv
aWQgc2V0RW5hYmxlVG91Y2hBZGp1c3RtZW50KGJvb2wgZmxhZykgeyBtX3RvdWNoQWRqdXN0bWVu
dEVuYWJsZWQgPSBmbGFnOyB9CisgICAgICAgIGJvb2wgdG91Y2hBZGp1c3RtZW50RW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIG1fdG91Y2hBZGp1c3RtZW50RW5hYmxlZDsgfQorI2VuZGlmCisKICAg
ICAgICAgdm9pZCBzZXRTdG9yYWdlQmxvY2tpbmdQb2xpY3koU2VjdXJpdHlPcmlnaW46OlN0b3Jh
Z2VCbG9ja2luZ1BvbGljeSk7CiAgICAgICAgIFNlY3VyaXR5T3JpZ2luOjpTdG9yYWdlQmxvY2tp
bmdQb2xpY3kgc3RvcmFnZUJsb2NraW5nUG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9zdG9yYWdl
QmxvY2tpbmdQb2xpY3k7IH0KIApAQCAtMzY5LDYgKzM3NCwxMCBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKICAgICAgICAgYm9vbCBtX3RvdWNoRXZlbnRF
bXVsYXRpb25FbmFibGVkIDogMTsKICNlbmRpZgorCisjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1F
TlQpCisgICAgICAgIGJvb2wgbV90b3VjaEFkanVzdG1lbnRFbmFibGVkIDogMTsKKyNlbmRpZgog
ICAgICAgICBib29sIG1fc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCA6IDE7CiAK
ICAgICAgICAgVGltZXI8U2V0dGluZ3M+IG1fc2V0SW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1lcjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCmluZGV4IDdkNzA4
NjE0ZjUwOTQ2ZjU4ZmNlNjRmNTYwN2UxZjk0MjhmMDM5OWEuLjJkMzU2ZmE2YTEwZGQ4ZTc3NGFh
YzAyZjBkOGQ4NGVjYTQ2Mjg4YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYlNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViU2V0dGluZ3MuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lk
IHNldEVkaXRhYmxlTGlua0JlaGF2aW9yTmV2ZXJMaXZlKCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRFZGl0aW5nQmVoYXZpb3IoRWRpdGluZ0JlaGF2aW9yKSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIHNldEVuYWJsZVNjcm9sbEFuaW1hdG9yKGJvb2wpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQg
c2V0RW5hYmxlVG91Y2hBZGp1c3RtZW50KGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0
RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2wpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0Q1NTU3RpY2t5UG9zaXRpb25FbmFibGVkKGJvb2wpID0gMDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCmluZGV4IDY0
NmRjNTNmOGMwZTE5YWJkZGJiOTA5MzM1MzVjMTAxYjkwODM4ZjIuLjU0MWJiNWIwMWI3YWM4N2Fk
NGU5NGE0Zjc0MDZjMGVjYjI0OTRmZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViU2V0dGluZ3NJbXBsLmNwcApAQCAtNjEwLDYgKzYxMCwxNSBAQCB2b2lkIFdlYlNldHRp
bmdzSW1wbDo6c2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCBlbmFibGVkKQogI2VuZGlmCiB9
CiAKK3ZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFbmFibGVUb3VjaEFkanVzdG1lbnQoYm9vbCBl
bmFibGVkKQoreworI2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5UKQorICAgIG1fc2V0dGluZ3Mt
PnNldEVuYWJsZVRvdWNoQWRqdXN0bWVudChlbmFibGVkKTsKKyNlbHNlCisgICAgVU5VU0VEX1BB
UkFNKGVuYWJsZWQpOworI2VuZGlmCit9CisKIGJvb2wgV2ViU2V0dGluZ3NJbXBsOjpzY3JvbGxB
bmltYXRvckVuYWJsZWQoKSBjb25zdAogewogI2lmIEVOQUJMRShTTU9PVEhfU0NST0xMSU5HKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAppbmRleCA0MmYy
YWI0OTY3YmRiNTE1ODg4YjFiODkwNTE5MzVjYjZlYzdmNzVjLi45ODUyMGVhZGZkMjY4NTRiYmVi
YzYzODc3YmU5OWMzODdlOTY4ZDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJTZXR0aW5nc0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJTZXR0aW5nc0ltcGwuaApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIHNldEVkaXRhYmxlTGlua0JlaGF2aW9yTmV2ZXJMaXZlKCk7CiAgICAgdmlydHVhbCB2b2lk
IHNldEVkaXRpbmdCZWhhdmlvcihFZGl0aW5nQmVoYXZpb3IpOwogICAgIHZpcnR1YWwgdm9pZCBz
ZXRFbmFibGVTY3JvbGxBbmltYXRvcihib29sKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxl
VG91Y2hBZGp1c3RtZW50KGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxD
U1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmlt
ZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q1NT
U3RpY2t5UG9zaXRpb25FbmFibGVkKGJvb2wpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175256</attachid>
            <date>2012-11-20 11:58:10 -0800</date>
            <delta_ts>2012-11-20 13:25:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102534-20121120145559.patch</filename>
            <type>text/plain</type>
            <size>10191</size>
            <attacher name="Kevin Ellis">kevers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWJjZDZlODk3MDI5ZjQ3
NTc1NTc2ZTI4ZGJkYmEzYTA5NjE3MDYxYS4uYTgzYjEwMThhMGQ5ZjMwMjYzZGE1MmM5OTFjZTZi
MmMwZWEwZWI2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTExLTIwICBLZXZp
biBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
ZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc2V0dGluZyBm
b3IgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFkanVzdG1lbnQuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIHJlcXVpcmVkLgorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQpOiBNb3Zl
IGVuYWJsZSBjaGVjayB0byBhZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVUYXApOiBNb3ZlIGVuYWJsZSBjaGVjayB0byBh
ZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnNo
b3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KTogQ2hlY2tzIGlmIHRvdWNoIGFkanVzdG1lbnQgaXMg
ZW5hYmxlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5k
bGVyOjphZGp1c3RHZXN0dXJlUG9zaXRpb24pOiAgQWRkIGNoZWNrIGZvciBlbmFibGluZyBvZiB0
b3VjaCBhZGp1c3RtZW50LgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpzZW5kQ29u
dGV4dE1lbnVFdmVudEZvckdlc3R1cmUpOiBNb3ZlIGVuYWJsZSBjaGVjayB0byBhZGp1c3RHZXN0
dXJlUG9zaXRpb24uCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDoKKyAgICAgICAgKEV2
ZW50SGFuZGxlcik6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaDoKKyAg
ICAgICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRFbmFibGVU
b3VjaEFkanVzdG1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OnRvdWNoQWRqdXN0
bWVudEVuYWJsZWQpOgorCiAyMDEyLTExLTIwICBLZWlzaGkgSGF0dG9yaSAgPGtlaXNoaUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFdlZWsgcGlja2VyIHdpZHRoIGlzIHRvbyBzbWFsbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwppbmRleCA5NmZkMWVhOTczYTdmN2M5OTY0ODM4NTJlZTMzNWFiYzc3
MTY0NzZkLi41ZGViMWU2MTQ5ZDQ5ODllNTBkYTg1NDdkYTgzZWRjZTYwZjU5ZWI3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTIwICBLZXZpbiBF
bGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQgZmxh
ZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc2V0dGluZyBmb3Ig
ZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFkanVzdG1lbnQuCisKKyAgICAgICAgKiBwdWJs
aWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBsOjpzZXRFbmFibGVUb3VjaEFkanVzdG1lbnQp
OgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6Cisg
ICAgICAgIChXZWJTZXR0aW5nc0ltcGwpOgorCiAyMDEyLTExLTE5ICBZdXJ5IFNlbWlraGF0c2t5
ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIEZpeCBDaHJvbWl1
bSBXaW4gY29tcGlsYXRpb24gYWZ0ZXIgcjEzNTE5Ni4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5k
bGVyLmNwcAppbmRleCAzYTc3MzlmYmUyYTg0M2FmZjI2ZTc4OWY3NTRiM2Y4NzIzNGQ4YWI0Li5m
MWM1ZTNjYzcwMmRhZDg5MzJkMjY1NTk2MTYyZjU5YjZmNzQ1MDJjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9FdmVudEhhbmRsZXIuY3BwCkBAIC0yNTMxLDggKzI1MzEsNyBAQCBib29sIEV2ZW50SGFuZGxl
cjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJl
RXZlbnQpCiAgICAgSGl0VGVzdFJlcXVlc3Q6OkhpdFRlc3RSZXF1ZXN0VHlwZSBoaXRUeXBlID0g
SGl0VGVzdFJlcXVlc3Q6OlRvdWNoRXZlbnQ7CiAgICAgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkg
PT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERvd24pIHsKICNpZiBFTkFCTEUoVE9VQ0hfQURK
VVNUTUVOVCkKLSAgICAgICAgaWYgKCFnZXN0dXJlRXZlbnQuYXJlYSgpLmlzRW1wdHkoKSkKLSAg
ICAgICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlvbihnZXN0dXJlRXZlbnQsIGFkanVzdGVkUG9p
bnQpOworICAgICAgICBhZGp1c3RHZXN0dXJlUG9zaXRpb24oZ2VzdHVyZUV2ZW50LCBhZGp1c3Rl
ZFBvaW50KTsKICNlbmRpZgogICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpBY3Rp
dmU7CiAgICAgfSBlbHNlIGlmIChnZXN0dXJlRXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6
Okdlc3R1cmVUYXAgfHwgZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0
dXJlVGFwRG93bkNhbmNlbCkKQEAgLTI2MTcsOCArMjYxNiw3IEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVHZXN0dXJlVGFwKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZl
bnQpCiAgICAgLy8gRklYTUU6IFJlZmFjdG9yIHRoaXMgY29kZSB0byBub3QgaGl0IHRlc3QgbXVs
dGlwbGUgdGltZXMuIFdlIHVzZSB0aGUgYWRqdXN0ZWQgcG9zaXRpb24gdG8gZW5zdXJlIHRoYXQg
dGhlIGNvcnJlY3Qgbm9kZSBpcyB0YXJnZXRlZCBieSB0aGUgbGF0ZXIgcmVkdW5kYW50IGhpdCB0
ZXN0cy4KICAgICBJbnRQb2ludCBhZGp1c3RlZFBvaW50ID0gZ2VzdHVyZUV2ZW50LnBvc2l0aW9u
KCk7CiAjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1FTlQpCi0gICAgaWYgKCFnZXN0dXJlRXZlbnQu
YXJlYSgpLmlzRW1wdHkoKSkKLSAgICAgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVF
dmVudCwgYWRqdXN0ZWRQb2ludCk7CisgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVF
dmVudCwgYWRqdXN0ZWRQb2ludCk7CiAjZW5kaWYKIAogICAgIFBsYXRmb3JtTW91c2VFdmVudCBm
YWtlTW91c2VNb3ZlKGFkanVzdGVkUG9pbnQsIGdlc3R1cmVFdmVudC5nbG9iYWxQb3NpdGlvbigp
LApAQCAtMjcwMCw2ICsyNjk4LDE0IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJl
U2Nyb2xsQ29yZShjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2CiAjZW5kaWYK
IAogI2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5UKQorYm9vbCBFdmVudEhhbmRsZXI6OnNob3Vs
ZEFwcGx5VG91Y2hBZGp1c3RtZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBldmVudCkK
K3sKKyAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3MoKSAmJiAhbV9mcmFtZS0+c2V0dGluZ3MoKS0+
dG91Y2hBZGp1c3RtZW50RW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0
dXJuICFldmVudC5hcmVhKCkuaXNFbXB0eSgpOworfQorCisKIGJvb2wgRXZlbnRIYW5kbGVyOjpi
ZXN0Q2xpY2thYmxlTm9kZUZvclRvdWNoUG9pbnQoY29uc3QgSW50UG9pbnQmIHRvdWNoQ2VudGVy
LCBjb25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywgSW50UG9pbnQmIHRhcmdldFBvaW50LCBOb2Rl
KiYgdGFyZ2V0Tm9kZSkKIHsKICAgICBIaXRUZXN0UmVxdWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBl
IGhpdFR5cGUgPSBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHkgfCBIaXRUZXN0UmVxdWVzdDo6QWN0
aXZlOwpAQCAtMjc0Myw2ICsyNzQ5LDkgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmJlc3Rab29tYWJs
ZUFyZWFGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwgY28KIAogYm9v
bCBFdmVudEhhbmRsZXI6OmFkanVzdEdlc3R1cmVQb3NpdGlvbihjb25zdCBQbGF0Zm9ybUdlc3R1
cmVFdmVudCYgZ2VzdHVyZUV2ZW50LCBJbnRQb2ludCYgYWRqdXN0ZWRQb2ludCkKIHsKKyAgICBp
ZiAoIXNob3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KGdlc3R1cmVFdmVudCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKwogICAgIE5vZGUqIHRhcmdldE5vZGUgPSAwOwogICAgIHN3aXRjaCAoZ2Vz
dHVyZUV2ZW50LnR5cGUoKSkgewogICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcDoK
QEAgLTI4NzMsOCArMjg4Miw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVF
dmVudEZvckdlc3R1cmUoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGV2CiAKICAgICBJbnRQ
b2ludCBhZGp1c3RlZFBvaW50ID0gZXZlbnQucG9zaXRpb24oKTsKICNpZiBFTkFCTEUoVE9VQ0hf
QURKVVNUTUVOVCkKLSAgICBpZiAoIWV2ZW50LmFyZWEoKS5pc0VtcHR5KCkpCi0gICAgICAgIGFk
anVzdEdlc3R1cmVQb3NpdGlvbihldmVudCwgYWRqdXN0ZWRQb2ludCk7CisgICAgYWRqdXN0R2Vz
dHVyZVBvc2l0aW9uKGV2ZW50LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgogICAgIFBsYXRmb3Jt
TW91c2VFdmVudCBtb3VzZUV2ZW50KGFkanVzdGVkUG9pbnQsIGV2ZW50Lmdsb2JhbFBvc2l0aW9u
KCksIFJpZ2h0QnV0dG9uLCBldmVudFR5cGUsIDEsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNl
LCBXVEY6OmN1cnJlbnRUaW1lKCkpOwogICAgIC8vIFRvIHNpbXVsYXRlIHJpZ2h0LWNsaWNrIGJl
aGF2aW9yLCB3ZSBzZW5kIGEgcmlnaHQgbW91c2UgZG93biBhbmQgdGhlbgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RXZlbnRIYW5kbGVyLmgKaW5kZXggNDI0MTU3MzA0ZTYzYzRkNTFmZWQ3Y2ViN2FlNThiYjc0NjFm
ZGJhMy4uNzJjMTJhNTlhYzQ3ZTZjZWRiM2E1YWUzYWMyZTQ0ZGU5NDA4MjdjMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0xNzYsNiArMTc2LDggQEAgcHVibGljOgogI2VuZGlm
CiAKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKKyAgICBib29sIHNob3VsZEFwcGx5VG91
Y2hBZGp1c3RtZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50Jik7CisKICAgICBib29sIGJl
c3RDbGlja2FibGVOb2RlRm9yVG91Y2hQb2ludChjb25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIs
IGNvbnN0IEludFNpemUmIHRvdWNoUmFkaXVzLCBJbnRQb2ludCYgdGFyZ2V0UG9pbnQsIE5vZGUq
JiB0YXJnZXROb2RlKTsKICAgICBib29sIGJlc3RDb250ZXh0TWVudU5vZGVGb3JUb3VjaFBvaW50
KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwgY29uc3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMs
IEludFBvaW50JiB0YXJnZXRQb2ludCwgTm9kZSomIHRhcmdldE5vZGUpOwogICAgIGJvb2wgYmVz
dFpvb21hYmxlQXJlYUZvclRvdWNoUG9pbnQoY29uc3QgSW50UG9pbnQmIHRvdWNoQ2VudGVyLCBj
b25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywgSW50UmVjdCYgdGFyZ2V0QXJlYSwgTm9kZSomIHRh
cmdldE5vZGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAppbmRleCA5Mzc4YzQ4ZGU5MGUxYTJj
NzZiNThmNWFlMzg5NTQ5YTkxZjg0MDRiLi43MjE5MDQ3ODE2YjA5ODYwMGM3ZjFhMjlhZThhNmRm
YmZlZTU0ZTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcApAQCAtMTg2LDYgKzE4Niw5IEBA
IFNldHRpbmdzOjpTZXR0aW5ncyhQYWdlKiBwYWdlKQogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMp
CiAgICAgLCBtX3RvdWNoRXZlbnRFbXVsYXRpb25FbmFibGVkKGZhbHNlKQogI2VuZGlmCisjaWYg
RU5BQkxFKFRPVUNIX0FESlVTVE1FTlQpCisgICAgLCBtX3RvdWNoQWRqdXN0bWVudEVuYWJsZWQo
dHJ1ZSkKKyNlbmRpZgogICAgICwgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVk
KGZhbHNlKQogICAgICwgbV9zZXRJbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyKHRoaXMsICZTZXR0
aW5nczo6aW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1lckZpcmVkKQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy5oCmluZGV4IGE4NjU1NTA0NmVjZDQ4ZDJmY2RhMTIwZjYzYWIzYWE1OGI4MTliNmQuLmZjNWFh
M2M0MjJiZDljNDU4MTZiMjI5NGZiNjQxZTVhOTJmNDEyODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdz
LmgKQEAgLTI4OSw2ICsyODksMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBib29s
IGlzVG91Y2hFdmVudEVtdWxhdGlvbkVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3RvdWNoRXZl
bnRFbXVsYXRpb25FbmFibGVkOyB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShUT1VDSF9BREpVU1RN
RU5UKQorICAgICAgICB2b2lkIHNldEVuYWJsZVRvdWNoQWRqdXN0bWVudChib29sIGZsYWcpIHsg
bV90b3VjaEFkanVzdG1lbnRFbmFibGVkID0gZmxhZzsgfQorICAgICAgICBib29sIHRvdWNoQWRq
dXN0bWVudEVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3RvdWNoQWRqdXN0bWVudEVuYWJsZWQ7
IH0KKyNlbmRpZgorCiAgICAgICAgIHZvaWQgc2V0U3RvcmFnZUJsb2NraW5nUG9saWN5KFNlY3Vy
aXR5T3JpZ2luOjpTdG9yYWdlQmxvY2tpbmdQb2xpY3kpOwogICAgICAgICBTZWN1cml0eU9yaWdp
bjo6U3RvcmFnZUJsb2NraW5nUG9saWN5IHN0b3JhZ2VCbG9ja2luZ1BvbGljeSgpIGNvbnN0IHsg
cmV0dXJuIG1fc3RvcmFnZUJsb2NraW5nUG9saWN5OyB9CiAKQEAgLTM2OSw2ICszNzQsMTAgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCiAgICAgICAgIGJv
b2wgbV90b3VjaEV2ZW50RW11bGF0aW9uRW5hYmxlZCA6IDE7CiAjZW5kaWYKKworI2lmIEVOQUJM
RShUT1VDSF9BREpVU1RNRU5UKQorICAgICAgICBib29sIG1fdG91Y2hBZGp1c3RtZW50RW5hYmxl
ZCA6IDE7CisjZW5kaWYKICAgICAgICAgYm9vbCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2lu
Z0VuYWJsZWQgOiAxOwogCiAgICAgICAgIFRpbWVyPFNldHRpbmdzPiBtX3NldEltYWdlTG9hZGlu
Z1NldHRpbmdzVGltZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJTZXR0aW5ncy5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGlu
Z3MuaAppbmRleCA3ZDcwODYxNGY1MDk0NmY1OGZjZTY0ZjU2MDdlMWY5NDI4ZjAzOTlhLi4yZDM1
NmZhNmExMGRkOGU3NzRhYWMwMmYwZDhkODRlY2E0NjI4OGI0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKQEAgLTk3LDYgKzk3LDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBzZXRFZGl0YWJsZUxpbmtCZWhhdmlvck5ldmVyTGl2ZSgpID0gMDsK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0RWRpdGluZ0JlaGF2aW9yKEVkaXRpbmdCZWhhdmlvcikgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmFibGVTY3JvbGxBbmltYXRvcihib29sKSA9IDA7Cisg
ICAgdmlydHVhbCB2b2lkIHNldEVuYWJsZVRvdWNoQWRqdXN0bWVudChib29sKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0N1c3RvbUZpbHRlckVuYWJsZWQoYm9vbCkg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxl
ZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldENTU1N0aWNreVBvc2l0aW9uRW5hYmxl
ZChib29sKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJT
ZXR0aW5nc0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJ
bXBsLmNwcAppbmRleCA2NDZkYzUzZjhjMGUxOWFiZGRiYjkwOTMzNTM1YzEwMWI5MDgzOGYyLi41
NDFiYjViMDFiN2FjODdhZDRlOTRhNGY3NDA2YzBlY2IyNDk0ZmZjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKQEAgLTYxMCw2ICs2MTAsMTUg
QEAgdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEVuYWJsZVNjcm9sbEFuaW1hdG9yKGJvb2wgZW5h
YmxlZCkKICNlbmRpZgogfQogCit2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0RW5hYmxlVG91Y2hB
ZGp1c3RtZW50KGJvb2wgZW5hYmxlZCkKK3sKKyNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkK
KyAgICBtX3NldHRpbmdzLT5zZXRFbmFibGVUb3VjaEFkanVzdG1lbnQoZW5hYmxlZCk7CisjZWxz
ZQorICAgIFVOVVNFRF9QQVJBTShlbmFibGVkKTsKKyNlbmRpZgorfQorCiBib29sIFdlYlNldHRp
bmdzSW1wbDo6c2Nyb2xsQW5pbWF0b3JFbmFibGVkKCkgY29uc3QKIHsKICNpZiBFTkFCTEUoU01P
T1RIX1NDUk9MTElORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlNldHRpbmdzSW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJ
bXBsLmgKaW5kZXggNDJmMmFiNDk2N2JkYjUxNTg4OGIxYjg5MDUxOTM1Y2I2ZWM3Zjc1Yy4uOTg1
MjBlYWRmZDI2ODU0YmJlYmM2Mzg3N2JlOTljMzg3ZTk2OGQ5NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKQEAgLTg5LDYgKzg5LDcgQEAgcHVibGlj
OgogICAgIHZpcnR1YWwgdm9pZCBzZXRFZGl0YWJsZUxpbmtCZWhhdmlvck5ldmVyTGl2ZSgpOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3IoRWRpdGluZ0JlaGF2aW9yKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCk7CisgICAgdmlydHVh
bCB2b2lkIHNldEVuYWJsZVRvdWNoQWRqdXN0bWVudChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFs
IHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTR3JpZExheW91dEVuYWJsZWQoYm9vbCk7CiAgICAgdmly
dHVhbCB2b2lkIHNldENTU1N0aWNreVBvc2l0aW9uRW5hYmxlZChib29sKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175267</attachid>
            <date>2012-11-20 13:25:34 -0800</date>
            <delta_ts>2012-11-20 14:04:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102534-20121120162322.patch</filename>
            <type>text/plain</type>
            <size>8810</size>
            <attacher name="Kevin Ellis">kevers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWJjZDZlODk3MDI5ZjQ3
NTc1NTc2ZTI4ZGJkYmEzYTA5NjE3MDYxYS4uMzhkMjEzZTY5NGIxMzYzYmZmNTQ4YWQ2YTk2ZWYz
ZjVjODZiNGUwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEyLTExLTIwICBLZXZp
biBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
ZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc2V0dGluZyBm
b3IgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFkanVzdG1lbnQuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIHJlcXVpcmVkLgorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQpOiBNb3Zl
IGVuYWJsZSBjaGVjayB0byBhZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVUYXApOiBNb3ZlIGVuYWJsZSBjaGVjayB0byBh
ZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnNo
b3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KTogQ2hlY2tzIGlmIHRvdWNoIGFkanVzdG1lbnQgaXMg
ZW5hYmxlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5k
bGVyOjphZGp1c3RHZXN0dXJlUG9zaXRpb24pOiAgQWRkIGNoZWNrIGZvciBlbmFibGluZyBvZiB0
b3VjaCBhZGp1c3RtZW50LgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpzZW5kQ29u
dGV4dE1lbnVFdmVudEZvckdlc3R1cmUpOiBNb3ZlIGVuYWJsZSBjaGVjayB0byBhZGp1c3RHZXN0
dXJlUG9zaXRpb24uCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDoKKyAgICAgICAgKEV2
ZW50SGFuZGxlcik6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5pbgorCiAyMDEyLTExLTIwICBL
ZWlzaGkgSGF0dG9yaSAgPGtlaXNoaUB3ZWJraXQub3JnPgogCiAgICAgICAgIFdlZWsgcGlja2Vy
IHdpZHRoIGlzIHRvbyBzbWFsbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCA5NmZkMWVh
OTczYTdmN2M5OTY0ODM4NTJlZTMzNWFiYzc3MTY0NzZkLi41ZGViMWU2MTQ5ZDQ5ODllNTBkYTg1
NDdkYTgzZWRjZTYwZjU5ZWI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE5IEBACisyMDEyLTExLTIwICBLZXZpbiBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgW2Nocm9taXVtXSBBZGQgZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1
c3RtZW50IGF0IHJ1bnRpbWUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDI1MzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBBZGQgc2V0dGluZyBmb3IgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFk
anVzdG1lbnQuCisKKyAgICAgICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBz
cmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBs
OjpzZXRFbmFibGVUb3VjaEFkanVzdG1lbnQpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAg
KiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChXZWJTZXR0aW5nc0ltcGwpOgorCiAy
MDEyLTExLTE5ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQuIEZpeCBDaHJvbWl1bSBXaW4gY29tcGlsYXRpb24gYWZ0ZXIgcjEzNTE5
Ni4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCAzYTc3MzlmYmUyYTg0M2Fm
ZjI2ZTc4OWY3NTRiM2Y4NzIzNGQ4YWI0Li5mMWM1ZTNjYzcwMmRhZDg5MzJkMjY1NTk2MTYyZjU5
YjZmNzQ1MDJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCkBAIC0yNTMxLDgg
KzI1MzEsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBs
YXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgSGl0VGVzdFJlcXVlc3Q6Okhp
dFRlc3RSZXF1ZXN0VHlwZSBoaXRUeXBlID0gSGl0VGVzdFJlcXVlc3Q6OlRvdWNoRXZlbnQ7CiAg
ICAgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERv
d24pIHsKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKLSAgICAgICAgaWYgKCFnZXN0dXJl
RXZlbnQuYXJlYSgpLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlv
bihnZXN0dXJlRXZlbnQsIGFkanVzdGVkUG9pbnQpOworICAgICAgICBhZGp1c3RHZXN0dXJlUG9z
aXRpb24oZ2VzdHVyZUV2ZW50LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgogICAgICAgICBoaXRU
eXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpBY3RpdmU7CiAgICAgfSBlbHNlIGlmIChnZXN0dXJlRXZl
bnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXAgfHwgZ2VzdHVyZUV2ZW50LnR5
cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bkNhbmNlbCkKQEAgLTI2MTcsOCAr
MjYxNiw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlVGFwKGNvbnN0IFBsYXRm
b3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgLy8gRklYTUU6IFJlZmFjdG9yIHRo
aXMgY29kZSB0byBub3QgaGl0IHRlc3QgbXVsdGlwbGUgdGltZXMuIFdlIHVzZSB0aGUgYWRqdXN0
ZWQgcG9zaXRpb24gdG8gZW5zdXJlIHRoYXQgdGhlIGNvcnJlY3Qgbm9kZSBpcyB0YXJnZXRlZCBi
eSB0aGUgbGF0ZXIgcmVkdW5kYW50IGhpdCB0ZXN0cy4KICAgICBJbnRQb2ludCBhZGp1c3RlZFBv
aW50ID0gZ2VzdHVyZUV2ZW50LnBvc2l0aW9uKCk7CiAjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1F
TlQpCi0gICAgaWYgKCFnZXN0dXJlRXZlbnQuYXJlYSgpLmlzRW1wdHkoKSkKLSAgICAgICAgYWRq
dXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVFdmVudCwgYWRqdXN0ZWRQb2ludCk7CisgICAgYWRq
dXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVFdmVudCwgYWRqdXN0ZWRQb2ludCk7CiAjZW5kaWYK
IAogICAgIFBsYXRmb3JtTW91c2VFdmVudCBmYWtlTW91c2VNb3ZlKGFkanVzdGVkUG9pbnQsIGdl
c3R1cmVFdmVudC5nbG9iYWxQb3NpdGlvbigpLApAQCAtMjcwMCw2ICsyNjk4LDE0IEBAIGJvb2wg
RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlU2Nyb2xsQ29yZShjb25zdCBQbGF0Zm9ybUdlc3R1
cmVFdmVudCYgZ2VzdHVyZUV2CiAjZW5kaWYKIAogI2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5U
KQorYm9vbCBFdmVudEhhbmRsZXI6OnNob3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KGNvbnN0IFBs
YXRmb3JtR2VzdHVyZUV2ZW50JiBldmVudCkKK3sKKyAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3Mo
KSAmJiAhbV9mcmFtZS0+c2V0dGluZ3MoKS0+dG91Y2hBZGp1c3RtZW50RW5hYmxlZCgpKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuICFldmVudC5hcmVhKCkuaXNFbXB0eSgpOwor
fQorCisKIGJvb2wgRXZlbnRIYW5kbGVyOjpiZXN0Q2xpY2thYmxlTm9kZUZvclRvdWNoUG9pbnQo
Y29uc3QgSW50UG9pbnQmIHRvdWNoQ2VudGVyLCBjb25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywg
SW50UG9pbnQmIHRhcmdldFBvaW50LCBOb2RlKiYgdGFyZ2V0Tm9kZSkKIHsKICAgICBIaXRUZXN0
UmVxdWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBlIGhpdFR5cGUgPSBIaXRUZXN0UmVxdWVzdDo6UmVh
ZE9ubHkgfCBIaXRUZXN0UmVxdWVzdDo6QWN0aXZlOwpAQCAtMjc0Myw2ICsyNzQ5LDkgQEAgYm9v
bCBFdmVudEhhbmRsZXI6OmJlc3Rab29tYWJsZUFyZWFGb3JUb3VjaFBvaW50KGNvbnN0IEludFBv
aW50JiB0b3VjaENlbnRlciwgY28KIAogYm9vbCBFdmVudEhhbmRsZXI6OmFkanVzdEdlc3R1cmVQ
b3NpdGlvbihjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50LCBJbnRQb2lu
dCYgYWRqdXN0ZWRQb2ludCkKIHsKKyAgICBpZiAoIXNob3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50
KGdlc3R1cmVFdmVudCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIE5vZGUqIHRhcmdl
dE5vZGUgPSAwOwogICAgIHN3aXRjaCAoZ2VzdHVyZUV2ZW50LnR5cGUoKSkgewogICAgIGNhc2Ug
UGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcDoKQEAgLTI4NzMsOCArMjg4Miw3IEBAIGJvb2wgRXZl
bnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudEZvckdlc3R1cmUoY29uc3QgUGxhdGZvcm1H
ZXN0dXJlRXZlbnQmIGV2CiAKICAgICBJbnRQb2ludCBhZGp1c3RlZFBvaW50ID0gZXZlbnQucG9z
aXRpb24oKTsKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKLSAgICBpZiAoIWV2ZW50LmFy
ZWEoKS5pc0VtcHR5KCkpCi0gICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlvbihldmVudCwgYWRq
dXN0ZWRQb2ludCk7CisgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGV2ZW50LCBhZGp1c3RlZFBv
aW50KTsKICNlbmRpZgogICAgIFBsYXRmb3JtTW91c2VFdmVudCBtb3VzZUV2ZW50KGFkanVzdGVk
UG9pbnQsIGV2ZW50Lmdsb2JhbFBvc2l0aW9uKCksIFJpZ2h0QnV0dG9uLCBldmVudFR5cGUsIDEs
IGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBXVEY6OmN1cnJlbnRUaW1lKCkpOwogICAgIC8v
IFRvIHNpbXVsYXRlIHJpZ2h0LWNsaWNrIGJlaGF2aW9yLCB3ZSBzZW5kIGEgcmlnaHQgbW91c2Ug
ZG93biBhbmQgdGhlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggNDI0MTU3MzA0
ZTYzYzRkNTFmZWQ3Y2ViN2FlNThiYjc0NjFmZGJhMy4uNzJjMTJhNTlhYzQ3ZTZjZWRiM2E1YWUz
YWMyZTQ0ZGU5NDA4MjdjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0xNzYs
NiArMTc2LDggQEAgcHVibGljOgogI2VuZGlmCiAKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVO
VCkKKyAgICBib29sIHNob3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KGNvbnN0IFBsYXRmb3JtR2Vz
dHVyZUV2ZW50Jik7CisKICAgICBib29sIGJlc3RDbGlja2FibGVOb2RlRm9yVG91Y2hQb2ludChj
b25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIsIGNvbnN0IEludFNpemUmIHRvdWNoUmFkaXVzLCBJ
bnRQb2ludCYgdGFyZ2V0UG9pbnQsIE5vZGUqJiB0YXJnZXROb2RlKTsKICAgICBib29sIGJlc3RD
b250ZXh0TWVudU5vZGVGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwg
Y29uc3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFBvaW50JiB0YXJnZXRQb2ludCwgTm9kZSom
IHRhcmdldE5vZGUpOwogICAgIGJvb2wgYmVzdFpvb21hYmxlQXJlYUZvclRvdWNoUG9pbnQoY29u
c3QgSW50UG9pbnQmIHRvdWNoQ2VudGVyLCBjb25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywgSW50
UmVjdCYgdGFyZ2V0QXJlYSwgTm9kZSomIHRhcmdldE5vZGUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbiBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3Mu
aW4KaW5kZXggYzA1OGU4Y2JjYTQxZDA4OGYyYmUwMzc4OWY4ZTU0YWVmZmVlYWM2Ny4uYjY5Njc5
NDMwM2Q0YjI0ZTk4MWFlNGU0OTBlMTU4N2NjMGE1N2I5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdz
LmluCkBAIC0xNDAsNiArMTQwLDcgQEAgd2FudHNCYWxhbmNlZFNldERlZmVyc0xvYWRpbmdCZWhh
dmlvciBpbml0aWFsPWZhbHNlCiByZXF1ZXN0QW5pbWF0aW9uRnJhbWVFbmFibGVkIGluaXRpYWw9
dHJ1ZQogZGV2aWNlU3VwcG9ydHNUb3VjaCBpbml0aWFsPWZhbHNlCiBkZXZpY2VTdXBwb3J0c01v
dXNlIGluaXRpYWw9dHJ1ZQordG91Y2hBZGp1c3RtZW50RW5hYmxlZCBpbml0aWFsPXRydWUKIG5l
ZWRzRGlkRmluaXNoTG9hZE9yZGVyUXVpcmsgaW5pdGlhbD1mYWxzZQogZml4ZWRQb3NpdGlvbkNy
ZWF0ZXNTdGFja2luZ0NvbnRleHQgaW5pdGlhbD1mYWxzZQogc3luY1hIUkluRG9jdW1lbnRzRW5h
YmxlZCBpbml0aWFsPXRydWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVi
bGljL1dlYlNldHRpbmdzLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0
aW5ncy5oCmluZGV4IDdkNzA4NjE0ZjUwOTQ2ZjU4ZmNlNjRmNTYwN2UxZjk0MjhmMDM5OWEuLjJk
MzU2ZmE2YTEwZGQ4ZTc3NGFhYzAyZjBkOGQ4NGVjYTQ2Mjg4YjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIHNldEVkaXRhYmxlTGlua0JlaGF2aW9yTmV2ZXJMaXZlKCkgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3IoRWRpdGluZ0JlaGF2aW9yKSA9
IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEVuYWJsZVNjcm9sbEFuaW1hdG9yKGJvb2wpID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxlVG91Y2hBZGp1c3RtZW50KGJvb2wpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29s
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0dyaWRMYXlvdXRFbmFi
bGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q1NTU3RpY2t5UG9zaXRpb25FbmFi
bGVkKGJvb2wpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlNldHRpbmdzSW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5n
c0ltcGwuY3BwCmluZGV4IDY0NmRjNTNmOGMwZTE5YWJkZGJiOTA5MzM1MzVjMTAxYjkwODM4ZjIu
LjIwZmNjMWI5NjBlMzliZWUwNzM5MTM4YzNiZmNmYmIzYzEyZWU0MWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcApAQCAtNjEwLDYgKzYxMCwx
MSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCBl
bmFibGVkKQogI2VuZGlmCiB9CiAKK3ZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFbmFibGVUb3Vj
aEFkanVzdG1lbnQoYm9vbCBlbmFibGVkKQoreworICAgIG1fc2V0dGluZ3MtPnNldFRvdWNoQWRq
dXN0bWVudEVuYWJsZWQoZW5hYmxlZCk7Cit9CisKIGJvb2wgV2ViU2V0dGluZ3NJbXBsOjpzY3Jv
bGxBbmltYXRvckVuYWJsZWQoKSBjb25zdAogewogI2lmIEVOQUJMRShTTU9PVEhfU0NST0xMSU5H
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBs
LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAppbmRleCA0
MmYyYWI0OTY3YmRiNTE1ODg4YjFiODkwNTE5MzVjYjZlYzdmNzVjLi45ODUyMGVhZGZkMjY4NTRi
YmViYzYzODc3YmU5OWMzODdlOTY4ZDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJTZXR0aW5nc0ltcGwuaApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHNldEVkaXRhYmxlTGlua0JlaGF2aW9yTmV2ZXJMaXZlKCk7CiAgICAgdmlydHVhbCB2
b2lkIHNldEVkaXRpbmdCZWhhdmlvcihFZGl0aW5nQmVoYXZpb3IpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRFbmFibGVTY3JvbGxBbmltYXRvcihib29sKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0RW5h
YmxlVG91Y2hBZGp1c3RtZW50KGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50
YWxDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBl
cmltZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0
Q1NTU3RpY2t5UG9zaXRpb25FbmFibGVkKGJvb2wpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175274</attachid>
            <date>2012-11-20 14:04:57 -0800</date>
            <delta_ts>2013-01-04 00:52:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102534-20121120170244.patch</filename>
            <type>text/plain</type>
            <size>8810</size>
            <attacher name="Kevin Ellis">kevers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWJjZDZlODk3MDI5ZjQ3
NTc1NTc2ZTI4ZGJkYmEzYTA5NjE3MDYxYS4uZDZjZjI2OGRhZGQ5ZmYzZGI1MDFkMmQ4MDU0YjRi
ZThiYThlYzRjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEyLTExLTIwICBLZXZp
biBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
ZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc2V0dGluZyBm
b3IgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFkanVzdG1lbnQuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIHJlcXVpcmVkLgorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQpOiBNb3Zl
IGVuYWJsZSBjaGVjayB0byBhZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVUYXApOiBNb3ZlIGVuYWJsZSBjaGVjayB0byBh
ZGp1c3RHZXN0dXJlUG9zaXRpb24uCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnNo
b3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KTogQ2hlY2tzIGlmIHRvdWNoIGFkanVzdG1lbnQgaXMg
ZW5hYmxlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5k
bGVyOjphZGp1c3RHZXN0dXJlUG9zaXRpb24pOiBBZGQgY2hlY2sgZm9yIGVuYWJsaW5nIG9mIHRv
dWNoIGFkanVzdG1lbnQuCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OnNlbmRDb250
ZXh0TWVudUV2ZW50Rm9yR2VzdHVyZSk6IE1vdmUgZW5hYmxlIGNoZWNrIHRvIGFkanVzdEdlc3R1
cmVQb3NpdGlvbi4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5oOgorICAgICAgICAoRXZl
bnRIYW5kbGVyKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmluOgorCiAyMDEyLTExLTIwICBL
ZWlzaGkgSGF0dG9yaSAgPGtlaXNoaUB3ZWJraXQub3JnPgogCiAgICAgICAgIFdlZWsgcGlja2Vy
IHdpZHRoIGlzIHRvbyBzbWFsbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCA5NmZkMWVh
OTczYTdmN2M5OTY0ODM4NTJlZTMzNWFiYzc3MTY0NzZkLi41ZGViMWU2MTQ5ZDQ5ODllNTBkYTg1
NDdkYTgzZWRjZTYwZjU5ZWI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE5IEBACisyMDEyLTExLTIwICBLZXZpbiBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgW2Nocm9taXVtXSBBZGQgZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1
c3RtZW50IGF0IHJ1bnRpbWUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDI1MzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBBZGQgc2V0dGluZyBmb3IgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFk
anVzdG1lbnQuCisKKyAgICAgICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBz
cmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBs
OjpzZXRFbmFibGVUb3VjaEFkanVzdG1lbnQpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAg
KiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChXZWJTZXR0aW5nc0ltcGwpOgorCiAy
MDEyLTExLTE5ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQuIEZpeCBDaHJvbWl1bSBXaW4gY29tcGlsYXRpb24gYWZ0ZXIgcjEzNTE5
Ni4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCAzYTc3MzlmYmUyYTg0M2Fm
ZjI2ZTc4OWY3NTRiM2Y4NzIzNGQ4YWI0Li5mMWM1ZTNjYzcwMmRhZDg5MzJkMjY1NTk2MTYyZjU5
YjZmNzQ1MDJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCkBAIC0yNTMxLDgg
KzI1MzEsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBs
YXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgSGl0VGVzdFJlcXVlc3Q6Okhp
dFRlc3RSZXF1ZXN0VHlwZSBoaXRUeXBlID0gSGl0VGVzdFJlcXVlc3Q6OlRvdWNoRXZlbnQ7CiAg
ICAgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERv
d24pIHsKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKLSAgICAgICAgaWYgKCFnZXN0dXJl
RXZlbnQuYXJlYSgpLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlv
bihnZXN0dXJlRXZlbnQsIGFkanVzdGVkUG9pbnQpOworICAgICAgICBhZGp1c3RHZXN0dXJlUG9z
aXRpb24oZ2VzdHVyZUV2ZW50LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgogICAgICAgICBoaXRU
eXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpBY3RpdmU7CiAgICAgfSBlbHNlIGlmIChnZXN0dXJlRXZl
bnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXAgfHwgZ2VzdHVyZUV2ZW50LnR5
cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bkNhbmNlbCkKQEAgLTI2MTcsOCAr
MjYxNiw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlVGFwKGNvbnN0IFBsYXRm
b3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgLy8gRklYTUU6IFJlZmFjdG9yIHRo
aXMgY29kZSB0byBub3QgaGl0IHRlc3QgbXVsdGlwbGUgdGltZXMuIFdlIHVzZSB0aGUgYWRqdXN0
ZWQgcG9zaXRpb24gdG8gZW5zdXJlIHRoYXQgdGhlIGNvcnJlY3Qgbm9kZSBpcyB0YXJnZXRlZCBi
eSB0aGUgbGF0ZXIgcmVkdW5kYW50IGhpdCB0ZXN0cy4KICAgICBJbnRQb2ludCBhZGp1c3RlZFBv
aW50ID0gZ2VzdHVyZUV2ZW50LnBvc2l0aW9uKCk7CiAjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1F
TlQpCi0gICAgaWYgKCFnZXN0dXJlRXZlbnQuYXJlYSgpLmlzRW1wdHkoKSkKLSAgICAgICAgYWRq
dXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVFdmVudCwgYWRqdXN0ZWRQb2ludCk7CisgICAgYWRq
dXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVFdmVudCwgYWRqdXN0ZWRQb2ludCk7CiAjZW5kaWYK
IAogICAgIFBsYXRmb3JtTW91c2VFdmVudCBmYWtlTW91c2VNb3ZlKGFkanVzdGVkUG9pbnQsIGdl
c3R1cmVFdmVudC5nbG9iYWxQb3NpdGlvbigpLApAQCAtMjcwMCw2ICsyNjk4LDE0IEBAIGJvb2wg
RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlU2Nyb2xsQ29yZShjb25zdCBQbGF0Zm9ybUdlc3R1
cmVFdmVudCYgZ2VzdHVyZUV2CiAjZW5kaWYKIAogI2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5U
KQorYm9vbCBFdmVudEhhbmRsZXI6OnNob3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KGNvbnN0IFBs
YXRmb3JtR2VzdHVyZUV2ZW50JiBldmVudCkKK3sKKyAgICBpZiAobV9mcmFtZS0+c2V0dGluZ3Mo
KSAmJiAhbV9mcmFtZS0+c2V0dGluZ3MoKS0+dG91Y2hBZGp1c3RtZW50RW5hYmxlZCgpKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuICFldmVudC5hcmVhKCkuaXNFbXB0eSgpOwor
fQorCisKIGJvb2wgRXZlbnRIYW5kbGVyOjpiZXN0Q2xpY2thYmxlTm9kZUZvclRvdWNoUG9pbnQo
Y29uc3QgSW50UG9pbnQmIHRvdWNoQ2VudGVyLCBjb25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywg
SW50UG9pbnQmIHRhcmdldFBvaW50LCBOb2RlKiYgdGFyZ2V0Tm9kZSkKIHsKICAgICBIaXRUZXN0
UmVxdWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBlIGhpdFR5cGUgPSBIaXRUZXN0UmVxdWVzdDo6UmVh
ZE9ubHkgfCBIaXRUZXN0UmVxdWVzdDo6QWN0aXZlOwpAQCAtMjc0Myw2ICsyNzQ5LDkgQEAgYm9v
bCBFdmVudEhhbmRsZXI6OmJlc3Rab29tYWJsZUFyZWFGb3JUb3VjaFBvaW50KGNvbnN0IEludFBv
aW50JiB0b3VjaENlbnRlciwgY28KIAogYm9vbCBFdmVudEhhbmRsZXI6OmFkanVzdEdlc3R1cmVQ
b3NpdGlvbihjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50LCBJbnRQb2lu
dCYgYWRqdXN0ZWRQb2ludCkKIHsKKyAgICBpZiAoIXNob3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50
KGdlc3R1cmVFdmVudCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIE5vZGUqIHRhcmdl
dE5vZGUgPSAwOwogICAgIHN3aXRjaCAoZ2VzdHVyZUV2ZW50LnR5cGUoKSkgewogICAgIGNhc2Ug
UGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcDoKQEAgLTI4NzMsOCArMjg4Miw3IEBAIGJvb2wgRXZl
bnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudEZvckdlc3R1cmUoY29uc3QgUGxhdGZvcm1H
ZXN0dXJlRXZlbnQmIGV2CiAKICAgICBJbnRQb2ludCBhZGp1c3RlZFBvaW50ID0gZXZlbnQucG9z
aXRpb24oKTsKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKLSAgICBpZiAoIWV2ZW50LmFy
ZWEoKS5pc0VtcHR5KCkpCi0gICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlvbihldmVudCwgYWRq
dXN0ZWRQb2ludCk7CisgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGV2ZW50LCBhZGp1c3RlZFBv
aW50KTsKICNlbmRpZgogICAgIFBsYXRmb3JtTW91c2VFdmVudCBtb3VzZUV2ZW50KGFkanVzdGVk
UG9pbnQsIGV2ZW50Lmdsb2JhbFBvc2l0aW9uKCksIFJpZ2h0QnV0dG9uLCBldmVudFR5cGUsIDEs
IGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBXVEY6OmN1cnJlbnRUaW1lKCkpOwogICAgIC8v
IFRvIHNpbXVsYXRlIHJpZ2h0LWNsaWNrIGJlaGF2aW9yLCB3ZSBzZW5kIGEgcmlnaHQgbW91c2Ug
ZG93biBhbmQgdGhlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggNDI0MTU3MzA0
ZTYzYzRkNTFmZWQ3Y2ViN2FlNThiYjc0NjFmZGJhMy4uNzJjMTJhNTlhYzQ3ZTZjZWRiM2E1YWUz
YWMyZTQ0ZGU5NDA4MjdjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0xNzYs
NiArMTc2LDggQEAgcHVibGljOgogI2VuZGlmCiAKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVO
VCkKKyAgICBib29sIHNob3VsZEFwcGx5VG91Y2hBZGp1c3RtZW50KGNvbnN0IFBsYXRmb3JtR2Vz
dHVyZUV2ZW50Jik7CisKICAgICBib29sIGJlc3RDbGlja2FibGVOb2RlRm9yVG91Y2hQb2ludChj
b25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIsIGNvbnN0IEludFNpemUmIHRvdWNoUmFkaXVzLCBJ
bnRQb2ludCYgdGFyZ2V0UG9pbnQsIE5vZGUqJiB0YXJnZXROb2RlKTsKICAgICBib29sIGJlc3RD
b250ZXh0TWVudU5vZGVGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwg
Y29uc3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFBvaW50JiB0YXJnZXRQb2ludCwgTm9kZSom
IHRhcmdldE5vZGUpOwogICAgIGJvb2wgYmVzdFpvb21hYmxlQXJlYUZvclRvdWNoUG9pbnQoY29u
c3QgSW50UG9pbnQmIHRvdWNoQ2VudGVyLCBjb25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywgSW50
UmVjdCYgdGFyZ2V0QXJlYSwgTm9kZSomIHRhcmdldE5vZGUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbiBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3Mu
aW4KaW5kZXggYzA1OGU4Y2JjYTQxZDA4OGYyYmUwMzc4OWY4ZTU0YWVmZmVlYWM2Ny4uYjY5Njc5
NDMwM2Q0YjI0ZTk4MWFlNGU0OTBlMTU4N2NjMGE1N2I5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdz
LmluCkBAIC0xNDAsNiArMTQwLDcgQEAgd2FudHNCYWxhbmNlZFNldERlZmVyc0xvYWRpbmdCZWhh
dmlvciBpbml0aWFsPWZhbHNlCiByZXF1ZXN0QW5pbWF0aW9uRnJhbWVFbmFibGVkIGluaXRpYWw9
dHJ1ZQogZGV2aWNlU3VwcG9ydHNUb3VjaCBpbml0aWFsPWZhbHNlCiBkZXZpY2VTdXBwb3J0c01v
dXNlIGluaXRpYWw9dHJ1ZQordG91Y2hBZGp1c3RtZW50RW5hYmxlZCBpbml0aWFsPXRydWUKIG5l
ZWRzRGlkRmluaXNoTG9hZE9yZGVyUXVpcmsgaW5pdGlhbD1mYWxzZQogZml4ZWRQb3NpdGlvbkNy
ZWF0ZXNTdGFja2luZ0NvbnRleHQgaW5pdGlhbD1mYWxzZQogc3luY1hIUkluRG9jdW1lbnRzRW5h
YmxlZCBpbml0aWFsPXRydWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVi
bGljL1dlYlNldHRpbmdzLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0
aW5ncy5oCmluZGV4IDdkNzA4NjE0ZjUwOTQ2ZjU4ZmNlNjRmNTYwN2UxZjk0MjhmMDM5OWEuLjJk
MzU2ZmE2YTEwZGQ4ZTc3NGFhYzAyZjBkOGQ4NGVjYTQ2Mjg4YjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIHNldEVkaXRhYmxlTGlua0JlaGF2aW9yTmV2ZXJMaXZlKCkgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRFZGl0aW5nQmVoYXZpb3IoRWRpdGluZ0JlaGF2aW9yKSA9
IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEVuYWJsZVNjcm9sbEFuaW1hdG9yKGJvb2wpID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxlVG91Y2hBZGp1c3RtZW50KGJvb2wpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29s
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0dyaWRMYXlvdXRFbmFi
bGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q1NTU3RpY2t5UG9zaXRpb25FbmFi
bGVkKGJvb2wpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlNldHRpbmdzSW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5n
c0ltcGwuY3BwCmluZGV4IDY0NmRjNTNmOGMwZTE5YWJkZGJiOTA5MzM1MzVjMTAxYjkwODM4ZjIu
LjIwZmNjMWI5NjBlMzliZWUwNzM5MTM4YzNiZmNmYmIzYzEyZWU0MWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcApAQCAtNjEwLDYgKzYxMCwx
MSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCBl
bmFibGVkKQogI2VuZGlmCiB9CiAKK3ZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFbmFibGVUb3Vj
aEFkanVzdG1lbnQoYm9vbCBlbmFibGVkKQoreworICAgIG1fc2V0dGluZ3MtPnNldFRvdWNoQWRq
dXN0bWVudEVuYWJsZWQoZW5hYmxlZCk7Cit9CisKIGJvb2wgV2ViU2V0dGluZ3NJbXBsOjpzY3Jv
bGxBbmltYXRvckVuYWJsZWQoKSBjb25zdAogewogI2lmIEVOQUJMRShTTU9PVEhfU0NST0xMSU5H
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBs
LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAppbmRleCA0
MmYyYWI0OTY3YmRiNTE1ODg4YjFiODkwNTE5MzVjYjZlYzdmNzVjLi45ODUyMGVhZGZkMjY4NTRi
YmViYzYzODc3YmU5OWMzODdlOTY4ZDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJTZXR0aW5nc0ltcGwuaApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHNldEVkaXRhYmxlTGlua0JlaGF2aW9yTmV2ZXJMaXZlKCk7CiAgICAgdmlydHVhbCB2
b2lkIHNldEVkaXRpbmdCZWhhdmlvcihFZGl0aW5nQmVoYXZpb3IpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRFbmFibGVTY3JvbGxBbmltYXRvcihib29sKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0RW5h
YmxlVG91Y2hBZGp1c3RtZW50KGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50
YWxDU1NDdXN0b21GaWx0ZXJFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBl
cmltZW50YWxDU1NHcmlkTGF5b3V0RW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0
Q1NTU3RpY2t5UG9zaXRpb25FbmFibGVkKGJvb2wpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175425</attachid>
            <date>2012-11-21 06:19:23 -0800</date>
            <delta_ts>2012-11-21 10:10:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102534-20121121091710.patch</filename>
            <type>text/plain</type>
            <size>9533</size>
            <attacher name="Kevin Ellis">kevers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWJjZDZlODk3MDI5ZjQ3
NTc1NTc2ZTI4ZGJkYmEzYTA5NjE3MDYxYS4uYzFhMjMwMDJmNDdkNWU0N2M5OWQzZTJhMTZjYjkz
ZmEzYjBjOTkzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTExLTIxICBLZXZp
biBFbGxpcyAgPGtldmVyc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
ZmxhZyB0byBlbmFibGUvZGlzYWJsZSB0b3VjaCBhZGp1c3RtZW50IGF0IHJ1bnRpbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDI1MzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc2V0dGluZyBm
b3IgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIHRvdWNoIGFkanVzdG1lbnQuICBOb3RlIHRoYXQgZm9y
CisgICAgICAgIHRvdWNoIGFkanVzdG1lbnQgdG8gYXBwbHksIHRoZSBjb21waWxlIGZsYWcgbXVz
dCBhbHNvIGJlIGVuYWJsZWQuICBBCisgICAgICAgIGNvbXBpbGUgb25seSBvcHRpb24gaXMgaW5z
dWZmaWNpZW50IGFzIGl0IGRvZXMgbm90IGFsbG93IGRldmVsb3BlcnMgdG8KKyAgICAgICAgcXVp
Y2tseSB0ZXN0IHRoZSBpbXBhY3Qgb2YgdG91Y2ggYWRqdXN0ZW1udCB3aXRob3V0IHJlY29tcGls
aW5nLiAgTm9yCisgICAgICAgIGRvZXMgaXQgYWxsb3cgZW5kIHVzZXJzIHRvIGRpc2FibGUgdG91
Y2ggYWRqdXN0ZW1udCBpZiB0aGV5IGZpbmQgdGhhdAorICAgICAgICB0b3VjaCBhZGp1c3RtZW50
IGlzIG5vdCB3b3JraW5nIHdlbGwgZm9yIGEgcGFydGljdWxhciBzaXRlLgorCisgICAgICAgIE5v
IG5ldyB0ZXN0cyByZXF1aXJlZC4KKworICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KTogTW92
ZSBlbmFibGUgY2hlY2sgdG8gYWRqdXN0R2VzdHVyZVBvc2l0aW9uLgorICAgICAgICAoV2ViQ29y
ZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlVGFwKTogTW92ZSBlbmFibGUgY2hlY2sgdG8g
YWRqdXN0R2VzdHVyZVBvc2l0aW9uLgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpz
aG91bGRBcHBseVRvdWNoQWRqdXN0bWVudCk6IENoZWNrcyBpZiB0b3VjaCBhZGp1c3RtZW50IGlz
IGVuYWJsZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFu
ZGxlcjo6YWRqdXN0R2VzdHVyZVBvc2l0aW9uKTogQWRkIGNoZWNrIGZvciBlbmFibGluZyBvZiB0
b3VjaCBhZGp1c3RtZW50LgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpzZW5kQ29u
dGV4dE1lbnVFdmVudEZvckdlc3R1cmUpOiBNb3ZlIGVuYWJsZSBjaGVjayB0byBhZGp1c3RHZXN0
dXJlUG9zaXRpb24uCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDoKKyAgICAgICAgKEV2
ZW50SGFuZGxlcik6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5pbjoKKwogMjAxMi0xMS0yMCAg
S2Vpc2hpIEhhdHRvcmkgIDxrZWlzaGlAd2Via2l0Lm9yZz4KIAogICAgICAgICBXZWVrIHBpY2tl
ciB3aWR0aCBpcyB0b28gc21hbGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggOTZmZDFl
YTk3M2E3ZjdjOTk2NDgzODUyZWUzMzVhYmM3NzE2NDc2ZC4uZjFkZWM2ZDkxMTExNWNmNGI0ZGI3
ZGI1OGEzM2E5MjQwZTVhNTgzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMSBAQAorMjAxMi0xMS0yMSAgS2V2aW4gRWxsaXMgIDxrZXZlcnNAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFtjaHJvbWl1bV0gQWRkIGZsYWcgdG8gZW5hYmxlL2Rpc2FibGUgdG91Y2ggYWRq
dXN0bWVudCBhdCBydW50aW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTAyNTM0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIHNldHRpbmcgZm9yIGVuYWJsaW5nIG9yIGRpc2FibGluZyB0b3VjaCBh
ZGp1c3RtZW50LgorICAgICAgICBGb3IgdG91Y2ggYWRqdXN0ZW1udCB0byBhcHBseSwgdGhlIGNv
bXBpbGUgb3B0aW9uIG11c3QKKyAgICAgICAgYWxzbyBiZSBlbmFibGVkLgorCisgICAgICAgICog
cHVibGljL1dlYlNldHRpbmdzLmg6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdzSW1wbDo6c2V0RW5hYmxlVG91Y2hBZGp1c3Rt
ZW50KToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5o
OgorICAgICAgICAoV2ViU2V0dGluZ3NJbXBsKToKKwogMjAxMi0xMS0xOSAgWXVyeSBTZW1pa2hh
dHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBGaXggQ2hy
b21pdW0gV2luIGNvbXBpbGF0aW9uIGFmdGVyIHIxMzUxOTYuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50
SGFuZGxlci5jcHAKaW5kZXggM2E3NzM5ZmJlMmE4NDNhZmYyNmU3ODlmNzU0YjNmODcyMzRkOGFi
NC4uZDQyNDJmNjhkYTViZjQ3YTZiNmFkNzM4ODRkOTUyODExZDI3NzlhNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMjUzMSw4ICsyNTMxLDcgQEAgYm9vbCBFdmVudEhh
bmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVudChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2Vz
dHVyZUV2ZW50KQogICAgIEhpdFRlc3RSZXF1ZXN0OjpIaXRUZXN0UmVxdWVzdFR5cGUgaGl0VHlw
ZSA9IEhpdFRlc3RSZXF1ZXN0OjpUb3VjaEV2ZW50OwogICAgIGlmIChnZXN0dXJlRXZlbnQudHlw
ZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXBEb3duKSB7CiAjaWYgRU5BQkxFKFRPVUNI
X0FESlVTVE1FTlQpCi0gICAgICAgIGlmICghZ2VzdHVyZUV2ZW50LmFyZWEoKS5pc0VtcHR5KCkp
Ci0gICAgICAgICAgICBhZGp1c3RHZXN0dXJlUG9zaXRpb24oZ2VzdHVyZUV2ZW50LCBhZGp1c3Rl
ZFBvaW50KTsKKyAgICAgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGdlc3R1cmVFdmVudCwgYWRq
dXN0ZWRQb2ludCk7CiAjZW5kaWYKICAgICAgICAgaGl0VHlwZSB8PSBIaXRUZXN0UmVxdWVzdDo6
QWN0aXZlOwogICAgIH0gZWxzZSBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2
ZW50OjpHZXN0dXJlVGFwIHx8IGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6
R2VzdHVyZVRhcERvd25DYW5jZWwpCkBAIC0yNjE3LDggKzI2MTYsNyBAQCBib29sIEV2ZW50SGFu
ZGxlcjo6aGFuZGxlR2VzdHVyZVRhcChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVy
ZUV2ZW50KQogICAgIC8vIEZJWE1FOiBSZWZhY3RvciB0aGlzIGNvZGUgdG8gbm90IGhpdCB0ZXN0
IG11bHRpcGxlIHRpbWVzLiBXZSB1c2UgdGhlIGFkanVzdGVkIHBvc2l0aW9uIHRvIGVuc3VyZSB0
aGF0IHRoZSBjb3JyZWN0IG5vZGUgaXMgdGFyZ2V0ZWQgYnkgdGhlIGxhdGVyIHJlZHVuZGFudCBo
aXQgdGVzdHMuCiAgICAgSW50UG9pbnQgYWRqdXN0ZWRQb2ludCA9IGdlc3R1cmVFdmVudC5wb3Np
dGlvbigpOwogI2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5UKQotICAgIGlmICghZ2VzdHVyZUV2
ZW50LmFyZWEoKS5pc0VtcHR5KCkpCi0gICAgICAgIGFkanVzdEdlc3R1cmVQb3NpdGlvbihnZXN0
dXJlRXZlbnQsIGFkanVzdGVkUG9pbnQpOworICAgIGFkanVzdEdlc3R1cmVQb3NpdGlvbihnZXN0
dXJlRXZlbnQsIGFkanVzdGVkUG9pbnQpOwogI2VuZGlmCiAKICAgICBQbGF0Zm9ybU1vdXNlRXZl
bnQgZmFrZU1vdXNlTW92ZShhZGp1c3RlZFBvaW50LCBnZXN0dXJlRXZlbnQuZ2xvYmFsUG9zaXRp
b24oKSwKQEAgLTI3MDAsNiArMjY5OCwxNCBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2Vz
dHVyZVNjcm9sbENvcmUoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdgogI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKK2Jvb2wgRXZlbnRIYW5kbGVyOjpz
aG91bGRBcHBseVRvdWNoQWRqdXN0bWVudChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZXZl
bnQpIGNvbnN0Cit7CisgICAgaWYgKG1fZnJhbWUtPnNldHRpbmdzKCkgJiYgIW1fZnJhbWUtPnNl
dHRpbmdzKCktPnRvdWNoQWRqdXN0bWVudEVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgIHJldHVybiAhZXZlbnQuYXJlYSgpLmlzRW1wdHkoKTsKK30KKworCiBib29sIEV2ZW50
SGFuZGxlcjo6YmVzdENsaWNrYWJsZU5vZGVGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50JiB0
b3VjaENlbnRlciwgY29uc3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFBvaW50JiB0YXJnZXRQ
b2ludCwgTm9kZSomIHRhcmdldE5vZGUpCiB7CiAgICAgSGl0VGVzdFJlcXVlc3Q6OkhpdFRlc3RS
ZXF1ZXN0VHlwZSBoaXRUeXBlID0gSGl0VGVzdFJlcXVlc3Q6OlJlYWRPbmx5IHwgSGl0VGVzdFJl
cXVlc3Q6OkFjdGl2ZTsKQEAgLTI3NDMsNiArMjc0OSw5IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpi
ZXN0Wm9vbWFibGVBcmVhRm9yVG91Y2hQb2ludChjb25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIs
IGNvCiAKIGJvb2wgRXZlbnRIYW5kbGVyOjphZGp1c3RHZXN0dXJlUG9zaXRpb24oY29uc3QgUGxh
dGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCwgSW50UG9pbnQmIGFkanVzdGVkUG9pbnQp
CiB7CisgICAgaWYgKCFzaG91bGRBcHBseVRvdWNoQWRqdXN0bWVudChnZXN0dXJlRXZlbnQpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisKICAgICBOb2RlKiB0YXJnZXROb2RlID0gMDsKICAgICBz
d2l0Y2ggKGdlc3R1cmVFdmVudC50eXBlKCkpIHsKICAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Okdl
c3R1cmVUYXA6CkBAIC0yODczLDggKzI4ODIsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6c2VuZENv
bnRleHRNZW51RXZlbnRGb3JHZXN0dXJlKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBldgog
CiAgICAgSW50UG9pbnQgYWRqdXN0ZWRQb2ludCA9IGV2ZW50LnBvc2l0aW9uKCk7CiAjaWYgRU5B
QkxFKFRPVUNIX0FESlVTVE1FTlQpCi0gICAgaWYgKCFldmVudC5hcmVhKCkuaXNFbXB0eSgpKQot
ICAgICAgICBhZGp1c3RHZXN0dXJlUG9zaXRpb24oZXZlbnQsIGFkanVzdGVkUG9pbnQpOworICAg
IGFkanVzdEdlc3R1cmVQb3NpdGlvbihldmVudCwgYWRqdXN0ZWRQb2ludCk7CiAjZW5kaWYKICAg
ICBQbGF0Zm9ybU1vdXNlRXZlbnQgbW91c2VFdmVudChhZGp1c3RlZFBvaW50LCBldmVudC5nbG9i
YWxQb3NpdGlvbigpLCBSaWdodEJ1dHRvbiwgZXZlbnRUeXBlLCAxLCBmYWxzZSwgZmFsc2UsIGZh
bHNlLCBmYWxzZSwgV1RGOjpjdXJyZW50VGltZSgpKTsKICAgICAvLyBUbyBzaW11bGF0ZSByaWdo
dC1jbGljayBiZWhhdmlvciwgd2Ugc2VuZCBhIHJpZ2h0IG1vdXNlIGRvd24gYW5kIHRoZW4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCmluZGV4IDQyNDE1NzMwNGU2M2M0ZDUxZmVkN2NlYjdh
ZTU4YmI3NDYxZmRiYTMuLmZjYmNkNjE2YjQ4NDk0NmYxNmRhODE2OGViZmEzZWExMzMxN2ZkODIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaApAQCAtMTc2LDYgKzE3Niw4IEBAIHB1Ymxp
YzoKICNlbmRpZgogCiAjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1FTlQpCisgICAgYm9vbCBzaG91
bGRBcHBseVRvdWNoQWRqdXN0bWVudChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYpIGNvbnN0
OworCiAgICAgYm9vbCBiZXN0Q2xpY2thYmxlTm9kZUZvclRvdWNoUG9pbnQoY29uc3QgSW50UG9p
bnQmIHRvdWNoQ2VudGVyLCBjb25zdCBJbnRTaXplJiB0b3VjaFJhZGl1cywgSW50UG9pbnQmIHRh
cmdldFBvaW50LCBOb2RlKiYgdGFyZ2V0Tm9kZSk7CiAgICAgYm9vbCBiZXN0Q29udGV4dE1lbnVO
b2RlRm9yVG91Y2hQb2ludChjb25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIsIGNvbnN0IEludFNp
emUmIHRvdWNoUmFkaXVzLCBJbnRQb2ludCYgdGFyZ2V0UG9pbnQsIE5vZGUqJiB0YXJnZXROb2Rl
KTsKICAgICBib29sIGJlc3Rab29tYWJsZUFyZWFGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50
JiB0b3VjaENlbnRlciwgY29uc3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFJlY3QmIHRhcmdl
dEFyZWEsIE5vZGUqJiB0YXJnZXROb2RlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvU2V0dGluZ3MuaW4gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmluCmluZGV4IGMw
NThlOGNiY2E0MWQwODhmMmJlMDM3ODlmOGU1NGFlZmZlZWFjNjcuLjg4ZDUxYzQxNjc1MjZlOGJl
MjIwNjZjZGZjMzM3Yjk3MTY4ZDMzMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
U2V0dGluZ3MuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgpAQCAtMTQw
LDYgKzE0MCwxMiBAQCB3YW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yIGluaXRp
YWw9ZmFsc2UKIHJlcXVlc3RBbmltYXRpb25GcmFtZUVuYWJsZWQgaW5pdGlhbD10cnVlCiBkZXZp
Y2VTdXBwb3J0c1RvdWNoIGluaXRpYWw9ZmFsc2UKIGRldmljZVN1cHBvcnRzTW91c2UgaW5pdGlh
bD10cnVlCisKKyMgRm9yIHRvdWNoIGFkanVzdG1lbnQgdG8gYXBwbHksIHRoZSBjb21waWxlIG9w
dGlvbiBUT1VDSF9BREpVU1RNRU5UIG11c3QgYWxzbyBiZSBlbmFibGVkLgorIyBUaGlzIHNldHRp
bmcgYWRkcyBhIG1lYW5zIHRvIGR5bmFtaWNhbGx5IGRpc2FibGUgdGhlIGZlYXR1cmUgYXQgcnVu
dGltZSBvbiBzeXN0ZW1zIHdpdGgKKyMgc3VwcG9ydCBmb3IgdG91Y2ggYWRqdXN0bWVudC4KK3Rv
dWNoQWRqdXN0bWVudEVuYWJsZWQgaW5pdGlhbD10cnVlCisKIG5lZWRzRGlkRmluaXNoTG9hZE9y
ZGVyUXVpcmsgaW5pdGlhbD1mYWxzZQogZml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRl
eHQgaW5pdGlhbD1mYWxzZQogc3luY1hIUkluRG9jdW1lbnRzRW5hYmxlZCBpbml0aWFsPXRydWUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCmluZGV4IDdkNzA4
NjE0ZjUwOTQ2ZjU4ZmNlNjRmNTYwN2UxZjk0MjhmMDM5OWEuLjJkMzU2ZmE2YTEwZGQ4ZTc3NGFh
YzAyZjBkOGQ4NGVjYTQ2Mjg4YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYlNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViU2V0dGluZ3MuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lk
IHNldEVkaXRhYmxlTGlua0JlaGF2aW9yTmV2ZXJMaXZlKCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRFZGl0aW5nQmVoYXZpb3IoRWRpdGluZ0JlaGF2aW9yKSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIHNldEVuYWJsZVNjcm9sbEFuaW1hdG9yKGJvb2wpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQg
c2V0RW5hYmxlVG91Y2hBZGp1c3RtZW50KGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0
RXhwZXJpbWVudGFsQ1NTQ3VzdG9tRmlsdGVyRW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIHNldEV4cGVyaW1lbnRhbENTU0dyaWRMYXlvdXRFbmFibGVkKGJvb2wpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0Q1NTU3RpY2t5UG9zaXRpb25FbmFibGVkKGJvb2wpID0gMDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCmluZGV4IDY0
NmRjNTNmOGMwZTE5YWJkZGJiOTA5MzM1MzVjMTAxYjkwODM4ZjIuLjIwZmNjMWI5NjBlMzliZWUw
NzM5MTM4YzNiZmNmYmIzYzEyZWU0MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViU2V0dGluZ3NJbXBsLmNwcApAQCAtNjEwLDYgKzYxMCwxMSBAQCB2b2lkIFdlYlNldHRp
bmdzSW1wbDo6c2V0RW5hYmxlU2Nyb2xsQW5pbWF0b3IoYm9vbCBlbmFibGVkKQogI2VuZGlmCiB9
CiAKK3ZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRFbmFibGVUb3VjaEFkanVzdG1lbnQoYm9vbCBl
bmFibGVkKQoreworICAgIG1fc2V0dGluZ3MtPnNldFRvdWNoQWRqdXN0bWVudEVuYWJsZWQoZW5h
YmxlZCk7Cit9CisKIGJvb2wgV2ViU2V0dGluZ3NJbXBsOjpzY3JvbGxBbmltYXRvckVuYWJsZWQo
KSBjb25zdAogewogI2lmIEVOQUJMRShTTU9PVEhfU0NST0xMSU5HKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmggYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAppbmRleCA0MmYyYWI0OTY3YmRiNTE1ODg4
YjFiODkwNTE5MzVjYjZlYzdmNzVjLi45ODUyMGVhZGZkMjY4NTRiYmViYzYzODc3YmU5OWMzODdl
OTY4ZDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5n
c0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwu
aApAQCAtODksNiArODksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldEVkaXRhYmxl
TGlua0JlaGF2aW9yTmV2ZXJMaXZlKCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEVkaXRpbmdCZWhh
dmlvcihFZGl0aW5nQmVoYXZpb3IpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmFibGVTY3JvbGxB
bmltYXRvcihib29sKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxlVG91Y2hBZGp1c3RtZW50
KGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NDdXN0b21GaWx0ZXJF
bmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRFeHBlcmltZW50YWxDU1NHcmlkTGF5
b3V0RW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q1NTU3RpY2t5UG9zaXRpb25F
bmFibGVkKGJvb2wpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>