<?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>107942</bug_id>
          
          <creation_ts>2013-01-25 05:41:47 -0800</creation_ts>
          <short_desc>[texmap] Implement frames-per-second debug counter</short_desc>
          <delta_ts>2013-02-11 20:06:04 -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>Layout and Rendering</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>
          <dependson>105787</dependson>
    
    <dependson>108401</dependson>
          <blocked>109428</blocked>
    
    <blocked>109540</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Bruno Abinader (history only)">bruno.abinader</reporter>
          <assigned_to name="Bruno Abinader (history only)">bruno.abinader</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>dongseong.hwang</cc>
    
    <cc>igor.oliveira</cc>
    
    <cc>noam</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>816521</commentid>
    <comment_count>0</comment_count>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-01-25 05:41:47 -0800</bug_when>
    <thetext>Currently we do have a repaint counter implemented (enabled w/ WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS=1) implemented on EFL, however this is not sufficient in situations where you need to benchmark w/o adding JS code (ie. requestAnimationFrame() calls) to provide a FPS counter. My plan is to provide this either by reusing the same envvar (set to =2, for instance), or add a new envvar (ie. WEBKIT_SHOW_FPS_COUNTER=1). What do you guys think? I do have a sample patch which I&apos;m going to upload soon as initial approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820784</commentid>
    <comment_count>1</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2013-01-30 16:31:48 -0800</bug_when>
    <thetext>That&apos;s a good proposal to view FPS. It is really needed.

However, I&apos;m not sure adding new env is good direction. I want to listen other folks&apos; opinion.
FYI, I did not introduce WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS. This env had been long time, and I just cleaned up recently.

I wish your implementation would be platform independent and other folks will use easily.

Thank you for your effort!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820793</commentid>
    <comment_count>2</comment_count>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-01-30 16:37:31 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; That&apos;s a good proposal to view FPS. It is really needed.
&gt; 
&gt; However, I&apos;m not sure adding new env is good direction. I want to listen other folks&apos; opinion.
&gt; FYI, I did not introduce WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS. This env had been long time, and I just cleaned up recently.
&gt; 
&gt; I wish your implementation would be platform independent and other folks will use easily.
&gt; 
&gt; Thank you for your effort!

I agree with you on the envvar setup, using a different value for FPS counter (i.e. =2) sounds good for me as well. As for the implementation, as commonly used by JS-based FPS counters, we can increment a frameCounter on every call to requestAnimationFrame() and update the FPS value every 1 or more seconds (we can even set up the refresh interval as parameter to the envvar). I believe this is pretty well supported on all platforms and won&apos;t require any platform-specific adjustments. What do you guys think?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827062</commentid>
    <comment_count>3</comment_count>
      <attachid>186992</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-06 22:43:31 -0800</bug_when>
    <thetext>Created attachment 186992
Patch

Proposed patch. I&apos;ve thought about using WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS and Settings/Preferences support, however the first didn&apos;t quite met the requirements to customize FPS timer interval, and the latter was just too complex to such a simple implementation, keeping it as low-profile as possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827075</commentid>
    <comment_count>4</comment_count>
      <attachid>186992</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2013-02-06 23:22:40 -0800</bug_when>
    <thetext>Comment on attachment 186992
Patch

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

This is not a good way to show FPS :)
Drawing text in every frame into a buffer and then uploading that buffer is very inefficient, and would probably result in reduced FPS.
I think this should be part of WebInspector.

&gt; Source/WebCore/ChangeLog:8
&gt; +        Added TextureMapper&apos; FPS counter via WEBKIT_SHOW_FPS=&lt;interval&gt; envvar,

Spell out envvar -&gt; environment variable

&gt; Source/WebCore/ChangeLog:12
&gt; +        Visual debugging feature, no need to tests.

no need to tests -&gt; no need for new testes

&gt; Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:92
&gt; +    // FIXME: Using drawRepaintCounter() from TextureMapper.

Why is that a FIXME?

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:88
&gt; +    if (ok &amp;&amp; m_fpsInterval) {

Early return please

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:91
&gt; +        if (layer) {

In which case would layer equal false?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827348</commentid>
    <comment_count>5</comment_count>
      <attachid>187068</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-07 05:15:53 -0800</bug_when>
    <thetext>Created attachment 187068
Patch

Updated patch with fixes reviewed by No&apos;am.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827351</commentid>
    <comment_count>6</comment_count>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-07 05:24:02 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 186992 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=186992&amp;action=review
&gt; 
&gt; This is not a good way to show FPS :)
&gt; Drawing text in every frame into a buffer and then uploading that buffer is very inefficient, and would probably result in reduced FPS.
&gt; I think this should be part of WebInspector.

I agree with you, however this is currently how compositing debug visuals are being shown on screen (see repaint counter [1], debug border [2]). Chromium also shows a FPS counter on screen w/ an associated chart of past seconds measurements, so I followed current approach on this aspect. To optimize drawing, I thought about moving the rendering of this to the backing store, what do you think about this approach?

Links:
[1] http://trac.webkit.org/browser/trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp#L128
[2] http://trac.webkit.org/browser/trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp#L135</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827421</commentid>
    <comment_count>7</comment_count>
      <attachid>187086</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-07 06:14:21 -0800</bug_when>
    <thetext>Created attachment 187086
Patch

Updated patch with FPS drawing function now called from CoordinatedGraphicsScene.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827449</commentid>
    <comment_count>8</comment_count>
      <attachid>187086</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2013-02-07 06:48:07 -0800</bug_when>
    <thetext>Comment on attachment 187086
Patch

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

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:97
&gt; +    ensureRootLayer();

why is that?

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:723
&gt; +    m_lastFPS = (int)(m_paintCount / m_fpsInterval);

no c-cast, please.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827451</commentid>
    <comment_count>9</comment_count>
      <attachid>187094</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-07 06:49:49 -0800</bug_when>
    <thetext>Created attachment 187094
Patch

Removed leftover from previous approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827463</commentid>
    <comment_count>10</comment_count>
      <attachid>187099</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-07 06:56:55 -0800</bug_when>
    <thetext>Created attachment 187099
Patch

Using non-C cast as reviewed by Antonio.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829030</commentid>
    <comment_count>11</comment_count>
      <attachid>187099</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2013-02-09 08:12:09 -0800</bug_when>
    <thetext>Comment on attachment 187099
Patch

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

&gt; Source/WebCore/ChangeLog:12
&gt; +        Added FPS counter via WEBKIT_SHOW_FPS=&lt;interval&gt; environment variable,
&gt; +        where &lt;interval&gt; means the period in seconds (i.e. =1.5) between FPS
&gt; +        updates on screen.
&gt; +
&gt; +        Visual debugging feature, no need for new tests.

Insufficient changelog. Please explain how the FPS counter works.

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:48
&gt; +const TransformationMatrix CoordinatedGraphicsScene::s_matrix;
&gt; +const Color CoordinatedGraphicsScene::s_fpsBackgroundColor = Color::black;
&gt; +const FloatPoint CoordinatedGraphicsScene::s_fpsPoint;

I don&apos;t see how saving these as static variables help. retrieving Color::black from memory is about as expensive as constructing it from scratch anyway.

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:132
&gt; +    m_textureMapper-&gt;beginClip(s_matrix, clipRect);
&gt;  
&gt;      if (m_setDrawsBackground) {
&gt;          RGBA32 rgba = makeRGBA32FromFloats(m_backgroundColor.red(),
&gt;              m_backgroundColor.green(), m_backgroundColor.blue(),
&gt;              m_backgroundColor.alpha() * opacity);
&gt; -        m_textureMapper-&gt;drawSolidColor(clipRect, TransformationMatrix(), Color(rgba));
&gt; +        m_textureMapper-&gt;drawSolidColor(clipRect, s_matrix, Color(rgba));

How is this related to FPS counting?

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:143
&gt; +    if (m_fpsTimer.isActive())
&gt; +        m_textureMapper-&gt;drawRepaintCounter(m_lastFPS, s_fpsBackgroundColor, s_fpsPoint, matrix);

Conditionals based on a timer&apos;s active state are somewhat implicit and hard to debug.

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:722
&gt; +void CoordinatedGraphicsScene::fpsTimerFired(SceneTimer*)
&gt; +{
&gt; +    m_lastFPS = int(m_paintCount / m_fpsInterval);
&gt; +    m_paintCount = 0;
&gt; +}

I don&apos;t see why you would need a timer here at all.
Every paint you can check the current time vs. the previous time the FPS was shown, and only display the FPS if it has reached the interval.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>829972</commentid>
    <comment_count>12</comment_count>
      <attachid>187636</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-11 12:15:59 -0800</bug_when>
    <thetext>Created attachment 187636
Patch

Refactory based on review by No&apos;am.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>830034</commentid>
    <comment_count>13</comment_count>
      <attachid>187636</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2013-02-11 13:18:17 -0800</bug_when>
    <thetext>Comment on attachment 187636
Patch

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

LGTM with nitpicks.

&gt; Source/WebCore/ChangeLog:9
&gt; +        where &lt;interval&gt; means the period in seconds (i.e. =1.5) between FPS

means -&gt; is

&gt; Source/WebCore/ChangeLog:10
&gt; +        updates on screen. It is measured by counting CGScene::paintTo* calls

CGScene -&gt; CoordinatedGraphicsScene

&gt; Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:718
&gt; +    const double delta = WTF::currentTime() - m_fpsTimestamp;

No need for const</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>830104</commentid>
    <comment_count>14</comment_count>
      <attachid>187667</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2013-02-11 14:08:00 -0800</bug_when>
    <thetext>Created attachment 187667
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>830185</commentid>
    <comment_count>15</comment_count>
      <attachid>187667</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-11 15:09:22 -0800</bug_when>
    <thetext>Comment on attachment 187667
Patch for landing

Clearing flags on attachment: 187667

Committed r142524: &lt;http://trac.webkit.org/changeset/142524&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186992</attachid>
            <date>2013-02-06 22:43:31 -0800</date>
            <delta_ts>2013-02-07 05:15:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107942-20130207024006.patch</filename>
            <type>text/plain</type>
            <size>8098</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzI4MDE2OTQ0OTJjODQx
Y2EzYzdlNmU4ZjVhMDZiNmVmNzNhNzk5Ni4uOTYwYjc5Nzg0YWIzODZhMzJhZGY3NGU3ODM2ZmZi
MDUwZjk0ZTk3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEzLTAyLTA2ICBCcnVu
byBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKwor
ICAgICAgICBbdGV4bWFwXSBJbXBsZW1lbnQgZnJhbWVzLXBlci1zZWNvbmQgZGVidWcgY291bnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTQy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQg
VGV4dHVyZU1hcHBlcicgRlBTIGNvdW50ZXIgdmlhIFdFQktJVF9TSE9XX0ZQUz08aW50ZXJ2YWw+
IGVudnZhciwKKyAgICAgICAgd2hlcmUgPGludGVydmFsPiBpcyB0aGUgcGVyaW9kIChpbiBzZWNv
bmRzIC0gaS5lLiBXRUJLSVRfU0hPV19GUFM9MS4wKQorICAgICAgICBiZXR3ZWVuIEZQUyB2YWx1
ZSB1ZHBhdGVzLgorCisgICAgICAgIFZpc3VhbCBkZWJ1Z2dpbmcgZmVhdHVyZSwgbm8gbmVlZCB0
byB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFw
cGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckxheWVyOjpwYWlu
dCk6IFBhaW50cyBGUFMgYWZ0ZXIgYWxsIHJlY3Vyc2l2ZSBsYXllciBwYWludGluZ3MuCisgICAg
ICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyTGF5ZXI6OnNldFNob3dGUFMpOiBUb2dnbGVzIEZQ
UyB2aXNpYmxlLgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1hcHBlckxheWVyOjpzZXRGUFMp
OiBVcGRhdGVzIEZQUyB2YWx1ZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAv
VGV4dHVyZU1hcHBlckxheWVyLmg6CisgICAgICAgIChUZXh0dXJlTWFwcGVyTGF5ZXIpOiBBZGRl
ZCBzZXR0ZXJzIHNldHtTaG93fUZQUy4KKyAgICAgICAgKFN0YXRlKTogQWRkZWQgJ2ZwcycgYW5k
ICdzaG93RlBTJy4KKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJMYXllcjo6U3RhdGU6
OlN0YXRlKTogQWRkZWQgJ2ZwcycgYW5kICdzaG93RlBTJyB0byBpbml0IGxpc3QuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhp
Y3NTY2VuZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6
OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSk6IEFkZGVkIGVudnZhciBjaGVjayBjb2RlIHRvIHRy
aWdnZXIgdGltZXIgdXBkYXRlcy4KKyAgICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhp
Y3NTY2VuZTo6cGFpbnRUb0N1cnJlbnRHTENvbnRleHQpOiBJbmNyZW1lbnRzIHBhaW50IGNvdW50
LgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvR3Jh
cGhpY3NDb250ZXh0KTogSW5jcmVtZW50cyBwYWludCBjb3VudC4KKyAgICAgICAgKFdlYkNvcmU6
OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZnBzVGltZXJGaXJlZCk6IFVwZGF0ZXMgRlBTIHZh
bHVlIHRvIHJvb3QgbGF5ZXIuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nv
b3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oOiBBZGRlZCBGUFMgdmFyaWFibGVz
L3RpbWVyIGZ1bmN0aW9ucy4KKwogMjAxMy0wMi0wNCAgQnJ1bm8gZGUgT2xpdmVpcmEgQWJpbmFk
ZXIgIDxicnVuby5hYmluYWRlckBiYXN5c2tvbS5jb20+CiAKICAgICAgICAgW1dLMl0gQ29vcmRp
bmF0ZWRMYXllckluZm8gaXMgYSBzdHJ1Y3QsIG5vdCBhIGNsYXNzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckxheWVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVy
TGF5ZXIuY3BwCmluZGV4IGVkZmUzMjA3OGQ4ZjIxYWI3ODhhNGFjZmU3ZDVjMmJjZjFmNDI5MDYu
LmM3NGJiNGYxZjczMmU0OGNhMzQ1MjRkMzEwOGMwYWZhOWI0ZGYzZTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyTGF5ZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJl
TWFwcGVyTGF5ZXIuY3BwCkBAIC04NSw2ICs4NSwxMyBAQCB2b2lkIFRleHR1cmVNYXBwZXJMYXll
cjo6cGFpbnQoKQogICAgIG9wdGlvbnMudGV4dHVyZU1hcHBlciA9IG1fdGV4dHVyZU1hcHBlcjsK
ICAgICBvcHRpb25zLnRleHR1cmVNYXBwZXItPmJpbmRTdXJmYWNlKDApOwogICAgIHBhaW50UmVj
dXJzaXZlKG9wdGlvbnMpOworCisgICAgc3RhdGljIENvbG9yIGZwc0NvbG9yID0gQ29sb3I6OmJs
YWNrOworICAgIHN0YXRpYyBGbG9hdFBvaW50IGZwc1BvaW50OworCisgICAgLy8gRklYTUU6IFVz
aW5nIGRyYXdSZXBhaW50Q291bnRlcigpIGZyb20gVGV4dHVyZU1hcHBlci4KKyAgICBpZiAobV9z
dGF0ZS5zaG93RlBTKQorICAgICAgICBvcHRpb25zLnRleHR1cmVNYXBwZXItPmRyYXdSZXBhaW50
Q291bnRlcihtX3N0YXRlLmZwcywgZnBzQ29sb3IsIGZwc1BvaW50LCBtX2N1cnJlbnRUcmFuc2Zv
cm0uY29tYmluZWQoKSk7CiB9CiAKIHN0YXRpYyBDb2xvciBibGVuZFdpdGhPcGFjaXR5KGNvbnN0
IENvbG9yJiBjb2xvciwgZmxvYXQgb3BhY2l0eSkKQEAgLTUzNyw2ICs1NDQsMTYgQEAgdm9pZCBU
ZXh0dXJlTWFwcGVyTGF5ZXI6OnNldFJlcGFpbnRDb3VudChpbnQgcmVwYWludENvdW50KQogICAg
IG1fc3RhdGUucmVwYWludENvdW50ID0gcmVwYWludENvdW50OwogfQogCit2b2lkIFRleHR1cmVN
YXBwZXJMYXllcjo6c2V0U2hvd0ZQUyhib29sIHNob3dGUFMpCit7CisgICAgbV9zdGF0ZS5zaG93
RlBTID0gc2hvd0ZQUzsKK30KKwordm9pZCBUZXh0dXJlTWFwcGVyTGF5ZXI6OnNldEZQUyhpbnQg
ZnBzKQoreworICAgIG1fc3RhdGUuZnBzID0gZnBzOworfQorCiB2b2lkIFRleHR1cmVNYXBwZXJM
YXllcjo6c2V0Q29udGVudHNMYXllcihUZXh0dXJlTWFwcGVyUGxhdGZvcm1MYXllciogcGxhdGZv
cm1MYXllcikKIHsKICAgICBtX2NvbnRlbnRzTGF5ZXIgPSBwbGF0Zm9ybUxheWVyOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBw
ZXJMYXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1
cmVNYXBwZXJMYXllci5oCmluZGV4IGY2YjcyYTMyNWJiODViZTAxZjg5MmMzNzljMmI3MDc2ZDE2
NjA0ZTQuLmRhYjgxNDlhYzE2MzY4MzRmZmVhZGM3YjIwNTMxOTZiY2MyNGYyM2QgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVy
TGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4
dHVyZU1hcHBlckxheWVyLmgKQEAgLTgwLDYgKzgwLDggQEAgcHVibGljOgogI2VuZGlmCiAgICAg
dm9pZCBzZXREZWJ1Z1Zpc3VhbHMoYm9vbCBzaG93RGVidWdCb3JkZXJzLCBjb25zdCBDb2xvciYg
ZGVidWdCb3JkZXJDb2xvciwgZmxvYXQgZGVidWdCb3JkZXJXaWR0aCwgYm9vbCBzaG93UmVwYWlu
dENvdW50ZXIpOwogICAgIHZvaWQgc2V0UmVwYWludENvdW50KGludCk7CisgICAgdm9pZCBzZXRT
aG93RlBTKGJvb2wpOworICAgIHZvaWQgc2V0RlBTKGludCk7CiAgICAgdm9pZCBzZXRDb250ZW50
c0xheWVyKFRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyKik7CiAgICAgdm9pZCBzZXRBbmltYXRp
b25zKGNvbnN0IEdyYXBoaWNzTGF5ZXJBbmltYXRpb25zJik7CiAgICAgdm9pZCBzZXRGaXhlZFRv
Vmlld3BvcnQoYm9vbCk7CkBAIC0xNzMsNiArMTc1LDcgQEAgcHJpdmF0ZToKICAgICAgICAgQ29s
b3IgZGVidWdCb3JkZXJDb2xvcjsKICAgICAgICAgZmxvYXQgZGVidWdCb3JkZXJXaWR0aDsKICAg
ICAgICAgaW50IHJlcGFpbnRDb3VudDsKKyAgICAgICAgaW50IGZwczsKIAogICAgICAgICBib29s
IHByZXNlcnZlczNEIDogMTsKICAgICAgICAgYm9vbCBtYXNrc1RvQm91bmRzIDogMTsKQEAgLTE4
Myw2ICsxODYsNyBAQCBwcml2YXRlOgogICAgICAgICBib29sIHZpc2libGUgOiAxOwogICAgICAg
ICBib29sIHNob3dEZWJ1Z0JvcmRlcnMgOiAxOwogICAgICAgICBib29sIHNob3dSZXBhaW50Q291
bnRlciA6IDE7CisgICAgICAgIGJvb2wgc2hvd0ZQUyA6IDE7CiAKICAgICAgICAgU3RhdGUoKQog
ICAgICAgICAgICAgOiBvcGFjaXR5KDEpCkBAIC0xOTAsNiArMTk0LDcgQEAgcHJpdmF0ZToKICAg
ICAgICAgICAgICwgcmVwbGljYUxheWVyKDApCiAgICAgICAgICAgICAsIGRlYnVnQm9yZGVyV2lk
dGgoMCkKICAgICAgICAgICAgICwgcmVwYWludENvdW50KDApCisgICAgICAgICAgICAsIGZwcygw
KQogICAgICAgICAgICAgLCBwcmVzZXJ2ZXMzRChmYWxzZSkKICAgICAgICAgICAgICwgbWFza3NU
b0JvdW5kcyhmYWxzZSkKICAgICAgICAgICAgICwgZHJhd3NDb250ZW50KGZhbHNlKQpAQCAtMTk5
LDYgKzIwNCw3IEBAIHByaXZhdGU6CiAgICAgICAgICAgICAsIHZpc2libGUodHJ1ZSkKICAgICAg
ICAgICAgICwgc2hvd0RlYnVnQm9yZGVycyhmYWxzZSkKICAgICAgICAgICAgICwgc2hvd1JlcGFp
bnRDb3VudGVyKGZhbHNlKQorICAgICAgICAgICAgLCBzaG93RlBTKGZhbHNlKQogICAgICAgICB7
CiAgICAgICAgIH0KICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29v
cmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcAppbmRleCBkMjE1ZmIzNjEzYjkwN2I2YjFkOWY1ZTg5
MTE5ZGJiMjY0NGY0NTk0Li4wNGUzOGQwMjFkZDgwOTljNzU0MTAzY2E1NjE5M2U5ZjY2OTliMmE1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29v
cmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGlj
c1NjZW5lLmNwcApAQCAtNzYsOCArNzYsMjMgQEAgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpD
b29yZGluYXRlZEdyYXBoaWNzU2NlbmUoQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lQ2xpZW4KICNl
bmRpZgogICAgICwgbV9iYWNrZ3JvdW5kQ29sb3IoQ29sb3I6OndoaXRlKQogICAgICwgbV9zZXRE
cmF3c0JhY2tncm91bmQoZmFsc2UpCisgICAgLCBtX3BhaW50Q291bnQoMCkKKyAgICAsIG1fZnBz
SW50ZXJ2YWwoMCkKKyAgICAsIG1fZnBzVGltZXIodGhpcywgJkNvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZTo6ZnBzVGltZXJGaXJlZCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworCisg
ICAgU3RyaW5nIHNob3dGUFNFbnZpcm9ubWVudCA9IGdldGVudigiV0VCS0lUX1NIT1dfRlBTIik7
CisgICAgYm9vbCBvayA9IGZhbHNlOworICAgIG1fZnBzSW50ZXJ2YWwgPSBzaG93RlBTRW52aXJv
bm1lbnQudG9Eb3VibGUoJm9rKTsKKyAgICBpZiAob2sgJiYgbV9mcHNJbnRlcnZhbCkgeworICAg
ICAgICBlbnN1cmVSb290TGF5ZXIoKTsKKyAgICAgICAgVGV4dHVyZU1hcHBlckxheWVyKiBsYXll
ciA9IHRvVGV4dHVyZU1hcHBlckxheWVyKHJvb3RMYXllcigpKTsKKyAgICAgICAgaWYgKGxheWVy
KSB7CisgICAgICAgICAgICBsYXllci0+c2V0U2hvd0ZQUyh0cnVlKTsKKyAgICAgICAgICAgIG1f
ZnBzVGltZXIuc3RhcnRSZXBlYXRpbmcobV9mcHNJbnRlcnZhbCk7CisgICAgICAgIH0KKyAgICB9
CiB9CiAKIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6fkNvb3JkaW5hdGVkR3JhcGhpY3NTY2Vu
ZSgpCkBAIC0xMjYsNiArMTQxLDcgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnBh
aW50VG9DdXJyZW50R0xDb250ZXh0KGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cmkKICAgICBsYXll
ci0+cGFpbnQoKTsKICAgICBtX3RleHR1cmVNYXBwZXItPmVuZENsaXAoKTsKICAgICBtX3RleHR1
cmVNYXBwZXItPmVuZFBhaW50aW5nKCk7CisgICAgbV9wYWludENvdW50Kys7CiAKICAgICBpZiAo
bGF5ZXItPmRlc2NlbmRhbnRzT3JTZWxmSGF2ZVJ1bm5pbmdBbmltYXRpb25zKCkpCiAgICAgICAg
IGRpc3BhdGNoT25NYWluVGhyZWFkKGJpbmQoJkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6dXBk
YXRlVmlld3BvcnQsIHRoaXMpKTsKQEAgLTE3Nyw2ICsxOTMsNyBAQCB2b2lkIENvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6cGFpbnRUb0dyYXBoaWNzQ29udGV4dChjYWlyb190KiBwYWludGVyKQog
ICAgIGxheWVyLT5wYWludCgpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+ZW5kUGFpbnRpbmcoKTsK
ICAgICBtX3RleHR1cmVNYXBwZXItPnNldEdyYXBoaWNzQ29udGV4dCgwKTsKKyAgICBtX3BhaW50
Q291bnQrKzsKIH0KIAogdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNldENvbnRlbnRz
U2l6ZShjb25zdCBGbG9hdFNpemUmIGNvbnRlbnRzU2l6ZSkKQEAgLTY5Myw2ICs3MTAsMTMgQEAg
dm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNldEJhY2tncm91bmRDb2xvcihjb25zdCBD
b2xvciYgY29sb3IpCiAgICAgbV9iYWNrZ3JvdW5kQ29sb3IgPSBjb2xvcjsKIH0KIAordm9pZCBD
b29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmZwc1RpbWVyRmlyZWQoU2NlbmVUaW1lciopCit7Cisg
ICAgVGV4dHVyZU1hcHBlckxheWVyKiBsYXllciA9IHRvVGV4dHVyZU1hcHBlckxheWVyKHJvb3RM
YXllcigpKTsKKyAgICBsYXllci0+c2V0RlBTKChpbnQpKG1fcGFpbnRDb3VudCAvIG1fZnBzSW50
ZXJ2YWwpKTsKKyAgICBtX3BhaW50Q291bnQgPSAwOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCiAKICNlbmRpZiAvLyBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90
ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKaW5kZXggNzIzNDdi
NGQwYjI3ZWZiNmEzOThiYjg3MmE2Zjc1OTc0NGRmNWY3OC4uNzY3NzY5NzMzOWE5ODEzYjIyODZk
ODhkOWUyMzY4YjRlNTBhOWM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9D
b29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaApAQCAtMjIwLDYgKzIyMCwxMyBAQCBwcml2YXRlOgog
ICAgIHR5cGVkZWYgSGFzaE1hcDxpbnQsIFJlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiA+IEN1
c3RvbUZpbHRlclByb2dyYW1NYXA7CiAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcCBtX2N1c3Rv
bUZpbHRlclByb2dyYW1zOwogI2VuZGlmCisKKyAgICBpbnQgbV9wYWludENvdW50OworICAgIGRv
dWJsZSBtX2Zwc0ludGVydmFsOworCisgICAgdHlwZWRlZiBUaW1lcjxDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmU+IFNjZW5lVGltZXI7CisgICAgdm9pZCBmcHNUaW1lckZpcmVkKFNjZW5lVGltZXIq
KTsKKyAgICBTY2VuZVRpbWVyIG1fZnBzVGltZXI7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187068</attachid>
            <date>2013-02-07 05:15:53 -0800</date>
            <delta_ts>2013-02-07 06:14:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107942-20130207091229.patch</filename>
            <type>text/plain</type>
            <size>8072</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzI4MDE2OTQ0OTJjODQx
Y2EzYzdlNmU4ZjVhMDZiNmVmNzNhNzk5Ni4uMjZjODJjZWNmZjc1OGZmNmZiZmUxOTFmYWM5OTQz
ZmM2NzU0YjRkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEzLTAyLTA3ICBCcnVu
byBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKwor
ICAgICAgICBbdGV4bWFwXSBJbXBsZW1lbnQgZnJhbWVzLXBlci1zZWNvbmQgZGVidWcgY291bnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTQy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQg
VGV4dHVyZU1hcHBlcicgRlBTIGNvdW50ZXIgdmlhIFdFQktJVF9TSE9XX0ZQUz08aW50ZXJ2YWw+
CisgICAgICAgIGVudmlyb25tZW50IHZhcmlhYmxlLCB3aGVyZSA8aW50ZXJ2YWw+IGlzIHRoZSBw
ZXJpb2QgaW4gc2Vjb25kcworICAgICAgICAoaS5lLiBXRUJLSVRfU0hPV19GUFM9MS4wKSBiZXR3
ZWVuIEZQUyB2YWx1ZSB1ZHBhdGVzLgorCisgICAgICAgIFZpc3VhbCBkZWJ1Z2dpbmcgZmVhdHVy
ZSwgbm8gbmVlZCBmb3IgbmV3IHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL1RleHR1cmVNYXBwZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJl
TWFwcGVyTGF5ZXI6OnBhaW50KTogUGFpbnRzIEZQUyBhZnRlciBhbGwgcmVjdXJzaXZlIGxheWVy
IHBhaW50aW5ncy4KKyAgICAgICAgKFdlYkNvcmU6OlRleHR1cmVNYXBwZXJMYXllcjo6c2V0U2hv
d0ZQUyk6IFRvZ2dsZXMgRlBTIHZpc2libGUuCisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFw
cGVyTGF5ZXI6OnNldEZQUyk6IFVwZGF0ZXMgRlBTIHZhbHVlLgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyTGF5ZXIuaDoKKyAgICAgICAgKFRleHR1cmVN
YXBwZXJMYXllcik6IEFkZGVkIHNldHRlcnMgc2V0e1Nob3d9RlBTLgorICAgICAgICAoU3RhdGUp
OiBBZGRlZCAnZnBzJyBhbmQgJ3Nob3dGUFMnLgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZU1h
cHBlckxheWVyOjpTdGF0ZTo6U3RhdGUpOiBBZGRlZCAnZnBzJyBhbmQgJ3Nob3dGUFMnIHRvIGlu
aXQgbGlzdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQv
Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKTogQWRkZWQgY2hlY2sg
Y29kZSB0byB0cmlnZ2VyIHRpbWVyIHVwZGF0ZXMuCisgICAgICAgIChXZWJDb3JlOjpDb29yZGlu
YXRlZEdyYXBoaWNzU2NlbmU6OnBhaW50VG9DdXJyZW50R0xDb250ZXh0KTogSW5jcmVtZW50cyBw
YWludCBjb3VudC4KKyAgICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6
cGFpbnRUb0dyYXBoaWNzQ29udGV4dCk6IEluY3JlbWVudHMgcGFpbnQgY291bnQuCisgICAgICAg
IChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmZwc1RpbWVyRmlyZWQpOiBVcGRh
dGVzIEZQUyB2YWx1ZSB0byByb290IGxheWVyLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaDogQWRkZWQgRlBT
IHZhcmlhYmxlcy90aW1lciBmdW5jdGlvbnMuCisKIDIwMTMtMDItMDQgIEJydW5vIGRlIE9saXZl
aXJhIEFiaW5hZGVyICA8YnJ1bm8uYWJpbmFkZXJAYmFzeXNrb20uY29tPgogCiAgICAgICAgIFtX
SzJdIENvb3JkaW5hdGVkTGF5ZXJJbmZvIGlzIGEgc3RydWN0LCBub3QgYSBjbGFzcwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBw
ZXJMYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4
dHVyZU1hcHBlckxheWVyLmNwcAppbmRleCBlZGZlMzIwNzhkOGYyMWFiNzg4YTRhY2ZlN2Q1YzJi
Y2YxZjQyOTA2Li43YTUzNjcwMmUzMjQ4NzhjNDAxNWE2YjdjY2ZhMDE0ZDEzODA1ZGE1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1h
cHBlckxheWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXht
YXAvVGV4dHVyZU1hcHBlckxheWVyLmNwcApAQCAtODUsNiArODUsMTIgQEAgdm9pZCBUZXh0dXJl
TWFwcGVyTGF5ZXI6OnBhaW50KCkKICAgICBvcHRpb25zLnRleHR1cmVNYXBwZXIgPSBtX3RleHR1
cmVNYXBwZXI7CiAgICAgb3B0aW9ucy50ZXh0dXJlTWFwcGVyLT5iaW5kU3VyZmFjZSgwKTsKICAg
ICBwYWludFJlY3Vyc2l2ZShvcHRpb25zKTsKKworICAgIHN0YXRpYyBDb2xvciBmcHNDb2xvciA9
IENvbG9yOjpibGFjazsKKyAgICBzdGF0aWMgRmxvYXRQb2ludCBmcHNQb2ludDsKKworICAgIGlm
IChtX3N0YXRlLnNob3dGUFMpCisgICAgICAgIG9wdGlvbnMudGV4dHVyZU1hcHBlci0+ZHJhd1Jl
cGFpbnRDb3VudGVyKG1fc3RhdGUuZnBzLCBmcHNDb2xvciwgZnBzUG9pbnQsIG1fY3VycmVudFRy
YW5zZm9ybS5jb21iaW5lZCgpKTsKIH0KIAogc3RhdGljIENvbG9yIGJsZW5kV2l0aE9wYWNpdHko
Y29uc3QgQ29sb3ImIGNvbG9yLCBmbG9hdCBvcGFjaXR5KQpAQCAtNTM3LDYgKzU0MywxNiBAQCB2
b2lkIFRleHR1cmVNYXBwZXJMYXllcjo6c2V0UmVwYWludENvdW50KGludCByZXBhaW50Q291bnQp
CiAgICAgbV9zdGF0ZS5yZXBhaW50Q291bnQgPSByZXBhaW50Q291bnQ7CiB9CiAKK3ZvaWQgVGV4
dHVyZU1hcHBlckxheWVyOjpzZXRTaG93RlBTKGJvb2wgc2hvd0ZQUykKK3sKKyAgICBtX3N0YXRl
LnNob3dGUFMgPSBzaG93RlBTOworfQorCit2b2lkIFRleHR1cmVNYXBwZXJMYXllcjo6c2V0RlBT
KGludCBmcHMpCit7CisgICAgbV9zdGF0ZS5mcHMgPSBmcHM7Cit9CisKIHZvaWQgVGV4dHVyZU1h
cHBlckxheWVyOjpzZXRDb250ZW50c0xheWVyKFRleHR1cmVNYXBwZXJQbGF0Zm9ybUxheWVyKiBw
bGF0Zm9ybUxheWVyKQogewogICAgIG1fY29udGVudHNMYXllciA9IHBsYXRmb3JtTGF5ZXI7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVy
ZU1hcHBlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAv
VGV4dHVyZU1hcHBlckxheWVyLmgKaW5kZXggZjZiNzJhMzI1YmI4NWJlMDFmODkyYzM3OWMyYjcw
NzZkMTY2MDRlNC4uZGFiODE0OWFjMTYzNjgzNGZmZWFkYzdiMjA1MzE5NmJjYzI0ZjIzZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVN
YXBwZXJMYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9UZXh0dXJlTWFwcGVyTGF5ZXIuaApAQCAtODAsNiArODAsOCBAQCBwdWJsaWM6CiAjZW5kaWYK
ICAgICB2b2lkIHNldERlYnVnVmlzdWFscyhib29sIHNob3dEZWJ1Z0JvcmRlcnMsIGNvbnN0IENv
bG9yJiBkZWJ1Z0JvcmRlckNvbG9yLCBmbG9hdCBkZWJ1Z0JvcmRlcldpZHRoLCBib29sIHNob3dS
ZXBhaW50Q291bnRlcik7CiAgICAgdm9pZCBzZXRSZXBhaW50Q291bnQoaW50KTsKKyAgICB2b2lk
IHNldFNob3dGUFMoYm9vbCk7CisgICAgdm9pZCBzZXRGUFMoaW50KTsKICAgICB2b2lkIHNldENv
bnRlbnRzTGF5ZXIoVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXIqKTsKICAgICB2b2lkIHNldEFu
aW1hdGlvbnMoY29uc3QgR3JhcGhpY3NMYXllckFuaW1hdGlvbnMmKTsKICAgICB2b2lkIHNldEZp
eGVkVG9WaWV3cG9ydChib29sKTsKQEAgLTE3Myw2ICsxNzUsNyBAQCBwcml2YXRlOgogICAgICAg
ICBDb2xvciBkZWJ1Z0JvcmRlckNvbG9yOwogICAgICAgICBmbG9hdCBkZWJ1Z0JvcmRlcldpZHRo
OwogICAgICAgICBpbnQgcmVwYWludENvdW50OworICAgICAgICBpbnQgZnBzOwogCiAgICAgICAg
IGJvb2wgcHJlc2VydmVzM0QgOiAxOwogICAgICAgICBib29sIG1hc2tzVG9Cb3VuZHMgOiAxOwpA
QCAtMTgzLDYgKzE4Niw3IEBAIHByaXZhdGU6CiAgICAgICAgIGJvb2wgdmlzaWJsZSA6IDE7CiAg
ICAgICAgIGJvb2wgc2hvd0RlYnVnQm9yZGVycyA6IDE7CiAgICAgICAgIGJvb2wgc2hvd1JlcGFp
bnRDb3VudGVyIDogMTsKKyAgICAgICAgYm9vbCBzaG93RlBTIDogMTsKIAogICAgICAgICBTdGF0
ZSgpCiAgICAgICAgICAgICA6IG9wYWNpdHkoMSkKQEAgLTE5MCw2ICsxOTQsNyBAQCBwcml2YXRl
OgogICAgICAgICAgICAgLCByZXBsaWNhTGF5ZXIoMCkKICAgICAgICAgICAgICwgZGVidWdCb3Jk
ZXJXaWR0aCgwKQogICAgICAgICAgICAgLCByZXBhaW50Q291bnQoMCkKKyAgICAgICAgICAgICwg
ZnBzKDApCiAgICAgICAgICAgICAsIHByZXNlcnZlczNEKGZhbHNlKQogICAgICAgICAgICAgLCBt
YXNrc1RvQm91bmRzKGZhbHNlKQogICAgICAgICAgICAgLCBkcmF3c0NvbnRlbnQoZmFsc2UpCkBA
IC0xOTksNiArMjA0LDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgICwgdmlzaWJsZSh0cnVlKQog
ICAgICAgICAgICAgLCBzaG93RGVidWdCb3JkZXJzKGZhbHNlKQogICAgICAgICAgICAgLCBzaG93
UmVwYWludENvdW50ZXIoZmFsc2UpCisgICAgICAgICAgICAsIHNob3dGUFMoZmFsc2UpCiAgICAg
ICAgIHsKICAgICAgICAgfQogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5l
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCmluZGV4IGQyMTVmYjM2MTNiOTA3YjZiMWQ5
ZjVlODkxMTlkYmIyNjQ0ZjQ1OTQuLmU1ZDkxYmIzZTk3MmY2NzM5ZDlkOGVlMDNjZjc4NzE5YjYw
ZmVmMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdy
YXBoaWNzU2NlbmUuY3BwCkBAIC03Niw4ICs3NiwyMyBAQCBDb29yZGluYXRlZEdyYXBoaWNzU2Nl
bmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZShDb29yZGluYXRlZEdyYXBoaWNzU2NlbmVDbGll
bgogI2VuZGlmCiAgICAgLCBtX2JhY2tncm91bmRDb2xvcihDb2xvcjo6d2hpdGUpCiAgICAgLCBt
X3NldERyYXdzQmFja2dyb3VuZChmYWxzZSkKKyAgICAsIG1fcGFpbnRDb3VudCgwKQorICAgICwg
bV9mcHNJbnRlcnZhbCgwKQorICAgICwgbV9mcHNUaW1lcih0aGlzLCAmQ29vcmRpbmF0ZWRHcmFw
aGljc1NjZW5lOjpmcHNUaW1lckZpcmVkKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7
CisKKyAgICBTdHJpbmcgc2hvd0ZQU0Vudmlyb25tZW50ID0gZ2V0ZW52KCJXRUJLSVRfU0hPV19G
UFMiKTsKKyAgICBib29sIG9rID0gZmFsc2U7CisgICAgbV9mcHNJbnRlcnZhbCA9IHNob3dGUFNF
bnZpcm9ubWVudC50b0RvdWJsZSgmb2spOworICAgIGlmICghb2sgfHwgIW1fZnBzSW50ZXJ2YWwp
CisgICAgICAgIHJldHVybjsKKworICAgIC8vIFN0YXJ0cyB0aGUgRlBTIHVwZGF0ZSB0aW1lciB1
c2luZyBnaXZlbiBpbnRlcnZhbCAoaW4gc2Vjb25kcykuCisgICAgZW5zdXJlUm9vdExheWVyKCk7
CisgICAgVGV4dHVyZU1hcHBlckxheWVyKiBsYXllciA9IHRvVGV4dHVyZU1hcHBlckxheWVyKHJv
b3RMYXllcigpKTsKKyAgICBsYXllci0+c2V0U2hvd0ZQUyh0cnVlKTsKKyAgICBtX2Zwc1RpbWVy
LnN0YXJ0UmVwZWF0aW5nKG1fZnBzSW50ZXJ2YWwpOwogfQogCiBDb29yZGluYXRlZEdyYXBoaWNz
U2NlbmU6On5Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUoKQpAQCAtMTI2LDYgKzE0MSw3IEBAIHZv
aWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvQ3VycmVudEdMQ29udGV4dChjb25z
dCBUcmFuc2Zvcm1hdGlvbk1hdHJpCiAgICAgbGF5ZXItPnBhaW50KCk7CiAgICAgbV90ZXh0dXJl
TWFwcGVyLT5lbmRDbGlwKCk7CiAgICAgbV90ZXh0dXJlTWFwcGVyLT5lbmRQYWludGluZygpOwor
ICAgIG1fcGFpbnRDb3VudCsrOwogCiAgICAgaWYgKGxheWVyLT5kZXNjZW5kYW50c09yU2VsZkhh
dmVSdW5uaW5nQW5pbWF0aW9ucygpKQogICAgICAgICBkaXNwYXRjaE9uTWFpblRocmVhZChiaW5k
KCZDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnVwZGF0ZVZpZXdwb3J0LCB0aGlzKSk7CkBAIC0x
NzcsNiArMTkzLDcgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnBhaW50VG9HcmFw
aGljc0NvbnRleHQoY2Fpcm9fdCogcGFpbnRlcikKICAgICBsYXllci0+cGFpbnQoKTsKICAgICBt
X3RleHR1cmVNYXBwZXItPmVuZFBhaW50aW5nKCk7CiAgICAgbV90ZXh0dXJlTWFwcGVyLT5zZXRH
cmFwaGljc0NvbnRleHQoMCk7CisgICAgbV9wYWludENvdW50Kys7CiB9CiAKIHZvaWQgQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRDb250ZW50c1NpemUoY29uc3QgRmxvYXRTaXplJiBjb250
ZW50c1NpemUpCkBAIC02OTMsNiArNzEwLDEzIEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjpzZXRCYWNrZ3JvdW5kQ29sb3IoY29uc3QgQ29sb3ImIGNvbG9yKQogICAgIG1fYmFja2dy
b3VuZENvbG9yID0gY29sb3I7CiB9CiAKK3ZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpm
cHNUaW1lckZpcmVkKFNjZW5lVGltZXIqKQoreworICAgIFRleHR1cmVNYXBwZXJMYXllciogbGF5
ZXIgPSB0b1RleHR1cmVNYXBwZXJMYXllcihyb290TGF5ZXIoKSk7CisgICAgbGF5ZXItPnNldEZQ
UygoaW50KShtX3BhaW50Q291bnQgLyBtX2Zwc0ludGVydmFsKSk7CisgICAgbV9wYWludENvdW50
ID0gMDsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gVVNFKENPT1JE
SU5BVEVEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZS5oCmluZGV4IDcyMzQ3YjRkMGIyN2VmYjZhMzk4YmI4NzJhNmY3NTk3
NDRkZjVmNzguLjc2Nzc2OTczMzlhOTgxM2IyMjg2ZDg4ZDllMjM2OGI0ZTUwYTljOTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgK
QEAgLTIyMCw2ICsyMjAsMTMgQEAgcHJpdmF0ZToKICAgICB0eXBlZGVmIEhhc2hNYXA8aW50LCBS
ZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gPiBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwOwogICAg
IEN1c3RvbUZpbHRlclByb2dyYW1NYXAgbV9jdXN0b21GaWx0ZXJQcm9ncmFtczsKICNlbmRpZgor
CisgICAgaW50IG1fcGFpbnRDb3VudDsKKyAgICBkb3VibGUgbV9mcHNJbnRlcnZhbDsKKworICAg
IHR5cGVkZWYgVGltZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lPiBTY2VuZVRpbWVyOworICAg
IHZvaWQgZnBzVGltZXJGaXJlZChTY2VuZVRpbWVyKik7CisgICAgU2NlbmVUaW1lciBtX2Zwc1Rp
bWVyOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187086</attachid>
            <date>2013-02-07 06:14:21 -0800</date>
            <delta_ts>2013-02-07 06:49:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107942-20130207101056.patch</filename>
            <type>text/plain</type>
            <size>6359</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzI4MDE2OTQ0OTJjODQx
Y2EzYzdlNmU4ZjVhMDZiNmVmNzNhNzk5Ni4uZjNhODE5ODRmOTQ3ZDA5MjYzN2JkZjEyMDBiNWQz
Y2I1ZjdmMzUyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEzLTAyLTA3ICBCcnVu
byBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKwor
ICAgICAgICBbdGV4bWFwXSBJbXBsZW1lbnQgZnJhbWVzLXBlci1zZWNvbmQgZGVidWcgY291bnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTQy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQg
RlBTIGNvdW50ZXIgdmlhIFdFQktJVF9TSE9XX0ZQUz08aW50ZXJ2YWw+IGVudmlyb25tZW50IHZh
cmlhYmxlLAorICAgICAgICB3aGVyZSA8aW50ZXJ2YWw+IG1lYW5zIHRoZSBwZXJpb2QgaW4gc2Vj
b25kcyAoaS5lLiA9MS41KSBiZXR3ZWVuIEZQUworICAgICAgICB1cGRhdGVzIG9uIHNjcmVlbi4K
KworICAgICAgICBWaXN1YWwgZGVidWdnaW5nIGZlYXR1cmUsIG5vIG5lZWQgZm9yIG5ldyB0ZXN0
cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRH
cmFwaGljc1NjZW5lOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUpOiBBZGRlZCBjaGVjayBjb2Rl
IHRvIHRyaWdnZXIgdGltZXIgdXBkYXRlcy4KKyAgICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6cGFpbnRUb0N1cnJlbnRHTENvbnRleHQpOgorICAgICAgICAoV2ViQ29y
ZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvR3JhcGhpY3NDb250ZXh0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZnBzVGltZXJGaXJlZCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZS5oOgorICAgICAgICBJbmNyZW1lbnRzIHBhaW50IGNvdW50LCBkcmF3
cyBsYXN0IEZQUyB1c2luZyBUZXh0dXJlTWFwcGVyOjpkcmF3UmVwYWludENvdW50ZXIoKS4KKwog
MjAxMy0wMi0wNCAgQnJ1bm8gZGUgT2xpdmVpcmEgQWJpbmFkZXIgIDxicnVuby5hYmluYWRlckBi
YXN5c2tvbS5jb20+CiAKICAgICAgICAgW1dLMl0gQ29vcmRpbmF0ZWRMYXllckluZm8gaXMgYSBz
dHJ1Y3QsIG5vdCBhIGNsYXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCmluZGV4IGQyMTVmYjM2MTNiOTA3YjZiMWQ5ZjVlODkx
MTlkYmIyNjQ0ZjQ1OTQuLjE0NzM5OGZmMjdjNDQ0YTUxNzMwYzYxMzJmMWU0ZjYyMDA1NDRlYjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29y
ZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNz
U2NlbmUuY3BwCkBAIC00Myw2ICs0MywxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2Nv
bnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4IENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c19tYXRy
aXg7Citjb25zdCBDb2xvciBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNfZnBzQmFja2dyb3Vu
ZENvbG9yID0gQ29sb3I6OmJsYWNrOworY29uc3QgRmxvYXRQb2ludCBDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmU6OnNfZnBzUG9pbnQ7CisKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpk
aXNwYXRjaE9uTWFpblRocmVhZChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBmdW5jdGlvbikKIHsK
ICAgICBpZiAoaXNNYWluVGhyZWFkKCkpCkBAIC03Niw4ICs4MCwyMiBAQCBDb29yZGluYXRlZEdy
YXBoaWNzU2NlbmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZShDb29yZGluYXRlZEdyYXBoaWNz
U2NlbmVDbGllbgogI2VuZGlmCiAgICAgLCBtX2JhY2tncm91bmRDb2xvcihDb2xvcjo6d2hpdGUp
CiAgICAgLCBtX3NldERyYXdzQmFja2dyb3VuZChmYWxzZSkKKyAgICAsIG1fcGFpbnRDb3VudCgw
KQorICAgICwgbV9sYXN0RlBTKDApCisgICAgLCBtX2Zwc0ludGVydmFsKDApCisgICAgLCBtX2Zw
c1RpbWVyKHRoaXMsICZDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmZwc1RpbWVyRmlyZWQpCiB7
CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKworICAgIFN0cmluZyBzaG93RlBTRW52aXJv
bm1lbnQgPSBnZXRlbnYoIldFQktJVF9TSE9XX0ZQUyIpOworICAgIGJvb2wgb2sgPSBmYWxzZTsK
KyAgICBtX2Zwc0ludGVydmFsID0gc2hvd0ZQU0Vudmlyb25tZW50LnRvRG91YmxlKCZvayk7Cisg
ICAgaWYgKCFvayB8fCAhbV9mcHNJbnRlcnZhbCkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8g
U3RhcnRzIHRoZSBGUFMgdXBkYXRlIHRpbWVyIHVzaW5nIGdpdmVuIGludGVydmFsIChpbiBzZWNv
bmRzKS4KKyAgICBlbnN1cmVSb290TGF5ZXIoKTsKKyAgICBtX2Zwc1RpbWVyLnN0YXJ0UmVwZWF0
aW5nKG1fZnBzSW50ZXJ2YWwpOwogfQogCiBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6On5Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUoKQpAQCAtMTA4LDEzICsxMjYsMTMgQEAgdm9pZCBDb29yZGlu
YXRlZEdyYXBoaWNzU2NlbmU6OnBhaW50VG9DdXJyZW50R0xDb250ZXh0KGNvbnN0IFRyYW5zZm9y
bWF0aW9uTWF0cmkKICAgICBpZiAoIW1fYW5pbWF0aW9uc0xvY2tlZCkKICAgICAgICAgbGF5ZXIt
PmFwcGx5QW5pbWF0aW9uc1JlY3Vyc2l2ZWx5KCk7CiAgICAgbV90ZXh0dXJlTWFwcGVyLT5iZWdp
blBhaW50aW5nKFBhaW50RmxhZ3MpOwotICAgIG1fdGV4dHVyZU1hcHBlci0+YmVnaW5DbGlwKFRy
YW5zZm9ybWF0aW9uTWF0cml4KCksIGNsaXBSZWN0KTsKKyAgICBtX3RleHR1cmVNYXBwZXItPmJl
Z2luQ2xpcChzX21hdHJpeCwgY2xpcFJlY3QpOwogCiAgICAgaWYgKG1fc2V0RHJhd3NCYWNrZ3Jv
dW5kKSB7CiAgICAgICAgIFJHQkEzMiByZ2JhID0gbWFrZVJHQkEzMkZyb21GbG9hdHMobV9iYWNr
Z3JvdW5kQ29sb3IucmVkKCksCiAgICAgICAgICAgICBtX2JhY2tncm91bmRDb2xvci5ncmVlbigp
LCBtX2JhY2tncm91bmRDb2xvci5ibHVlKCksCiAgICAgICAgICAgICBtX2JhY2tncm91bmRDb2xv
ci5hbHBoYSgpICogb3BhY2l0eSk7Ci0gICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1NvbGlk
Q29sb3IoY2xpcFJlY3QsIFRyYW5zZm9ybWF0aW9uTWF0cml4KCksIENvbG9yKHJnYmEpKTsKKyAg
ICAgICAgbV90ZXh0dXJlTWFwcGVyLT5kcmF3U29saWRDb2xvcihjbGlwUmVjdCwgc19tYXRyaXgs
IENvbG9yKHJnYmEpKTsKICAgICB9CiAKICAgICBpZiAoY3VycmVudFJvb3RMYXllci0+b3BhY2l0
eSgpICE9IG9wYWNpdHkgfHwgY3VycmVudFJvb3RMYXllci0+dHJhbnNmb3JtKCkgIT0gbWF0cml4
KSB7CkBAIC0xMjQsOCArMTQyLDEyIEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpw
YWludFRvQ3VycmVudEdMQ29udGV4dChjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpCiAgICAgfQog
CiAgICAgbGF5ZXItPnBhaW50KCk7CisgICAgaWYgKG1fZnBzVGltZXIuaXNBY3RpdmUoKSkKKyAg
ICAgICAgbV90ZXh0dXJlTWFwcGVyLT5kcmF3UmVwYWludENvdW50ZXIobV9sYXN0RlBTLCBzX2Zw
c0JhY2tncm91bmRDb2xvciwgc19mcHNQb2ludCwgbWF0cml4KTsKKwogICAgIG1fdGV4dHVyZU1h
cHBlci0+ZW5kQ2xpcCgpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+ZW5kUGFpbnRpbmcoKTsKKyAg
ICBtX3BhaW50Q291bnQrKzsKIAogICAgIGlmIChsYXllci0+ZGVzY2VuZGFudHNPclNlbGZIYXZl
UnVubmluZ0FuaW1hdGlvbnMoKSkKICAgICAgICAgZGlzcGF0Y2hPbk1haW5UaHJlYWQoYmluZCgm
Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjp1cGRhdGVWaWV3cG9ydCwgdGhpcykpOwpAQCAtMTcy
LDExICsxOTQsMTQgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnBhaW50VG9HcmFw
aGljc0NvbnRleHQoY2Fpcm9fdCogcGFpbnRlcikKICAgICBtX3RleHR1cmVNYXBwZXItPmJlZ2lu
UGFpbnRpbmcoKTsKIAogICAgIGlmIChtX3NldERyYXdzQmFja2dyb3VuZCkKLSAgICAgICAgbV90
ZXh0dXJlTWFwcGVyLT5kcmF3U29saWRDb2xvcihncmFwaGljc0NvbnRleHQuY2xpcEJvdW5kcygp
LCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCgpLCBtX2JhY2tncm91bmRDb2xvcik7CisgICAgICAgIG1f
dGV4dHVyZU1hcHBlci0+ZHJhd1NvbGlkQ29sb3IoZ3JhcGhpY3NDb250ZXh0LmNsaXBCb3VuZHMo
KSwgc19tYXRyaXgsIG1fYmFja2dyb3VuZENvbG9yKTsKIAogICAgIGxheWVyLT5wYWludCgpOwor
ICAgIGlmIChtX2Zwc1RpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fdGV4dHVyZU1hcHBlci0+
ZHJhd1JlcGFpbnRDb3VudGVyKG1fbGFzdEZQUywgc19mcHNCYWNrZ3JvdW5kQ29sb3IsIHNfZnBz
UG9pbnQsIHNfbWF0cml4KTsKICAgICBtX3RleHR1cmVNYXBwZXItPmVuZFBhaW50aW5nKCk7CiAg
ICAgbV90ZXh0dXJlTWFwcGVyLT5zZXRHcmFwaGljc0NvbnRleHQoMCk7CisgICAgbV9wYWludENv
dW50Kys7CiB9CiAKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRDb250ZW50c1Np
emUoY29uc3QgRmxvYXRTaXplJiBjb250ZW50c1NpemUpCkBAIC02OTMsNiArNzE4LDEyIEBAIHZv
aWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzZXRCYWNrZ3JvdW5kQ29sb3IoY29uc3QgQ29s
b3ImIGNvbG9yKQogICAgIG1fYmFja2dyb3VuZENvbG9yID0gY29sb3I7CiB9CiAKK3ZvaWQgQ29v
cmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpmcHNUaW1lckZpcmVkKFNjZW5lVGltZXIqKQoreworICAg
IG1fbGFzdEZQUyA9IChpbnQpKG1fcGFpbnRDb3VudCAvIG1fZnBzSW50ZXJ2YWwpOworICAgIG1f
cGFpbnRDb3VudCA9IDA7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8v
IFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2Nl
bmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaAppbmRleCA3MjM0N2I0ZDBiMjdlZmI2YTM5OGJi
ODcyYTZmNzU5NzQ0ZGY1Zjc4Li5jZGIyZjBlMDE5NjVjMDc4OTRkZmI0YTAzZmY1MmJmOTk5ZTI0
ODgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAv
Y29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhp
Y3NTY2VuZS5oCkBAIC0yMjAsNiArMjIwLDE4IEBAIHByaXZhdGU6CiAgICAgdHlwZWRlZiBIYXNo
TWFwPGludCwgUmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+ID4gQ3VzdG9tRmlsdGVyUHJvZ3Jh
bU1hcDsKICAgICBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXM7
CiAjZW5kaWYKKworICAgIHN0YXRpYyBjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBzX21hdHJp
eDsKKyAgICBzdGF0aWMgY29uc3QgQ29sb3Igc19mcHNCYWNrZ3JvdW5kQ29sb3I7CisgICAgc3Rh
dGljIGNvbnN0IEZsb2F0UG9pbnQgc19mcHNQb2ludDsKKworICAgIGludCBtX3BhaW50Q291bnQ7
CisgICAgaW50IG1fbGFzdEZQUzsKKyAgICBkb3VibGUgbV9mcHNJbnRlcnZhbDsKKworICAgIHR5
cGVkZWYgVGltZXI8Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lPiBTY2VuZVRpbWVyOworICAgIHZv
aWQgZnBzVGltZXJGaXJlZChTY2VuZVRpbWVyKik7CisgICAgU2NlbmVUaW1lciBtX2Zwc1RpbWVy
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187094</attachid>
            <date>2013-02-07 06:49:49 -0800</date>
            <delta_ts>2013-02-07 06:56:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107942-20130207104624.patch</filename>
            <type>text/plain</type>
            <size>6318</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzI4MDE2OTQ0OTJjODQx
Y2EzYzdlNmU4ZjVhMDZiNmVmNzNhNzk5Ni4uZjNhODE5ODRmOTQ3ZDA5MjYzN2JkZjEyMDBiNWQz
Y2I1ZjdmMzUyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEzLTAyLTA3ICBCcnVu
byBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKwor
ICAgICAgICBbdGV4bWFwXSBJbXBsZW1lbnQgZnJhbWVzLXBlci1zZWNvbmQgZGVidWcgY291bnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTQy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQg
RlBTIGNvdW50ZXIgdmlhIFdFQktJVF9TSE9XX0ZQUz08aW50ZXJ2YWw+IGVudmlyb25tZW50IHZh
cmlhYmxlLAorICAgICAgICB3aGVyZSA8aW50ZXJ2YWw+IG1lYW5zIHRoZSBwZXJpb2QgaW4gc2Vj
b25kcyAoaS5lLiA9MS41KSBiZXR3ZWVuIEZQUworICAgICAgICB1cGRhdGVzIG9uIHNjcmVlbi4K
KworICAgICAgICBWaXN1YWwgZGVidWdnaW5nIGZlYXR1cmUsIG5vIG5lZWQgZm9yIG5ldyB0ZXN0
cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRH
cmFwaGljc1NjZW5lOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUpOiBBZGRlZCBjaGVjayBjb2Rl
IHRvIHRyaWdnZXIgdGltZXIgdXBkYXRlcy4KKyAgICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6cGFpbnRUb0N1cnJlbnRHTENvbnRleHQpOgorICAgICAgICAoV2ViQ29y
ZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvR3JhcGhpY3NDb250ZXh0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZnBzVGltZXJGaXJlZCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZS5oOgorICAgICAgICBJbmNyZW1lbnRzIHBhaW50IGNvdW50LCBkcmF3
cyBsYXN0IEZQUyB1c2luZyBUZXh0dXJlTWFwcGVyOjpkcmF3UmVwYWludENvdW50ZXIoKS4KKwog
MjAxMy0wMi0wNCAgQnJ1bm8gZGUgT2xpdmVpcmEgQWJpbmFkZXIgIDxicnVuby5hYmluYWRlckBi
YXN5c2tvbS5jb20+CiAKICAgICAgICAgW1dLMl0gQ29vcmRpbmF0ZWRMYXllckluZm8gaXMgYSBz
dHJ1Y3QsIG5vdCBhIGNsYXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCmluZGV4IGQyMTVmYjM2MTNiOTA3YjZiMWQ5ZjVlODkx
MTlkYmIyNjQ0ZjQ1OTQuLjJlYzBlM2Y4NWFhYjgxYTJhMDMxODU0NmFmYWVkZWVkOGQ4Y2NmYmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29y
ZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNz
U2NlbmUuY3BwCkBAIC00Myw2ICs0MywxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2Nv
bnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4IENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c19tYXRy
aXg7Citjb25zdCBDb2xvciBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNfZnBzQmFja2dyb3Vu
ZENvbG9yID0gQ29sb3I6OmJsYWNrOworY29uc3QgRmxvYXRQb2ludCBDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmU6OnNfZnBzUG9pbnQ7CisKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpk
aXNwYXRjaE9uTWFpblRocmVhZChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBmdW5jdGlvbikKIHsK
ICAgICBpZiAoaXNNYWluVGhyZWFkKCkpCkBAIC03Niw4ICs4MCwxOSBAQCBDb29yZGluYXRlZEdy
YXBoaWNzU2NlbmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZShDb29yZGluYXRlZEdyYXBoaWNz
U2NlbmVDbGllbgogI2VuZGlmCiAgICAgLCBtX2JhY2tncm91bmRDb2xvcihDb2xvcjo6d2hpdGUp
CiAgICAgLCBtX3NldERyYXdzQmFja2dyb3VuZChmYWxzZSkKKyAgICAsIG1fcGFpbnRDb3VudCgw
KQorICAgICwgbV9sYXN0RlBTKDApCisgICAgLCBtX2Zwc0ludGVydmFsKDApCisgICAgLCBtX2Zw
c1RpbWVyKHRoaXMsICZDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmZwc1RpbWVyRmlyZWQpCiB7
CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKworICAgIFN0cmluZyBzaG93RlBTRW52aXJv
bm1lbnQgPSBnZXRlbnYoIldFQktJVF9TSE9XX0ZQUyIpOworICAgIGJvb2wgb2sgPSBmYWxzZTsK
KyAgICBtX2Zwc0ludGVydmFsID0gc2hvd0ZQU0Vudmlyb25tZW50LnRvRG91YmxlKCZvayk7Cisg
ICAgLy8gU3RhcnRzIHRoZSBGUFMgdXBkYXRlIHRpbWVyIHVzaW5nIGdpdmVuIGludGVydmFsIChp
biBzZWNvbmRzKS4KKyAgICBpZiAob2sgJiYgbV9mcHNJbnRlcnZhbCkKKyAgICAgICAgbV9mcHNU
aW1lci5zdGFydFJlcGVhdGluZyhtX2Zwc0ludGVydmFsKTsKIH0KIAogQ29vcmRpbmF0ZWRHcmFw
aGljc1NjZW5lOjp+Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKCkKQEAgLTEwOCwxMyArMTIzLDEz
IEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvQ3VycmVudEdMQ29udGV4
dChjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpCiAgICAgaWYgKCFtX2FuaW1hdGlvbnNMb2NrZWQp
CiAgICAgICAgIGxheWVyLT5hcHBseUFuaW1hdGlvbnNSZWN1cnNpdmVseSgpOwogICAgIG1fdGV4
dHVyZU1hcHBlci0+YmVnaW5QYWludGluZyhQYWludEZsYWdzKTsKLSAgICBtX3RleHR1cmVNYXBw
ZXItPmJlZ2luQ2xpcChUcmFuc2Zvcm1hdGlvbk1hdHJpeCgpLCBjbGlwUmVjdCk7CisgICAgbV90
ZXh0dXJlTWFwcGVyLT5iZWdpbkNsaXAoc19tYXRyaXgsIGNsaXBSZWN0KTsKIAogICAgIGlmICht
X3NldERyYXdzQmFja2dyb3VuZCkgewogICAgICAgICBSR0JBMzIgcmdiYSA9IG1ha2VSR0JBMzJG
cm9tRmxvYXRzKG1fYmFja2dyb3VuZENvbG9yLnJlZCgpLAogICAgICAgICAgICAgbV9iYWNrZ3Jv
dW5kQ29sb3IuZ3JlZW4oKSwgbV9iYWNrZ3JvdW5kQ29sb3IuYmx1ZSgpLAogICAgICAgICAgICAg
bV9iYWNrZ3JvdW5kQ29sb3IuYWxwaGEoKSAqIG9wYWNpdHkpOwotICAgICAgICBtX3RleHR1cmVN
YXBwZXItPmRyYXdTb2xpZENvbG9yKGNsaXBSZWN0LCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCgpLCBD
b2xvcihyZ2JhKSk7CisgICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1NvbGlkQ29sb3IoY2xp
cFJlY3QsIHNfbWF0cml4LCBDb2xvcihyZ2JhKSk7CiAgICAgfQogCiAgICAgaWYgKGN1cnJlbnRS
b290TGF5ZXItPm9wYWNpdHkoKSAhPSBvcGFjaXR5IHx8IGN1cnJlbnRSb290TGF5ZXItPnRyYW5z
Zm9ybSgpICE9IG1hdHJpeCkgewpAQCAtMTI0LDggKzEzOSwxMiBAQCB2b2lkIENvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6cGFpbnRUb0N1cnJlbnRHTENvbnRleHQoY29uc3QgVHJhbnNmb3JtYXRp
b25NYXRyaQogICAgIH0KIAogICAgIGxheWVyLT5wYWludCgpOworICAgIGlmIChtX2Zwc1RpbWVy
LmlzQWN0aXZlKCkpCisgICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1JlcGFpbnRDb3VudGVy
KG1fbGFzdEZQUywgc19mcHNCYWNrZ3JvdW5kQ29sb3IsIHNfZnBzUG9pbnQsIG1hdHJpeCk7CisK
ICAgICBtX3RleHR1cmVNYXBwZXItPmVuZENsaXAoKTsKICAgICBtX3RleHR1cmVNYXBwZXItPmVu
ZFBhaW50aW5nKCk7CisgICAgbV9wYWludENvdW50Kys7CiAKICAgICBpZiAobGF5ZXItPmRlc2Nl
bmRhbnRzT3JTZWxmSGF2ZVJ1bm5pbmdBbmltYXRpb25zKCkpCiAgICAgICAgIGRpc3BhdGNoT25N
YWluVGhyZWFkKGJpbmQoJkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6dXBkYXRlVmlld3BvcnQs
IHRoaXMpKTsKQEAgLTE3MiwxMSArMTkxLDE0IEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjpwYWludFRvR3JhcGhpY3NDb250ZXh0KGNhaXJvX3QqIHBhaW50ZXIpCiAgICAgbV90ZXh0
dXJlTWFwcGVyLT5iZWdpblBhaW50aW5nKCk7CiAKICAgICBpZiAobV9zZXREcmF3c0JhY2tncm91
bmQpCi0gICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1NvbGlkQ29sb3IoZ3JhcGhpY3NDb250
ZXh0LmNsaXBCb3VuZHMoKSwgVHJhbnNmb3JtYXRpb25NYXRyaXgoKSwgbV9iYWNrZ3JvdW5kQ29s
b3IpOworICAgICAgICBtX3RleHR1cmVNYXBwZXItPmRyYXdTb2xpZENvbG9yKGdyYXBoaWNzQ29u
dGV4dC5jbGlwQm91bmRzKCksIHNfbWF0cml4LCBtX2JhY2tncm91bmRDb2xvcik7CiAKICAgICBs
YXllci0+cGFpbnQoKTsKKyAgICBpZiAobV9mcHNUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBt
X3RleHR1cmVNYXBwZXItPmRyYXdSZXBhaW50Q291bnRlcihtX2xhc3RGUFMsIHNfZnBzQmFja2dy
b3VuZENvbG9yLCBzX2Zwc1BvaW50LCBzX21hdHJpeCk7CiAgICAgbV90ZXh0dXJlTWFwcGVyLT5l
bmRQYWludGluZygpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+c2V0R3JhcGhpY3NDb250ZXh0KDAp
OworICAgIG1fcGFpbnRDb3VudCsrOwogfQogCiB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2Vu
ZTo6c2V0Q29udGVudHNTaXplKGNvbnN0IEZsb2F0U2l6ZSYgY29udGVudHNTaXplKQpAQCAtNjkz
LDYgKzcxNSwxMiBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c2V0QmFja2dyb3Vu
ZENvbG9yKGNvbnN0IENvbG9yJiBjb2xvcikKICAgICBtX2JhY2tncm91bmRDb2xvciA9IGNvbG9y
OwogfQogCit2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZnBzVGltZXJGaXJlZChTY2Vu
ZVRpbWVyKikKK3sKKyAgICBtX2xhc3RGUFMgPSAoaW50KShtX3BhaW50Q291bnQgLyBtX2Zwc0lu
dGVydmFsKTsKKyAgICBtX3BhaW50Q291bnQgPSAwOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCiAKICNlbmRpZiAvLyBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90
ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKaW5kZXggNzIzNDdi
NGQwYjI3ZWZiNmEzOThiYjg3MmE2Zjc1OTc0NGRmNWY3OC4uY2RiMmYwZTAxOTY1YzA3ODk0ZGZi
NGEwM2ZmNTJiZjk5OWUyNDg4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9D
b29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaApAQCAtMjIwLDYgKzIyMCwxOCBAQCBwcml2YXRlOgog
ICAgIHR5cGVkZWYgSGFzaE1hcDxpbnQsIFJlZlB0cjxDdXN0b21GaWx0ZXJQcm9ncmFtPiA+IEN1
c3RvbUZpbHRlclByb2dyYW1NYXA7CiAgICAgQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcCBtX2N1c3Rv
bUZpbHRlclByb2dyYW1zOwogI2VuZGlmCisKKyAgICBzdGF0aWMgY29uc3QgVHJhbnNmb3JtYXRp
b25NYXRyaXggc19tYXRyaXg7CisgICAgc3RhdGljIGNvbnN0IENvbG9yIHNfZnBzQmFja2dyb3Vu
ZENvbG9yOworICAgIHN0YXRpYyBjb25zdCBGbG9hdFBvaW50IHNfZnBzUG9pbnQ7CisKKyAgICBp
bnQgbV9wYWludENvdW50OworICAgIGludCBtX2xhc3RGUFM7CisgICAgZG91YmxlIG1fZnBzSW50
ZXJ2YWw7CisKKyAgICB0eXBlZGVmIFRpbWVyPENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZT4gU2Nl
bmVUaW1lcjsKKyAgICB2b2lkIGZwc1RpbWVyRmlyZWQoU2NlbmVUaW1lciopOworICAgIFNjZW5l
VGltZXIgbV9mcHNUaW1lcjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187099</attachid>
            <date>2013-02-07 06:56:55 -0800</date>
            <delta_ts>2013-02-11 12:15:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107942-20130207105330.patch</filename>
            <type>text/plain</type>
            <size>6316</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyMDYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzI4MDE2OTQ0OTJjODQx
Y2EzYzdlNmU4ZjVhMDZiNmVmNzNhNzk5Ni4uZjNhODE5ODRmOTQ3ZDA5MjYzN2JkZjEyMDBiNWQz
Y2I1ZjdmMzUyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEzLTAyLTA3ICBCcnVu
byBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKwor
ICAgICAgICBbdGV4bWFwXSBJbXBsZW1lbnQgZnJhbWVzLXBlci1zZWNvbmQgZGVidWcgY291bnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTQy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQg
RlBTIGNvdW50ZXIgdmlhIFdFQktJVF9TSE9XX0ZQUz08aW50ZXJ2YWw+IGVudmlyb25tZW50IHZh
cmlhYmxlLAorICAgICAgICB3aGVyZSA8aW50ZXJ2YWw+IG1lYW5zIHRoZSBwZXJpb2QgaW4gc2Vj
b25kcyAoaS5lLiA9MS41KSBiZXR3ZWVuIEZQUworICAgICAgICB1cGRhdGVzIG9uIHNjcmVlbi4K
KworICAgICAgICBWaXN1YWwgZGVidWdnaW5nIGZlYXR1cmUsIG5vIG5lZWQgZm9yIG5ldyB0ZXN0
cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRH
cmFwaGljc1NjZW5lOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUpOiBBZGRlZCBjaGVjayBjb2Rl
IHRvIHRyaWdnZXIgdGltZXIgdXBkYXRlcy4KKyAgICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6cGFpbnRUb0N1cnJlbnRHTENvbnRleHQpOgorICAgICAgICAoV2ViQ29y
ZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvR3JhcGhpY3NDb250ZXh0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZnBzVGltZXJGaXJlZCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZS5oOgorICAgICAgICBJbmNyZW1lbnRzIHBhaW50IGNvdW50LCBkcmF3
cyBsYXN0IEZQUyB1c2luZyBUZXh0dXJlTWFwcGVyOjpkcmF3UmVwYWludENvdW50ZXIoKS4KKwog
MjAxMy0wMi0wNCAgQnJ1bm8gZGUgT2xpdmVpcmEgQWJpbmFkZXIgIDxicnVuby5hYmluYWRlckBi
YXN5c2tvbS5jb20+CiAKICAgICAgICAgW1dLMl0gQ29vcmRpbmF0ZWRMYXllckluZm8gaXMgYSBz
dHJ1Y3QsIG5vdCBhIGNsYXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCmluZGV4IGQyMTVmYjM2MTNiOTA3YjZiMWQ5ZjVlODkx
MTlkYmIyNjQ0ZjQ1OTQuLjRiZGZjYmEzNjc1NDJmMGFiZTM5YzhlN2I4OGFhNWUwZmU2YjJhMjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29y
ZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNz
U2NlbmUuY3BwCkBAIC00Myw2ICs0MywxMCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2Nv
bnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4IENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c19tYXRy
aXg7Citjb25zdCBDb2xvciBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNfZnBzQmFja2dyb3Vu
ZENvbG9yID0gQ29sb3I6OmJsYWNrOworY29uc3QgRmxvYXRQb2ludCBDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmU6OnNfZnBzUG9pbnQ7CisKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpk
aXNwYXRjaE9uTWFpblRocmVhZChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBmdW5jdGlvbikKIHsK
ICAgICBpZiAoaXNNYWluVGhyZWFkKCkpCkBAIC03Niw4ICs4MCwxOSBAQCBDb29yZGluYXRlZEdy
YXBoaWNzU2NlbmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZShDb29yZGluYXRlZEdyYXBoaWNz
U2NlbmVDbGllbgogI2VuZGlmCiAgICAgLCBtX2JhY2tncm91bmRDb2xvcihDb2xvcjo6d2hpdGUp
CiAgICAgLCBtX3NldERyYXdzQmFja2dyb3VuZChmYWxzZSkKKyAgICAsIG1fcGFpbnRDb3VudCgw
KQorICAgICwgbV9sYXN0RlBTKDApCisgICAgLCBtX2Zwc0ludGVydmFsKDApCisgICAgLCBtX2Zw
c1RpbWVyKHRoaXMsICZDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmZwc1RpbWVyRmlyZWQpCiB7
CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKworICAgIFN0cmluZyBzaG93RlBTRW52aXJv
bm1lbnQgPSBnZXRlbnYoIldFQktJVF9TSE9XX0ZQUyIpOworICAgIGJvb2wgb2sgPSBmYWxzZTsK
KyAgICBtX2Zwc0ludGVydmFsID0gc2hvd0ZQU0Vudmlyb25tZW50LnRvRG91YmxlKCZvayk7Cisg
ICAgLy8gU3RhcnRzIHRoZSBGUFMgdXBkYXRlIHRpbWVyIHVzaW5nIGdpdmVuIGludGVydmFsIChp
biBzZWNvbmRzKS4KKyAgICBpZiAob2sgJiYgbV9mcHNJbnRlcnZhbCkKKyAgICAgICAgbV9mcHNU
aW1lci5zdGFydFJlcGVhdGluZyhtX2Zwc0ludGVydmFsKTsKIH0KIAogQ29vcmRpbmF0ZWRHcmFw
aGljc1NjZW5lOjp+Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKCkKQEAgLTEwOCwxMyArMTIzLDEz
IEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvQ3VycmVudEdMQ29udGV4
dChjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpCiAgICAgaWYgKCFtX2FuaW1hdGlvbnNMb2NrZWQp
CiAgICAgICAgIGxheWVyLT5hcHBseUFuaW1hdGlvbnNSZWN1cnNpdmVseSgpOwogICAgIG1fdGV4
dHVyZU1hcHBlci0+YmVnaW5QYWludGluZyhQYWludEZsYWdzKTsKLSAgICBtX3RleHR1cmVNYXBw
ZXItPmJlZ2luQ2xpcChUcmFuc2Zvcm1hdGlvbk1hdHJpeCgpLCBjbGlwUmVjdCk7CisgICAgbV90
ZXh0dXJlTWFwcGVyLT5iZWdpbkNsaXAoc19tYXRyaXgsIGNsaXBSZWN0KTsKIAogICAgIGlmICht
X3NldERyYXdzQmFja2dyb3VuZCkgewogICAgICAgICBSR0JBMzIgcmdiYSA9IG1ha2VSR0JBMzJG
cm9tRmxvYXRzKG1fYmFja2dyb3VuZENvbG9yLnJlZCgpLAogICAgICAgICAgICAgbV9iYWNrZ3Jv
dW5kQ29sb3IuZ3JlZW4oKSwgbV9iYWNrZ3JvdW5kQ29sb3IuYmx1ZSgpLAogICAgICAgICAgICAg
bV9iYWNrZ3JvdW5kQ29sb3IuYWxwaGEoKSAqIG9wYWNpdHkpOwotICAgICAgICBtX3RleHR1cmVN
YXBwZXItPmRyYXdTb2xpZENvbG9yKGNsaXBSZWN0LCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCgpLCBD
b2xvcihyZ2JhKSk7CisgICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1NvbGlkQ29sb3IoY2xp
cFJlY3QsIHNfbWF0cml4LCBDb2xvcihyZ2JhKSk7CiAgICAgfQogCiAgICAgaWYgKGN1cnJlbnRS
b290TGF5ZXItPm9wYWNpdHkoKSAhPSBvcGFjaXR5IHx8IGN1cnJlbnRSb290TGF5ZXItPnRyYW5z
Zm9ybSgpICE9IG1hdHJpeCkgewpAQCAtMTI0LDggKzEzOSwxMiBAQCB2b2lkIENvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6cGFpbnRUb0N1cnJlbnRHTENvbnRleHQoY29uc3QgVHJhbnNmb3JtYXRp
b25NYXRyaQogICAgIH0KIAogICAgIGxheWVyLT5wYWludCgpOworICAgIGlmIChtX2Zwc1RpbWVy
LmlzQWN0aXZlKCkpCisgICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1JlcGFpbnRDb3VudGVy
KG1fbGFzdEZQUywgc19mcHNCYWNrZ3JvdW5kQ29sb3IsIHNfZnBzUG9pbnQsIG1hdHJpeCk7CisK
ICAgICBtX3RleHR1cmVNYXBwZXItPmVuZENsaXAoKTsKICAgICBtX3RleHR1cmVNYXBwZXItPmVu
ZFBhaW50aW5nKCk7CisgICAgbV9wYWludENvdW50Kys7CiAKICAgICBpZiAobGF5ZXItPmRlc2Nl
bmRhbnRzT3JTZWxmSGF2ZVJ1bm5pbmdBbmltYXRpb25zKCkpCiAgICAgICAgIGRpc3BhdGNoT25N
YWluVGhyZWFkKGJpbmQoJkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6dXBkYXRlVmlld3BvcnQs
IHRoaXMpKTsKQEAgLTE3MiwxMSArMTkxLDE0IEBAIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjpwYWludFRvR3JhcGhpY3NDb250ZXh0KGNhaXJvX3QqIHBhaW50ZXIpCiAgICAgbV90ZXh0
dXJlTWFwcGVyLT5iZWdpblBhaW50aW5nKCk7CiAKICAgICBpZiAobV9zZXREcmF3c0JhY2tncm91
bmQpCi0gICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1NvbGlkQ29sb3IoZ3JhcGhpY3NDb250
ZXh0LmNsaXBCb3VuZHMoKSwgVHJhbnNmb3JtYXRpb25NYXRyaXgoKSwgbV9iYWNrZ3JvdW5kQ29s
b3IpOworICAgICAgICBtX3RleHR1cmVNYXBwZXItPmRyYXdTb2xpZENvbG9yKGdyYXBoaWNzQ29u
dGV4dC5jbGlwQm91bmRzKCksIHNfbWF0cml4LCBtX2JhY2tncm91bmRDb2xvcik7CiAKICAgICBs
YXllci0+cGFpbnQoKTsKKyAgICBpZiAobV9mcHNUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBt
X3RleHR1cmVNYXBwZXItPmRyYXdSZXBhaW50Q291bnRlcihtX2xhc3RGUFMsIHNfZnBzQmFja2dy
b3VuZENvbG9yLCBzX2Zwc1BvaW50LCBzX21hdHJpeCk7CiAgICAgbV90ZXh0dXJlTWFwcGVyLT5l
bmRQYWludGluZygpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+c2V0R3JhcGhpY3NDb250ZXh0KDAp
OworICAgIG1fcGFpbnRDb3VudCsrOwogfQogCiB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2Vu
ZTo6c2V0Q29udGVudHNTaXplKGNvbnN0IEZsb2F0U2l6ZSYgY29udGVudHNTaXplKQpAQCAtNjkz
LDYgKzcxNSwxMiBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6c2V0QmFja2dyb3Vu
ZENvbG9yKGNvbnN0IENvbG9yJiBjb2xvcikKICAgICBtX2JhY2tncm91bmRDb2xvciA9IGNvbG9y
OwogfQogCit2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZnBzVGltZXJGaXJlZChTY2Vu
ZVRpbWVyKikKK3sKKyAgICBtX2xhc3RGUFMgPSBpbnQobV9wYWludENvdW50IC8gbV9mcHNJbnRl
cnZhbCk7CisgICAgbV9wYWludENvdW50ID0gMDsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQogCiAjZW5kaWYgLy8gVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4
bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCmluZGV4IDcyMzQ3YjRk
MGIyN2VmYjZhMzk4YmI4NzJhNmY3NTk3NDRkZjVmNzguLmNkYjJmMGUwMTk2NWMwNzg5NGRmYjRh
MDNmZjUyYmY5OTllMjQ4ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29v
cmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKQEAgLTIyMCw2ICsyMjAsMTggQEAgcHJpdmF0ZToKICAg
ICB0eXBlZGVmIEhhc2hNYXA8aW50LCBSZWZQdHI8Q3VzdG9tRmlsdGVyUHJvZ3JhbT4gPiBDdXN0
b21GaWx0ZXJQcm9ncmFtTWFwOwogICAgIEN1c3RvbUZpbHRlclByb2dyYW1NYXAgbV9jdXN0b21G
aWx0ZXJQcm9ncmFtczsKICNlbmRpZgorCisgICAgc3RhdGljIGNvbnN0IFRyYW5zZm9ybWF0aW9u
TWF0cml4IHNfbWF0cml4OworICAgIHN0YXRpYyBjb25zdCBDb2xvciBzX2Zwc0JhY2tncm91bmRD
b2xvcjsKKyAgICBzdGF0aWMgY29uc3QgRmxvYXRQb2ludCBzX2Zwc1BvaW50OworCisgICAgaW50
IG1fcGFpbnRDb3VudDsKKyAgICBpbnQgbV9sYXN0RlBTOworICAgIGRvdWJsZSBtX2Zwc0ludGVy
dmFsOworCisgICAgdHlwZWRlZiBUaW1lcjxDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU+IFNjZW5l
VGltZXI7CisgICAgdm9pZCBmcHNUaW1lckZpcmVkKFNjZW5lVGltZXIqKTsKKyAgICBTY2VuZVRp
bWVyIG1fZnBzVGltZXI7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187636</attachid>
            <date>2013-02-11 12:15:59 -0800</date>
            <delta_ts>2013-02-11 13:18:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107942-20130211161229.patch</filename>
            <type>text/plain</type>
            <size>5497</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNDg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTYxYjdhZWUxNjAzZmFi
YzQxNTNjNmNkMTIxYTQ3MmM4YmU2YjRlYS4uOTMwNWU5NWU0ZTQ0N2Q2NmEzZjA4NTg1NDFmMjY4
MTc5NzRkMWU2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEzLTAyLTExICBCcnVu
byBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKwor
ICAgICAgICBbdGV4bWFwXSBJbXBsZW1lbnQgZnJhbWVzLXBlci1zZWNvbmQgZGVidWcgY291bnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTQy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyBG
UFMgY291bnRlciB2aWEgV0VCS0lUX1NIT1dfRlBTPTxpbnRlcnZhbD4gZW52aXJvbm1lbnQgdmFy
aWFibGUsCisgICAgICAgIHdoZXJlIDxpbnRlcnZhbD4gbWVhbnMgdGhlIHBlcmlvZCBpbiBzZWNv
bmRzIChpLmUuID0xLjUpIGJldHdlZW4gRlBTCisgICAgICAgIHVwZGF0ZXMgb24gc2NyZWVuLiBJ
dCBpcyBtZWFzdXJlZCBieSBjb3VudGluZyBDR1NjZW5lOjpwYWludFRvKiBjYWxscworICAgICAg
ICBhbmQgaXMgcGFpbnRlZCB1c2luZyBkcmF3UmVwYWludENvdW50ZXIoKSBhZnRlciBUZXh0dXJl
TWFwcGVyTGF5ZXIgaGFzCisgICAgICAgIGZpbmlzaGVkIHBhaW50aW5nIGl0cyBjb250ZW50cy4K
KworICAgICAgICBWaXN1YWwgZGVidWdnaW5nIGZlYXR1cmUsIG5vIG5lZWQgZm9yIG5ldyB0ZXN0
cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRH
cmFwaGljc1NjZW5lOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUpOgorICAgICAgICAoV2ViQ29y
ZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpwYWludFRvQ3VycmVudEdMQ29udGV4dCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnBhaW50VG9HcmFwaGlj
c0NvbnRleHQpOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjp1
cGRhdGVGUFMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRl
ZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaDoKKwogMjAxMy0wMi0wNCAgQnJ1bm8gZGUgT2xp
dmVpcmEgQWJpbmFkZXIgIDxicnVuby5hYmluYWRlckBiYXN5c2tvbS5jb20+CiAKICAgICAgICAg
W1dLMl0gQ29vcmRpbmF0ZWRMYXllckluZm8gaXMgYSBzdHJ1Y3QsIG5vdCBhIGNsYXNzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0
ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3Bw
CmluZGV4IGQyMTVmYjM2MTNiOTA3YjZiMWQ5ZjVlODkxMTlkYmIyNjQ0ZjQ1OTQuLjhkNjA0YmJh
ZTY3YmZkODk5NGM0ZjdmYmUyOTE2ZjcwOTAzZjg2YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBo
aWNzU2NlbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1h
cC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwCkBAIC0zMiw2ICszMiw3
IEBACiAjaW5jbHVkZSAiVGV4dHVyZU1hcHBlckxheWVyLmgiCiAjaW5jbHVkZSA8T3BlbkdMU2hp
bXMuaD4KICNpbmNsdWRlIDx3dGYvQXRvbWljcy5oPgorI2luY2x1ZGUgPHd0Zi9DdXJyZW50VGlt
ZS5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAKICNpZiBFTkFCTEUoQ1NTX1NIQURF
UlMpCkBAIC03Niw4ICs3NywyMSBAQCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OkNvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZShDb29yZGluYXRlZEdyYXBoaWNzU2NlbmVDbGllbgogI2VuZGlmCiAg
ICAgLCBtX2JhY2tncm91bmRDb2xvcihDb2xvcjo6d2hpdGUpCiAgICAgLCBtX3NldERyYXdzQmFj
a2dyb3VuZChmYWxzZSkKKyAgICAsIG1faXNTaG93aW5nRlBTKGZhbHNlKQorICAgICwgbV9mcHNJ
bnRlcnZhbCgwKQorICAgICwgbV9mcHNUaW1lc3RhbXAoMCkKKyAgICAsIG1fbGFzdEZQUygwKQor
ICAgICwgbV9mcmFtZUNvdW50KDApCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKwor
ICAgIFN0cmluZyBzaG93RlBTRW52aXJvbm1lbnQgPSBnZXRlbnYoIldFQktJVF9TSE9XX0ZQUyIp
OworICAgIGJvb2wgb2sgPSBmYWxzZTsKKyAgICBtX2Zwc0ludGVydmFsID0gc2hvd0ZQU0Vudmly
b25tZW50LnRvRG91YmxlKCZvayk7CisgICAgaWYgKG9rICYmIG1fZnBzSW50ZXJ2YWwpIHsKKyAg
ICAgICAgbV9pc1Nob3dpbmdGUFMgPSB0cnVlOworICAgICAgICBtX2Zwc1RpbWVzdGFtcCA9IFdU
Rjo6Y3VycmVudFRpbWUoKTsKKyAgICB9CiB9CiAKIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6
fkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpCkBAIC0xMjQsNiArMTM4LDggQEAgdm9pZCBDb29y
ZGluYXRlZEdyYXBoaWNzU2NlbmU6OnBhaW50VG9DdXJyZW50R0xDb250ZXh0KGNvbnN0IFRyYW5z
Zm9ybWF0aW9uTWF0cmkKICAgICB9CiAKICAgICBsYXllci0+cGFpbnQoKTsKKyAgICBpZiAobV9p
c1Nob3dpbmdGUFMpCisgICAgICAgIHVwZGF0ZUZQUyhjbGlwUmVjdC5sb2NhdGlvbigpLCBtYXRy
aXgpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+ZW5kQ2xpcCgpOwogICAgIG1fdGV4dHVyZU1hcHBl
ci0+ZW5kUGFpbnRpbmcoKTsKIApAQCAtMTcxLDEwICsxODcsMTMgQEAgdm9pZCBDb29yZGluYXRl
ZEdyYXBoaWNzU2NlbmU6OnBhaW50VG9HcmFwaGljc0NvbnRleHQoY2Fpcm9fdCogcGFpbnRlcikK
ICAgICBtX3RleHR1cmVNYXBwZXItPnNldEdyYXBoaWNzQ29udGV4dCgmZ3JhcGhpY3NDb250ZXh0
KTsKICAgICBtX3RleHR1cmVNYXBwZXItPmJlZ2luUGFpbnRpbmcoKTsKIAorICAgIEludFJlY3Qg
Y2xpcFJlY3QgPSBncmFwaGljc0NvbnRleHQuY2xpcEJvdW5kcygpOwogICAgIGlmIChtX3NldERy
YXdzQmFja2dyb3VuZCkKLSAgICAgICAgbV90ZXh0dXJlTWFwcGVyLT5kcmF3U29saWRDb2xvcihn
cmFwaGljc0NvbnRleHQuY2xpcEJvdW5kcygpLCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCgpLCBtX2Jh
Y2tncm91bmRDb2xvcik7CisgICAgICAgIG1fdGV4dHVyZU1hcHBlci0+ZHJhd1NvbGlkQ29sb3Io
Y2xpcFJlY3QsIFRyYW5zZm9ybWF0aW9uTWF0cml4KCksIG1fYmFja2dyb3VuZENvbG9yKTsKIAog
ICAgIGxheWVyLT5wYWludCgpOworICAgIGlmIChtX2lzU2hvd2luZ0ZQUykKKyAgICAgICAgdXBk
YXRlRlBTKGNsaXBSZWN0LmxvY2F0aW9uKCkpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+ZW5kUGFp
bnRpbmcoKTsKICAgICBtX3RleHR1cmVNYXBwZXItPnNldEdyYXBoaWNzQ29udGV4dCgwKTsKIH0K
QEAgLTY5Myw2ICs3MTIsMjAgQEAgdm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnNldEJh
Y2tncm91bmRDb2xvcihjb25zdCBDb2xvciYgY29sb3IpCiAgICAgbV9iYWNrZ3JvdW5kQ29sb3Ig
PSBjb2xvcjsKIH0KIAordm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnVwZGF0ZUZQUyhj
b25zdCBGbG9hdFBvaW50JiBsb2NhdGlvbiwgY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1h
dHJpeCkKK3sKKyAgICBtX2ZyYW1lQ291bnQrKzsKKyAgICBjb25zdCBkb3VibGUgZGVsdGEgPSBX
VEY6OmN1cnJlbnRUaW1lKCkgLSBtX2Zwc1RpbWVzdGFtcDsKKyAgICBpZiAoZGVsdGEgPj0gbV9m
cHNJbnRlcnZhbCkgeworICAgICAgICBtX2xhc3RGUFMgPSBpbnQobV9mcmFtZUNvdW50IC8gZGVs
dGEpOworICAgICAgICBtX2ZyYW1lQ291bnQgPSAwOworICAgICAgICBtX2Zwc1RpbWVzdGFtcCAr
PSBkZWx0YTsKKyAgICB9CisKKyAgICAvLyBGSVhNRTogZHJhd1JlcGFpbnRDb3VudGVyKCkgc2hv
dWxkIHNhdmUgYSB0ZXh0dXJlIGFuZCByZS11c2Ugd2hlbmV2ZXIgcG9zc2libGUuCisgICAgbV90
ZXh0dXJlTWFwcGVyLT5kcmF3UmVwYWludENvdW50ZXIobV9sYXN0RlBTLCBDb2xvcjo6YmxhY2ss
IGxvY2F0aW9uLCBtYXRyaXgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRp
ZiAvLyBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGlj
c1NjZW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRp
bmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKaW5kZXggYTkxN2M0NmI2MDA3NDI1YmEz
ZmU1ZDkwNTM2NTI0Y2JmNDI1MjE1Zi4uNGEzOTQ4MjllMTRhMjQ5OGI4M2E5OTAwNWM3MzU2ZDU2
OWE1NjhjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4
bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdy
YXBoaWNzU2NlbmUuaApAQCAtMTc0LDYgKzE3NCw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZW1v
dmVCYWNraW5nU3RvcmVJZk5lZWRlZChHcmFwaGljc0xheWVyKik7CiAgICAgdm9pZCByZXNldEJh
Y2tpbmdTdG9yZVNpemVUb0xheWVyU2l6ZShHcmFwaGljc0xheWVyKik7CiAKKyAgICB2b2lkIHVw
ZGF0ZUZQUyhjb25zdCBGbG9hdFBvaW50JiwgY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmID0g
VHJhbnNmb3JtYXRpb25NYXRyaXgoKSk7CisKICAgICBGbG9hdFNpemUgbV9jb250ZW50c1NpemU7
CiAgICAgRmxvYXRSZWN0IG1fdmlzaWJsZUNvbnRlbnRzUmVjdDsKIApAQCAtMjI0LDYgKzIyNiwx
MiBAQCBwcml2YXRlOgogICAgIHR5cGVkZWYgSGFzaE1hcDxpbnQsIFJlZlB0cjxDdXN0b21GaWx0
ZXJQcm9ncmFtPiA+IEN1c3RvbUZpbHRlclByb2dyYW1NYXA7CiAgICAgQ3VzdG9tRmlsdGVyUHJv
Z3JhbU1hcCBtX2N1c3RvbUZpbHRlclByb2dyYW1zOwogI2VuZGlmCisKKyAgICBib29sIG1faXNT
aG93aW5nRlBTOworICAgIGRvdWJsZSBtX2Zwc0ludGVydmFsOworICAgIGRvdWJsZSBtX2Zwc1Rp
bWVzdGFtcDsKKyAgICBpbnQgbV9sYXN0RlBTOworICAgIGludCBtX2ZyYW1lQ291bnQ7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>
<flag name="review"
          id="207515"
          type_id="1"
          status="+"
          setter="noam"
    />
    <flag name="commit-queue"
          id="207516"
          type_id="3"
          status="-"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187667</attachid>
            <date>2013-02-11 14:08:00 -0800</date>
            <delta_ts>2013-02-11 15:09:22 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-107942-20130211180429.patch</filename>
            <type>text/plain</type>
            <size>5514</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNDg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTYxYjdhZWUxNjAzZmFi
YzQxNTNjNmNkMTIxYTQ3MmM4YmU2YjRlYS4uYzViMzlkYzNhZjhhYWNlNzAwM2VhYTYzNTYyYTY3
NzBmZGY5M2JiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTAyLTExICBCcnVu
byBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKwor
ICAgICAgICBbdGV4bWFwXSBJbXBsZW1lbnQgZnJhbWVzLXBlci1zZWNvbmQgZGVidWcgY291bnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTQy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTm9hbSBSb3NlbnRoYWwuCisKKyAgICAgICAgQWRkcyBG
UFMgY291bnRlciB2aWEgV0VCS0lUX1NIT1dfRlBTPTxpbnRlcnZhbD4gZW52aXJvbm1lbnQgdmFy
aWFibGUsCisgICAgICAgIHdoZXJlIDxpbnRlcnZhbD4gaXMgdGhlIHBlcmlvZCBpbiBzZWNvbmRz
IChpLmUuID0xLjUpIGJldHdlZW4gRlBTCisgICAgICAgIHVwZGF0ZXMgb24gc2NyZWVuLiBJdCBp
cyBtZWFzdXJlZCBieSBjb3VudGluZworICAgICAgICBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6
OnBhaW50VG8qIGNhbGxzIGFuZCBpcyBwYWludGVkIHVzaW5nCisgICAgICAgIGRyYXdSZXBhaW50
Q291bnRlcigpIGFmdGVyIFRleHR1cmVNYXBwZXJMYXllciBoYXMgZmluaXNoZWQgcGFpbnRpbmcg
aXRzCisgICAgICAgIGNvbnRlbnRzLgorCisgICAgICAgIFZpc3VhbCBkZWJ1Z2dpbmcgZmVhdHVy
ZSwgbm8gbmVlZCBmb3IgbmV3IHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZSk6CisgICAgICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OnBhaW50
VG9DdXJyZW50R0xDb250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvb3JkaW5hdGVkR3JhcGhp
Y3NTY2VuZTo6cGFpbnRUb0dyYXBoaWNzQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpDb29y
ZGluYXRlZEdyYXBoaWNzU2NlbmU6OnVwZGF0ZUZQUyk6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oOgorCiAy
MDEzLTAyLTA0ICBCcnVubyBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5vLmFiaW5hZGVyQGJh
c3lza29tLmNvbT4KIAogICAgICAgICBbV0syXSBDb29yZGluYXRlZExheWVySW5mbyBpcyBhIHN0
cnVjdCwgbm90IGEgY2xhc3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3Jk
aW5hdGVkR3JhcGhpY3NTY2VuZS5jcHAKaW5kZXggZDIxNWZiMzYxM2I5MDdiNmIxZDlmNWU4OTEx
OWRiYjI2NDRmNDU5NC4uNjI4MWJkNmViMWIxOTRkMDhkNjdkZmMxNzAzZDQ4ZDg2MjM1Mjg1YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3Jk
aW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZS5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJUZXh0dXJlTWFwcGVyTGF5ZXIu
aCIKICNpbmNsdWRlIDxPcGVuR0xTaGltcy5oPgogI2luY2x1ZGUgPHd0Zi9BdG9taWNzLmg+Cisj
aW5jbHVkZSA8d3RmL0N1cnJlbnRUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4K
IAogI2lmIEVOQUJMRShDU1NfU0hBREVSUykKQEAgLTc2LDggKzc3LDIxIEBAIENvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKENvb3JkaW5hdGVkR3JhcGhp
Y3NTY2VuZUNsaWVuCiAjZW5kaWYKICAgICAsIG1fYmFja2dyb3VuZENvbG9yKENvbG9yOjp3aGl0
ZSkKICAgICAsIG1fc2V0RHJhd3NCYWNrZ3JvdW5kKGZhbHNlKQorICAgICwgbV9pc1Nob3dpbmdG
UFMoZmFsc2UpCisgICAgLCBtX2Zwc0ludGVydmFsKDApCisgICAgLCBtX2Zwc1RpbWVzdGFtcCgw
KQorICAgICwgbV9sYXN0RlBTKDApCisgICAgLCBtX2ZyYW1lQ291bnQoMCkKIHsKICAgICBBU1NF
UlQoaXNNYWluVGhyZWFkKCkpOworCisgICAgU3RyaW5nIHNob3dGUFNFbnZpcm9ubWVudCA9IGdl
dGVudigiV0VCS0lUX1NIT1dfRlBTIik7CisgICAgYm9vbCBvayA9IGZhbHNlOworICAgIG1fZnBz
SW50ZXJ2YWwgPSBzaG93RlBTRW52aXJvbm1lbnQudG9Eb3VibGUoJm9rKTsKKyAgICBpZiAob2sg
JiYgbV9mcHNJbnRlcnZhbCkgeworICAgICAgICBtX2lzU2hvd2luZ0ZQUyA9IHRydWU7CisgICAg
ICAgIG1fZnBzVGltZXN0YW1wID0gV1RGOjpjdXJyZW50VGltZSgpOworICAgIH0KIH0KIAogQ29v
cmRpbmF0ZWRHcmFwaGljc1NjZW5lOjp+Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKCkKQEAgLTEy
NCw2ICsxMzgsOCBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6cGFpbnRUb0N1cnJl
bnRHTENvbnRleHQoY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaQogICAgIH0KIAogICAgIGxheWVy
LT5wYWludCgpOworICAgIGlmIChtX2lzU2hvd2luZ0ZQUykKKyAgICAgICAgdXBkYXRlRlBTKGNs
aXBSZWN0LmxvY2F0aW9uKCksIG1hdHJpeCk7CiAgICAgbV90ZXh0dXJlTWFwcGVyLT5lbmRDbGlw
KCk7CiAgICAgbV90ZXh0dXJlTWFwcGVyLT5lbmRQYWludGluZygpOwogCkBAIC0xNzEsMTAgKzE4
NywxMyBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6cGFpbnRUb0dyYXBoaWNzQ29u
dGV4dChjYWlyb190KiBwYWludGVyKQogICAgIG1fdGV4dHVyZU1hcHBlci0+c2V0R3JhcGhpY3ND
b250ZXh0KCZncmFwaGljc0NvbnRleHQpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+YmVnaW5QYWlu
dGluZygpOwogCisgICAgSW50UmVjdCBjbGlwUmVjdCA9IGdyYXBoaWNzQ29udGV4dC5jbGlwQm91
bmRzKCk7CiAgICAgaWYgKG1fc2V0RHJhd3NCYWNrZ3JvdW5kKQotICAgICAgICBtX3RleHR1cmVN
YXBwZXItPmRyYXdTb2xpZENvbG9yKGdyYXBoaWNzQ29udGV4dC5jbGlwQm91bmRzKCksIFRyYW5z
Zm9ybWF0aW9uTWF0cml4KCksIG1fYmFja2dyb3VuZENvbG9yKTsKKyAgICAgICAgbV90ZXh0dXJl
TWFwcGVyLT5kcmF3U29saWRDb2xvcihjbGlwUmVjdCwgVHJhbnNmb3JtYXRpb25NYXRyaXgoKSwg
bV9iYWNrZ3JvdW5kQ29sb3IpOwogCiAgICAgbGF5ZXItPnBhaW50KCk7CisgICAgaWYgKG1faXNT
aG93aW5nRlBTKQorICAgICAgICB1cGRhdGVGUFMoY2xpcFJlY3QubG9jYXRpb24oKSk7CiAgICAg
bV90ZXh0dXJlTWFwcGVyLT5lbmRQYWludGluZygpOwogICAgIG1fdGV4dHVyZU1hcHBlci0+c2V0
R3JhcGhpY3NDb250ZXh0KDApOwogfQpAQCAtNjkzLDYgKzcxMiwyMCBAQCB2b2lkIENvb3JkaW5h
dGVkR3JhcGhpY3NTY2VuZTo6c2V0QmFja2dyb3VuZENvbG9yKGNvbnN0IENvbG9yJiBjb2xvcikK
ICAgICBtX2JhY2tncm91bmRDb2xvciA9IGNvbG9yOwogfQogCit2b2lkIENvb3JkaW5hdGVkR3Jh
cGhpY3NTY2VuZTo6dXBkYXRlRlBTKGNvbnN0IEZsb2F0UG9pbnQmIGxvY2F0aW9uLCBjb25zdCBU
cmFuc2Zvcm1hdGlvbk1hdHJpeCYgbWF0cml4KQoreworICAgIG1fZnJhbWVDb3VudCsrOworICAg
IGRvdWJsZSBkZWx0YSA9IFdURjo6Y3VycmVudFRpbWUoKSAtIG1fZnBzVGltZXN0YW1wOworICAg
IGlmIChkZWx0YSA+PSBtX2Zwc0ludGVydmFsKSB7CisgICAgICAgIG1fbGFzdEZQUyA9IGludCht
X2ZyYW1lQ291bnQgLyBkZWx0YSk7CisgICAgICAgIG1fZnJhbWVDb3VudCA9IDA7CisgICAgICAg
IG1fZnBzVGltZXN0YW1wICs9IGRlbHRhOworICAgIH0KKworICAgIC8vIEZJWE1FOiBkcmF3UmVw
YWludENvdW50ZXIoKSBzaG91bGQgc2F2ZSBhIHRleHR1cmUgYW5kIHJlLXVzZSB3aGVuZXZlciBw
b3NzaWJsZS4KKyAgICBtX3RleHR1cmVNYXBwZXItPmRyYXdSZXBhaW50Q291bnRlcihtX2xhc3RG
UFMsIENvbG9yOjpibGFjaywgbG9jYXRpb24sIG1hdHJpeCk7Cit9CisKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKIAogI2VuZGlmIC8vIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9D
b29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaAppbmRleCBh
OTE3YzQ2YjYwMDc0MjViYTNmZTVkOTA1MzY1MjRjYmY0MjUyMTVmLi40YTM5NDgyOWUxNGEyNDk4
YjgzYTk5MDA1YzczNTZkNTY5YTU2OGM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5l
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5h
dGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCkBAIC0xNzQsNiArMTc0LDggQEAgcHJpdmF0
ZToKICAgICB2b2lkIHJlbW92ZUJhY2tpbmdTdG9yZUlmTmVlZGVkKEdyYXBoaWNzTGF5ZXIqKTsK
ICAgICB2b2lkIHJlc2V0QmFja2luZ1N0b3JlU2l6ZVRvTGF5ZXJTaXplKEdyYXBoaWNzTGF5ZXIq
KTsKIAorICAgIHZvaWQgdXBkYXRlRlBTKGNvbnN0IEZsb2F0UG9pbnQmLCBjb25zdCBUcmFuc2Zv
cm1hdGlvbk1hdHJpeCYgPSBUcmFuc2Zvcm1hdGlvbk1hdHJpeCgpKTsKKwogICAgIEZsb2F0U2l6
ZSBtX2NvbnRlbnRzU2l6ZTsKICAgICBGbG9hdFJlY3QgbV92aXNpYmxlQ29udGVudHNSZWN0Owog
CkBAIC0yMjQsNiArMjI2LDEyIEBAIHByaXZhdGU6CiAgICAgdHlwZWRlZiBIYXNoTWFwPGludCwg
UmVmUHRyPEN1c3RvbUZpbHRlclByb2dyYW0+ID4gQ3VzdG9tRmlsdGVyUHJvZ3JhbU1hcDsKICAg
ICBDdXN0b21GaWx0ZXJQcm9ncmFtTWFwIG1fY3VzdG9tRmlsdGVyUHJvZ3JhbXM7CiAjZW5kaWYK
KworICAgIGJvb2wgbV9pc1Nob3dpbmdGUFM7CisgICAgZG91YmxlIG1fZnBzSW50ZXJ2YWw7Cisg
ICAgZG91YmxlIG1fZnBzVGltZXN0YW1wOworICAgIGludCBtX2xhc3RGUFM7CisgICAgaW50IG1f
ZnJhbWVDb3VudDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>