<?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>20226</bug_id>
          
          <creation_ts>2008-07-30 03:43:26 -0700</creation_ts>
          <short_desc>BORDER attribute with the IMG tag, using percentage values not working.</short_desc>
          <delta_ts>2011-09-02 01:07:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Images</component>
          <version>525.x (Safari 3.1)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>deepak.sherveghar</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tabatkins</cc>
    
    <cc>webkit</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>87373</commentid>
    <comment_count>0</comment_count>
    <who name="">deepak.sherveghar</who>
    <bug_when>2008-07-30 03:43:26 -0700</bug_when>
    <thetext>I have this simple HTML page.
&lt;HTML&gt;
   &lt;HEAD/&gt;
   &lt;BODY&gt;
       &lt;IMG SRC=&quot;abc.gif&quot; border=&quot;0%&quot; ALT=&quot;Alt Text&quot;&gt;
   &lt;/BODY&gt;
&lt;/HTML&gt;

Where width and height of &quot;abc.gif&quot; is 320x240.

Expected result:
A black border should surround the image, of a size that is the specified percentage of the available space, for  &lt;IMG&gt; tag above.

Actual result:
No matter what the size of border specified in terms of percentage, we always see a SOLID border of width 3 pixels.

Note that if we specify the border in terms of pixel&apos;s then everthing works fine.

Also I have debugged with a webkit windows (cairo/CURL) build and found that 
the problem is with the cssParser.

For boder=10% (anyvalue in terms of %) CSSParser::parseValue returns false.
For border values specified in terms of pixels CSSParser::parseValue returns true and everything works fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87376</commentid>
    <comment_count>1</comment_count>
    <who name="">deepak.sherveghar</who>
    <bug_when>2008-07-30 03:48:07 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; I have this simple HTML page.
&gt; &lt;HTML&gt;
&gt;    &lt;HEAD/&gt;
&gt;    &lt;BODY&gt;
&gt;        &lt;IMG SRC=&quot;abc.gif&quot; border=&quot;0%&quot; ALT=&quot;Alt Text&quot;&gt;
&gt;    &lt;/BODY&gt;
&gt; &lt;/HTML&gt;
&gt; 
&gt; Where width and height of &quot;abc.gif&quot; is 320x240.
&gt; 
&gt; Expected result:
&gt; A black border should surround the image, of a size that is the specified
&gt; percentage of the available space, for  &lt;IMG&gt; tag above.
&gt; 
&gt; Actual result:
&gt; No matter what the size of border specified in terms of percentage, we always
&gt; see a SOLID border of width 3 pixels.
&gt; 
&gt; Note that if we specify the border in terms of pixel&apos;s then everthing works
&gt; fine.
&gt; 
&gt; Also I have debugged with a webkit windows (cairo/CURL) build and found that 
&gt; the problem is with the cssParser.
&gt; 
&gt; For boder=10% (anyvalue in terms of %) CSSParser::parseValue returns false.
&gt; For border values specified in terms of pixels CSSParser::parseValue returns
&gt; true and everything works fine.
&gt; 

sorry for small typo ..... 
the above IMG tag should be

 &lt;IMG SRC=&quot;abc.gif&quot; border=&quot;10%&quot; ALT=&quot;Alt Text&quot;&gt; 

with border as 10% and not 0%.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87406</commentid>
    <comment_count>2</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-07-30 11:30:35 -0700</bug_when>
    <thetext>What do other browsers do?  I suspect they drop the % and treat the number like a pixel value.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87411</commentid>
    <comment_count>3</comment_count>
    <who name="">deepak.sherveghar</who>
    <bug_when>2008-07-30 11:57:52 -0700</bug_when>
    <thetext>Other Desktop Browser&apos;s like IE 7 and firefox 2.0 do display the expected behaviour (border around the image).

Also I installed FIREBUG (a tool that allows to  inspect, edit and monitor CSS, HTML and JavaScript live in any web page).

I inspected the HTML code and found that it does seem to remove the % sign.
AS all i can see in the HTML code is
       &lt;IMG SRC=&quot;abc.gif&quot; border=&quot;10&quot; ALT=&quot;Alt Text&quot;&gt;

No percent sign.

I Inspected and edited the border&apos;s value in terms of pixel and percent e.g border=10 and border=10%

Both the above values for border (10 and 10%) show border with same thickness in firefox.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87412</commentid>
    <comment_count>4</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-07-30 11:58:45 -0700</bug_when>
    <thetext>So we just need to strip % from the string we pass to the CSS parser.  Sounds easy enough.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87416</commentid>
    <comment_count>5</comment_count>
    <who name="">deepak.sherveghar</who>
    <bug_when>2008-07-30 12:40:19 -0700</bug_when>
    <thetext>I tried removing the &apos;%&apos; sign from the string .. it does render the border properly now.

But Dave one question. 
I just couldnt figure out why does our css parser cant deal with  &apos;%&apos; unit properly ??? It does seem to work with all other units like pcs and pixels ..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401146</commentid>
    <comment_count>6</comment_count>
      <attachid>92941</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2011-05-10 05:51:44 -0700</bug_when>
    <thetext>Created attachment 92941
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401148</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-05-10 05:56:02 -0700</bug_when>
    <thetext>Attachment 92941 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/fast...&quot; exit_code: 1

Source/WebCore/ChangeLog:11:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 9 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>401155</commentid>
    <comment_count>8</comment_count>
      <attachid>92944</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2011-05-10 06:10:18 -0700</bug_when>
    <thetext>Created attachment 92944
Same patch without tabs

Removed the tabs from the first patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401174</commentid>
    <comment_count>9</comment_count>
      <attachid>92949</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2011-05-10 07:06:28 -0700</bug_when>
    <thetext>Created attachment 92949
Patch

Forgot to set up ? for review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438521</commentid>
    <comment_count>10</comment_count>
      <attachid>92949</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-18 09:42:11 -0700</bug_when>
    <thetext>Comment on attachment 92949
Patch

Does this match other browsers, and the spec?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438549</commentid>
    <comment_count>11</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-18 10:26:38 -0700</bug_when>
    <thetext>Normally invalid units cause the entire declaration to be dropped.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438558</commentid>
    <comment_count>12</comment_count>
      <attachid>101171</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2011-07-18 10:37:03 -0700</bug_when>
    <thetext>Created attachment 101171
Simpler test case

Attached a simple test case containing a html and a png.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438560</commentid>
    <comment_count>13</comment_count>
    <who name="Tab Atkins">tabatkins</who>
    <bug_when>2011-07-18 10:41:36 -0700</bug_when>
    <thetext>The behavior of border=&quot;10%&quot; should be to apply a 10px border.

First, given that you are using a presentational attribute, we use HTML&apos;s rules for parsing it.  The &apos;border&apos; attribute is defined as &quot;mapping to a pixel length property&quot; &lt;http://www.whatwg.org/specs/web-apps/current-work/complete/rendering.html#maps-to-the-pixel-length-property&gt;, which means we first try to parse it with the &quot;rules for parsing non-negative integers&quot; &lt;http://www.whatwg.org/specs/web-apps/current-work/complete/common-microsyntaxes.html#rules-for-parsing-non-negative-integers&gt;.  When you do that, it turns the value &quot;10&quot;, which is then interpreted as the CSS length 10px.

Note that if you were to use &quot;border-width: 10%&quot; in actual CSS, it would have no effect, because the border-width property is defined as taking &quot;&lt;length&gt; | thin | medium | thick&quot; in both CSS 2.1 and the current ED of the Backgrounds &amp; Borders module.  Thus, a declaration like that would be invalid and be ignored.

Since this is an actual bug in our parser, I&apos;ve marked this bug as confirmed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>438566</commentid>
    <comment_count>14</comment_count>
    <who name="Tab Atkins">tabatkins</who>
    <bug_when>2011-07-18 10:44:40 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Created an attachment (id=92944) [details]
&gt; Same patch without tabs
&gt; 
&gt; Removed the tabs from the first patch.

I&apos;m not yet a reviewer, so I can&apos;t r- the patch, but I&apos;d like to.  While this solves the problem at hand, it would be better to implement the algorithm as the spec specifies, where you simply ignore whitespace and &apos;+&apos; on the front of the number, then grab as many contiguous digits as possible and interpret that as a length.  Special-casing &apos;%&apos; here is incorrect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440977</commentid>
    <comment_count>15</comment_count>
      <attachid>101737</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2011-07-22 09:17:51 -0700</bug_when>
    <thetext>Created attachment 101737
Patch 2

Second version of patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440991</commentid>
    <comment_count>16</comment_count>
    <who name="Tab Atkins">tabatkins</who>
    <bug_when>2011-07-22 10:34:12 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; Created an attachment (id=101737) [details]
&gt; Patch 2
&gt; 
&gt; Second version of patch.

I&apos;m not yet experience enough to comment on the overall style, but I&apos;m happy with the direction of this patch.  Yay!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441022</commentid>
    <comment_count>17</comment_count>
      <attachid>101737</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-22 11:02:43 -0700</bug_when>
    <thetext>Comment on attachment 101737
Patch 2

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

&gt; Source/WebCore/html/HTMLImageElement.cpp:101
&gt; +int HTMLImageElement::parseBorderWidthAttribute(Attribute* attr)

Does this need to be a class method? I don&apos;t see it using any members.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441058</commentid>
    <comment_count>18</comment_count>
      <attachid>101748</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2011-07-22 11:49:39 -0700</bug_when>
    <thetext>Created attachment 101748
Patch 3

The method to parse the border with attribute is made static as it does not touch any of the HTMLImageElement members. Also, i changed its return type to unsigned int.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441126</commentid>
    <comment_count>19</comment_count>
      <attachid>101748</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-22 13:28:09 -0700</bug_when>
    <thetext>Comment on attachment 101748
Patch 3

Clearing flags on attachment: 101748

Committed r91601: &lt;http://trac.webkit.org/changeset/91601&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441127</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-22 13:28:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461088</commentid>
    <comment_count>21</comment_count>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2011-09-02 01:07:40 -0700</bug_when>
    <thetext>*** Bug 48594 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92941</attachid>
            <date>2011-05-10 05:51:44 -0700</date>
            <delta_ts>2011-05-10 06:10:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch20226.txt</filename>
            <type>text/plain</type>
            <size>7092</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg2MTQ0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDUtMTAgIE1paG5lYSBP
dmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQk9SREVSIGF0dHJpYnV0ZSB3aXRoIHRoZSBJTUcgdGFnLCB1
c2luZyBwZXJjZW50YWdlIHZhbHVlcyBub3Qgd29ya2luZy4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjI2CisgICAgICAgIAorICAgICAgICBCb3Jk
ZXIgYXR0cmlidXRlIGRvZXMgbm90IGFjY2VwdCAlIHZhbHVlcy4gQ2hhbmdlZCBwYXJzaW5nIHNv
IHRoYXQgd2hlbiAlIGlzIGZvdW5kLAorICAgICAgICBwYXJzaW5nIGlzIHN0b3BwZWQgYW5kIHRo
ZSBkaWdpdHMgZm91bmQgc28gZmFyICh3aXRob3V0ICUpIGFyZSB1c2VkIHRvIHNldCB1cCB0aGUg
dmFsdWUuCisKKwkJSSBoYXZlIG1vZGlmaWVkIGV4aXN0aW5nIGJvcmRlciB0ZXN0IGZvciBpbWFn
ZXMsIGZhc3QvaW1hZ2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanMuCisKKyAgICAgICAgKiBkb20v
U3R5bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjphZGRD
U1NMZW5ndGgpOgorICAgICAgICAqIGRvbS9TdHlsZWRFbGVtZW50Lmg6CisgICAgICAgICogaHRt
bC9IVE1MSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbWFnZUVsZW1l
bnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgKiBodG1sL0hUTUxPYmplY3RFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxPYmplY3RFbGVtZW50OjpwYXJzZU1hcHBl
ZEF0dHJpYnV0ZSk6CisgICAgICAgICogcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tOgorCiAy
MDExLTA1LTEwICBCZW4gTXVyZG9jaCAgPGJlbm1AZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBTdGV2ZSBCbG9jay4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVt
ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5j
cHAJKHJldmlzaW9uIDg2MTMxKQorKysgU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yODEsNyArMjgxLDcgQEAgdm9pZCBTdHlsZWRFbGVtZW50
OjphZGRDU1NJbWFnZVByb3BlcnR5KAogICAgIGF0dHJpYnV0ZS0+ZGVjbCgpLT5zZXRJbWFnZVBy
b3BlcnR5KGlkLCB1cmwsIGZhbHNlKTsKIH0KIAotdm9pZCBTdHlsZWRFbGVtZW50OjphZGRDU1NM
ZW5ndGgoQXR0cmlidXRlKiBhdHRyLCBpbnQgaWQsIGNvbnN0IFN0cmluZyAmdmFsdWUpCit2b2lk
IFN0eWxlZEVsZW1lbnQ6OmFkZENTU0xlbmd0aChBdHRyaWJ1dGUqIGF0dHIsIGludCBpZCwgY29u
c3QgU3RyaW5nICZ2YWx1ZSwgYm9vbCBwZXJjZW50QWxsb3dlZCkKIHsKICAgICAvLyBGSVhNRTog
VGhpcyBmdW5jdGlvbiBzaG91bGQgbm90IHNwaW4gdXAgdGhlIENTUyBwYXJzZXIsIGJ1dCBzaG91
bGQgaW5zdGVhZCBqdXN0IGZpZ3VyZSBvdXQgdGhlIGNvcnJlY3QKICAgICAvLyBsZW5ndGggdW5p
dCBhbmQgbWFrZSB0aGUgYXBwcm9wcmlhdGUgcGFyc2VkIHZhbHVlLgpAQCAtMzAxLDcgKzMwMSw3
IEBAIHZvaWQgU3R5bGVkRWxlbWVudDo6YWRkQ1NTTGVuZ3RoKEF0dHJpYnUKICAgICAgICAgICAg
IGlmIChjYyA+ICc5JykKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGlmIChj
YyA8ICcwJykgewotICAgICAgICAgICAgICAgIGlmIChjYyA9PSAnJScgfHwgY2MgPT0gJyonKQor
ICAgICAgICAgICAgICAgIGlmICgoY2MgPT0gJyUnICYmIHBlcmNlbnRBbGxvd2VkKSB8fCBjYyA9
PSAnKicpCiAgICAgICAgICAgICAgICAgICAgIGwrKzsKICAgICAgICAgICAgICAgICBpZiAoY2Mg
IT0gJy4nKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2RvbS9TdHlsZWRFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZG9tL1N0
eWxlZEVsZW1lbnQuaAkocmV2aXNpb24gODYxMzEpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vU3R5
bGVkRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw3ICs0MSw3IEBAIHB1YmxpYzoKICAg
ICBib29sIGhhc01hcHBlZEF0dHJpYnV0ZXMoKSBjb25zdCB7IHJldHVybiBhdHRyaWJ1dGVNYXAo
KSAmJiBhdHRyaWJ1dGVNYXAoKS0+aGFzTWFwcGVkQXR0cmlidXRlcygpOyB9CiAgICAgYm9vbCBp
c01hcHBlZEF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKSBjb25zdCB7IE1hcHBl
ZEF0dHJpYnV0ZUVudHJ5IHJlcyA9IGVOb25lOyBtYXBUb0VudHJ5KG5hbWUsIHJlcyk7IHJldHVy
biByZXMgIT0gZU5vbmU7IH0KIAotICAgIHZvaWQgYWRkQ1NTTGVuZ3RoKEF0dHJpYnV0ZSosIGlu
dCBpZCwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7CisgICAgdm9pZCBhZGRDU1NMZW5ndGgoQXR0cmli
dXRlKiwgaW50IGlkLCBjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHBlcmNlbnRBbGxvd2VkID0g
dHJ1ZSk7CiAgICAgdm9pZCBhZGRDU1NQcm9wZXJ0eShBdHRyaWJ1dGUqLCBpbnQgaWQsIGNvbnN0
IFN0cmluZyYgdmFsdWUpOwogICAgIHZvaWQgYWRkQ1NTUHJvcGVydHkoQXR0cmlidXRlKiwgaW50
IGlkLCBpbnQgdmFsdWUpOwogICAgIHZvaWQgYWRkQ1NTSW1hZ2VQcm9wZXJ0eShBdHRyaWJ1dGUq
LCBpbnQgcHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiB1cmwpOwpJbmRleDogU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCShyZXZpc2lvbiA4NjEzMSkKKysrIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMiw3
ICsxMTIsOCBAQCB2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmliCiAgICAg
ICAgIGFkZENTU0xlbmd0aChhdHRyLCBDU1NQcm9wZXJ0eUhlaWdodCwgYXR0ci0+dmFsdWUoKSk7
CiAgICAgZWxzZSBpZiAoYXR0ck5hbWUgPT0gYm9yZGVyQXR0cikgewogICAgICAgICAvLyBib3Jk
ZXI9Im5vYm9yZGVyIiAtPiBib3JkZXI9IjAiCi0gICAgICAgIGFkZENTU0xlbmd0aChhdHRyLCBD
U1NQcm9wZXJ0eUJvcmRlcldpZHRoLCBhdHRyLT52YWx1ZSgpLnRvSW50KCkgPyBhdHRyLT52YWx1
ZSgpIDogIjAiKTsKKyAgICAgICAgLy8gYm9yZGVyIGRvZXMgbm90IGFjY2VwdCAlCisgICAgICAg
IGFkZENTU0xlbmd0aChhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlcldpZHRoLCBhdHRyLT52YWx1ZSgp
LnRvSW50KCkgPyBhdHRyLT52YWx1ZSgpIDogIjAiLCBmYWxzZSk7CiAgICAgICAgIGFkZENTU1By
b3BlcnR5KGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyVG9wU3R5bGUsIENTU1ZhbHVlU29saWQpOwog
ICAgICAgICBhZGRDU1NQcm9wZXJ0eShhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0U3R5bGUs
IENTU1ZhbHVlU29saWQpOwogICAgICAgICBhZGRDU1NQcm9wZXJ0eShhdHRyLCBDU1NQcm9wZXJ0
eUJvcmRlckJvdHRvbVN0eWxlLCBDU1NWYWx1ZVNvbGlkKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCShyZXZpc2lvbiA4NjEzMSkKKysrIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTQs
NyArMTE0LDcgQEAgdm9pZCBIVE1MT2JqZWN0RWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaQogICAg
ICAgICB9CiAgICAgICAgIG1fbmFtZSA9IG5ld05hbWU7CiAgICAgfSBlbHNlIGlmIChhdHRyLT5u
YW1lKCkgPT0gYm9yZGVyQXR0cikgewotICAgICAgICBhZGRDU1NMZW5ndGgoYXR0ciwgQ1NTUHJv
cGVydHlCb3JkZXJXaWR0aCwgYXR0ci0+dmFsdWUoKS50b0ludCgpID8gYXR0ci0+dmFsdWUoKSA6
ICIwIik7CisgICAgICAgIGFkZENTU0xlbmd0aChhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlcldpZHRo
LCBhdHRyLT52YWx1ZSgpLnRvSW50KCkgPyBhdHRyLT52YWx1ZSgpIDogIjAiLCBmYWxzZSk7CiAg
ICAgICAgIGFkZENTU1Byb3BlcnR5KGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyVG9wU3R5bGUsIENT
U1ZhbHVlU29saWQpOwogICAgICAgICBhZGRDU1NQcm9wZXJ0eShhdHRyLCBDU1NQcm9wZXJ0eUJv
cmRlclJpZ2h0U3R5bGUsIENTU1ZhbHVlU29saWQpOwogICAgICAgICBhZGRDU1NQcm9wZXJ0eShh
dHRyLCBDU1NQcm9wZXJ0eUJvcmRlckJvdHRvbVN0eWxlLCBDU1NWYWx1ZVNvbGlkKTsKSW5kZXg6
IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cJKHJldmlzaW9uIDg2MTQ0KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDUtMTAgIE1paG5lYSBPdmlkZW5pZSAgPG1paG5l
YUBhZG9iZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQk9SREVSIGF0dHJpYnV0ZSB3aXRoIHRoZSBJTUcgdGFnLCB1c2luZyBwZXJjZW50YWdl
IHZhbHVlcyBub3Qgd29ya2luZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMjI2CisgICAgICAgIAorICAgICAgICBCb3JkZXIgYXR0cmlidXRlIGRv
ZXMgbm90IGFjY2VwdCAlIHZhbHVlcy4gQ2hhbmdlZCBwYXJzaW5nIHNvIHRoYXQgd2hlbiAlIGlz
IGZvdW5kLAorICAgICAgICBwYXJzaW5nIGlzIHN0b3BwZWQgYW5kIHRoZSBkaWdpdHMgZm91bmQg
c28gZmFyICh3aXRob3V0ICUpIGFyZSB1c2VkIHRvIHNldCB1cCB0aGUgdmFsdWUuCisKKyAgICAg
ICAgKiBmYXN0L2ltYWdlcy9ib3JkZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvaW1h
Z2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanM6CisKIDIwMTEtMDUtMTAgIENzYWJhIE9zenRyb2dv
bsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLgpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vbGVuZ3RoLWF0dHJpYnV0ZS1tYXBwaW5nLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vbGVuZ3RoLWF0dHJpYnV0ZS1tYXBwaW5nLmh0bWwJ
KHJldmlzaW9uIDg2MTMxKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vbGVuZ3RoLWF0dHJpYnV0
ZS1tYXBwaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAgICAgICAg
ZWxzZQogICAgICAgICAgICAgbG9nKCJGQUlMOiAiICsgdmFsdWUgKyAiIGlzICIgKyBtYXBwaW5n
ICsgIiBpbnN0ZWFkIG9mICIgKyAoZXhwZWN0ZWQgPyBleHBlY3RlZCA6ICJub3QgYmVpbmcgbWFw
cGVkIikpOwogICAgIH0KLQorICAgIAogICAgIHZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiaW1nIik7CiAgICAgbG9nICgiPGltZz46Iik7CiAgICAgdGVzdChpbWcsICI5MHp6Iiwg
IjkwcHgiKTsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2JvcmRlci1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvYm9yZGVyLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gODYxMzEpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9ib3JkZXIt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yMSw2ICsyMSw3IEBAIFBBU1MgaW1hZ2VC
b3JkZXJXaWR0aCgnMTBxJykgaXMgMTAKIFBBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnIDEwcScpIGlz
IDEwCiBQQVNTIGltYWdlQm9yZGVyV2lkdGgoJzEwcSAnKSBpcyAxMAogUEFTUyBpbWFnZUJvcmRl
cldpZHRoKCcgMTBxICcpIGlzIDEwCitQQVNTIGltYWdlQm9yZGVyV2lkdGgoJzEwJScpIGlzIDEw
CiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvc2NyaXB0LXRlc3RzL2JvcmRlci5qcwkocmV2
aXNpb24gODYxMzEpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9zY3JpcHQtdGVzdHMvYm9y
ZGVyLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw0ICszNiw2IEBAIHNob3VsZEJlKCJpbWFnZUJv
cmRlcldpZHRoKCcgMTBxJykiLCAiMTAKIHNob3VsZEJlKCJpbWFnZUJvcmRlcldpZHRoKCcxMHEg
JykiLCAiMTAiKTsKIHNob3VsZEJlKCJpbWFnZUJvcmRlcldpZHRoKCcgMTBxICcpIiwgIjEwIik7
CiAKK3Nob3VsZEJlKCJpbWFnZUJvcmRlcldpZHRoKCcxMCUnKSIsICIxMCIpOworCiB2YXIgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92944</attachid>
            <date>2011-05-10 06:10:18 -0700</date>
            <delta_ts>2011-05-10 07:06:28 -0700</delta_ts>
            <desc>Same patch without tabs</desc>
            <filename>Patch20226.txt</filename>
            <type>text/plain</type>
            <size>7130</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cgICAgKHJldmlzaW9uIDg2MTQ0KQorKysgU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nICAgICh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDUtMTAgIE1p
aG5lYSBPdmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQk9SREVSIGF0dHJpYnV0ZSB3aXRoIHRoZSBJTUcg
dGFnLCB1c2luZyBwZXJjZW50YWdlIHZhbHVlcyBub3Qgd29ya2luZy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjI2CisgICAgICAgIAorICAgICAg
ICBCb3JkZXIgYXR0cmlidXRlIGRvZXMgbm90IGFjY2VwdCAlIHZhbHVlcy4gQ2hhbmdlZCBwYXJz
aW5nIHNvIHRoYXQgd2hlbiAlIGlzIGZvdW5kLAorICAgICAgICBwYXJzaW5nIGlzIHN0b3BwZWQg
YW5kIHRoZSBkaWdpdHMgZm91bmQgc28gZmFyICh3aXRob3V0ICUpIGFyZSB1c2VkIHRvIHNldCB1
cCB0aGUgdmFsdWUuCisKKyAgICAgICAgSSBoYXZlIG1vZGlmaWVkIGV4aXN0aW5nIGJvcmRlciB0
ZXN0IGZvciBpbWFnZXMsIGZhc3QvaW1hZ2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanMuCisKKyAg
ICAgICAgKiBkb20vU3R5bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRF
bGVtZW50OjphZGRDU1NMZW5ndGgpOgorICAgICAgICAqIGRvbS9TdHlsZWRFbGVtZW50Lmg6Cisg
ICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxJbWFnZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgKiBodG1sL0hU
TUxPYmplY3RFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxPYmplY3RFbGVtZW50
OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZSk6CisgICAgICAgICogcGFnZS9tYWMvRXZlbnRIYW5kbGVy
TWFjLm1tOgorCiAyMDExLTA1LTEwICBCZW4gTXVyZG9jaCAgPGJlbm1AZ29vZ2xlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBTdGV2ZSBCbG9jay4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Rv
bS9TdHlsZWRFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vU3R5
bGVkRWxlbWVudC5jcHAgICAgKHJldmlzaW9uIDg2MTMxKQorKysgU291cmNlL1dlYkNvcmUvZG9t
L1N0eWxlZEVsZW1lbnQuY3BwICAgICh3b3JraW5nIGNvcHkpCkBAIC0yODEsNyArMjgxLDcgQEAg
dm9pZCBTdHlsZWRFbGVtZW50OjphZGRDU1NJbWFnZVByb3BlcnR5KAogICAgIGF0dHJpYnV0ZS0+
ZGVjbCgpLT5zZXRJbWFnZVByb3BlcnR5KGlkLCB1cmwsIGZhbHNlKTsKIH0KIAotdm9pZCBTdHls
ZWRFbGVtZW50OjphZGRDU1NMZW5ndGgoQXR0cmlidXRlKiBhdHRyLCBpbnQgaWQsIGNvbnN0IFN0
cmluZyAmdmFsdWUpCit2b2lkIFN0eWxlZEVsZW1lbnQ6OmFkZENTU0xlbmd0aChBdHRyaWJ1dGUq
IGF0dHIsIGludCBpZCwgY29uc3QgU3RyaW5nICZ2YWx1ZSwgYm9vbCBwZXJjZW50QWxsb3dlZCkK
IHsKICAgICAvLyBGSVhNRTogVGhpcyBmdW5jdGlvbiBzaG91bGQgbm90IHNwaW4gdXAgdGhlIENT
UyBwYXJzZXIsIGJ1dCBzaG91bGQgaW5zdGVhZCBqdXN0IGZpZ3VyZSBvdXQgdGhlIGNvcnJlY3QK
ICAgICAvLyBsZW5ndGggdW5pdCBhbmQgbWFrZSB0aGUgYXBwcm9wcmlhdGUgcGFyc2VkIHZhbHVl
LgpAQCAtMzAxLDcgKzMwMSw3IEBAIHZvaWQgU3R5bGVkRWxlbWVudDo6YWRkQ1NTTGVuZ3RoKEF0
dHJpYnUKICAgICAgICAgICAgIGlmIChjYyA+ICc5JykKICAgICAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgICAgIGlmIChjYyA8ICcwJykgewotICAgICAgICAgICAgICAgIGlmIChjYyA9PSAn
JScgfHwgY2MgPT0gJyonKQorICAgICAgICAgICAgICAgIGlmICgoY2MgPT0gJyUnICYmIHBlcmNl
bnRBbGxvd2VkKSB8fCBjYyA9PSAnKicpCiAgICAgICAgICAgICAgICAgICAgIGwrKzsKICAgICAg
ICAgICAgICAgICBpZiAoY2MgIT0gJy4nKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaCAgKHJldmlzaW9uIDg2MTMxKQorKysgU291
cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaCAgKHdvcmtpbmcgY29weSkKQEAgLTQxLDcg
KzQxLDcgQEAgcHVibGljOgogICAgIGJvb2wgaGFzTWFwcGVkQXR0cmlidXRlcygpIGNvbnN0IHsg
cmV0dXJuIGF0dHJpYnV0ZU1hcCgpICYmIGF0dHJpYnV0ZU1hcCgpLT5oYXNNYXBwZWRBdHRyaWJ1
dGVzKCk7IH0KICAgICBib29sIGlzTWFwcGVkQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUm
IG5hbWUpIGNvbnN0IHsgTWFwcGVkQXR0cmlidXRlRW50cnkgcmVzID0gZU5vbmU7IG1hcFRvRW50
cnkobmFtZSwgcmVzKTsgcmV0dXJuIHJlcyAhPSBlTm9uZTsgfQogCi0gICAgdm9pZCBhZGRDU1NM
ZW5ndGgoQXR0cmlidXRlKiwgaW50IGlkLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKKyAgICB2b2lk
IGFkZENTU0xlbmd0aChBdHRyaWJ1dGUqLCBpbnQgaWQsIGNvbnN0IFN0cmluZyYgdmFsdWUsIGJv
b2wgcGVyY2VudEFsbG93ZWQgPSB0cnVlKTsKICAgICB2b2lkIGFkZENTU1Byb3BlcnR5KEF0dHJp
YnV0ZSosIGludCBpZCwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7CiAgICAgdm9pZCBhZGRDU1NQcm9w
ZXJ0eShBdHRyaWJ1dGUqLCBpbnQgaWQsIGludCB2YWx1ZSk7CiAgICAgdm9pZCBhZGRDU1NJbWFn
ZVByb3BlcnR5KEF0dHJpYnV0ZSosIGludCBwcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcmIHVybCk7
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgICAgKHJldmlz
aW9uIDg2MTMxKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcCAg
ICAod29ya2luZyBjb3B5KQpAQCAtMTEyLDcgKzExMiw4IEBAIHZvaWQgSFRNTEltYWdlRWxlbWVu
dDo6cGFyc2VNYXBwZWRBdHRyaWIKICAgICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3Bl
cnR5SGVpZ2h0LCBhdHRyLT52YWx1ZSgpKTsKICAgICBlbHNlIGlmIChhdHRyTmFtZSA9PSBib3Jk
ZXJBdHRyKSB7CiAgICAgICAgIC8vIGJvcmRlcj0ibm9ib3JkZXIiIC0+IGJvcmRlcj0iMCIKLSAg
ICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyV2lkdGgsIGF0dHItPnZh
bHVlKCkudG9JbnQoKSA/IGF0dHItPnZhbHVlKCkgOiAiMCIpOworICAgICAgICAvLyBib3JkZXIg
ZG9lcyBub3QgYWNjZXB0ICUKKyAgICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3BlcnR5
Qm9yZGVyV2lkdGgsIGF0dHItPnZhbHVlKCkudG9JbnQoKSA/IGF0dHItPnZhbHVlKCkgOiAiMCIs
IGZhbHNlKTsKICAgICAgICAgYWRkQ1NTUHJvcGVydHkoYXR0ciwgQ1NTUHJvcGVydHlCb3JkZXJU
b3BTdHlsZSwgQ1NTVmFsdWVTb2xpZCk7CiAgICAgICAgIGFkZENTU1Byb3BlcnR5KGF0dHIsIENT
U1Byb3BlcnR5Qm9yZGVyUmlnaHRTdHlsZSwgQ1NTVmFsdWVTb2xpZCk7CiAgICAgICAgIGFkZENT
U1Byb3BlcnR5KGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tU3R5bGUsIENTU1ZhbHVlU29s
aWQpOwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5jcHAgICAo
cmV2aXNpb24gODYxMzEpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50
LmNwcCAgICh3b3JraW5nIGNvcHkpCkBAIC0xMTQsNyArMTE0LDcgQEAgdm9pZCBIVE1MT2JqZWN0
RWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaQogICAgICAgICB9CiAgICAgICAgIG1fbmFtZSA9IG5l
d05hbWU7CiAgICAgfSBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gYm9yZGVyQXR0cikgewotICAg
ICAgICBhZGRDU1NMZW5ndGgoYXR0ciwgQ1NTUHJvcGVydHlCb3JkZXJXaWR0aCwgYXR0ci0+dmFs
dWUoKS50b0ludCgpID8gYXR0ci0+dmFsdWUoKSA6ICIwIik7CisgICAgICAgIGFkZENTU0xlbmd0
aChhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlcldpZHRoLCBhdHRyLT52YWx1ZSgpLnRvSW50KCkgPyBh
dHRyLT52YWx1ZSgpIDogIjAiLCBmYWxzZSk7CiAgICAgICAgIGFkZENTU1Byb3BlcnR5KGF0dHIs
IENTU1Byb3BlcnR5Qm9yZGVyVG9wU3R5bGUsIENTU1ZhbHVlU29saWQpOwogICAgICAgICBhZGRD
U1NQcm9wZXJ0eShhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0U3R5bGUsIENTU1ZhbHVlU29s
aWQpOwogICAgICAgICBhZGRDU1NQcm9wZXJ0eShhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlckJvdHRv
bVN0eWxlLCBDU1NWYWx1ZVNvbGlkKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cgICAocmV2aXNpb24gODYxNDQpCisrKyBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgICAod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisy
MDExLTA1LTEwICBNaWhuZWEgT3ZpZGVuaWUgIDxtaWhuZWFAYWRvYmUuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJPUkRFUiBhdHRyaWJ1dGUg
d2l0aCB0aGUgSU1HIHRhZywgdXNpbmcgcGVyY2VudGFnZSB2YWx1ZXMgbm90IHdvcmtpbmcuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDIyNgorICAg
ICAgICAKKyAgICAgICAgQm9yZGVyIGF0dHJpYnV0ZSBkb2VzIG5vdCBhY2NlcHQgJSB2YWx1ZXMu
IENoYW5nZWQgcGFyc2luZyBzbyB0aGF0IHdoZW4gJSBpcyBmb3VuZCwKKyAgICAgICAgcGFyc2lu
ZyBpcyBzdG9wcGVkIGFuZCB0aGUgZGlnaXRzIGZvdW5kIHNvIGZhciAod2l0aG91dCAlKSBhcmUg
dXNlZCB0byBzZXQgdXAgdGhlIHZhbHVlLgorCisgICAgICAgICogZmFzdC9pbWFnZXMvYm9yZGVy
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9zY3JpcHQtdGVzdHMvYm9yZGVy
LmpzOgorCiAyMDExLTA1LTEwICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+
CiAKICAgICAgICAgVW5yZXZpZXdlZC4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2xlbmd0
aC1hdHRyaWJ1dGUtbWFwcGluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2xlbmd0aC1hdHRyaWJ1dGUtbWFwcGluZy5odG1sICAocmV2aXNpb24gODYxMzEpCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2RvbS9sZW5ndGgtYXR0cmlidXRlLW1hcHBpbmcuaHRtbCAgKHdvcmtp
bmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAgICAgICAgZWxzZQogICAgICAgICAgICAgbG9n
KCJGQUlMOiAiICsgdmFsdWUgKyAiIGlzICIgKyBtYXBwaW5nICsgIiBpbnN0ZWFkIG9mICIgKyAo
ZXhwZWN0ZWQgPyBleHBlY3RlZCA6ICJub3QgYmVpbmcgbWFwcGVkIikpOwogICAgIH0KLQorICAg
IAogICAgIHZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW1nIik7CiAgICAgbG9n
ICgiPGltZz46Iik7CiAgICAgdGVzdChpbWcsICI5MHp6IiwgIjkwcHgiKTsKSW5kZXg6IExheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL2JvcmRlci1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvYm9yZGVyLWV4cGVjdGVkLnR4dCAocmV2aXNpb24gODYxMzEp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9ib3JkZXItZXhwZWN0ZWQudHh0ICh3b3JraW5n
IGNvcHkpCkBAIC0yMSw2ICsyMSw3IEBAIFBBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnMTBxJykgaXMg
MTAKIFBBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnIDEwcScpIGlzIDEwCiBQQVNTIGltYWdlQm9yZGVy
V2lkdGgoJzEwcSAnKSBpcyAxMAogUEFTUyBpbWFnZUJvcmRlcldpZHRoKCcgMTBxICcpIGlzIDEw
CitQQVNTIGltYWdlQm9yZGVyV2lkdGgoJzEwJScpIGlzIDEwCiBQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9pbWFnZXMvc2NyaXB0LXRlc3RzL2JvcmRlci5qcyAgKHJldmlzaW9uIDg2MTMxKQorKysgTGF5
b3V0VGVzdHMvZmFzdC9pbWFnZXMvc2NyaXB0LXRlc3RzL2JvcmRlci5qcyAgKHdvcmtpbmcgY29w
eSkKQEAgLTM2LDQgKzM2LDYgQEAgc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoJyAxMHEnKSIs
ICIxMAogc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoJzEwcSAnKSIsICIxMCIpOwogc2hvdWxk
QmUoImltYWdlQm9yZGVyV2lkdGgoJyAxMHEgJykiLCAiMTAiKTsKIAorc2hvdWxkQmUoImltYWdl
Qm9yZGVyV2lkdGgoJzEwJScpIiwgIjEwIik7CisKIHZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0
cnVlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92949</attachid>
            <date>2011-05-10 07:06:28 -0700</date>
            <delta_ts>2011-07-22 09:17:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch20226.txt</filename>
            <type>text/plain</type>
            <size>6602</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cgICAgKHJldmlzaW9uIDg2MTQ0KQorKysgU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nICAgICh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDUtMTAgIE1p
aG5lYSBPdmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQk9SREVSIGF0dHJpYnV0ZSB3aXRoIHRoZSBJTUcg
dGFnLCB1c2luZyBwZXJjZW50YWdlIHZhbHVlcyBub3Qgd29ya2luZy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjI2CisgICAgICAgIAorICAgICAg
ICBCb3JkZXIgYXR0cmlidXRlIGRvZXMgbm90IGFjY2VwdCAlIHZhbHVlcy4gQ2hhbmdlZCBwYXJz
aW5nIHNvIHRoYXQgd2hlbiAlIGlzIGZvdW5kLAorICAgICAgICBwYXJzaW5nIGlzIHN0b3BwZWQg
YW5kIHRoZSBkaWdpdHMgZm91bmQgc28gZmFyICh3aXRob3V0ICUpIGFyZSB1c2VkIHRvIHNldCB1
cCB0aGUgdmFsdWUuCisKKyAgICAgICAgSSBoYXZlIG1vZGlmaWVkIGV4aXN0aW5nIGJvcmRlciB0
ZXN0IGZvciBpbWFnZXMsIGZhc3QvaW1hZ2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanMuCisKKyAg
ICAgICAgKiBkb20vU3R5bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRF
bGVtZW50OjphZGRDU1NMZW5ndGgpOgorICAgICAgICAqIGRvbS9TdHlsZWRFbGVtZW50Lmg6Cisg
ICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxJbWFnZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgKiBodG1sL0hU
TUxPYmplY3RFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxPYmplY3RFbGVtZW50
OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZSk6CisgICAgICAgICogcGFnZS9tYWMvRXZlbnRIYW5kbGVy
TWFjLm1tOgorCiAyMDExLTA1LTEwICBCZW4gTXVyZG9jaCAgPGJlbm1AZ29vZ2xlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBTdGV2ZSBCbG9jay4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Rv
bS9TdHlsZWRFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vU3R5
bGVkRWxlbWVudC5jcHAgICAgKHJldmlzaW9uIDg2MTMxKQorKysgU291cmNlL1dlYkNvcmUvZG9t
L1N0eWxlZEVsZW1lbnQuY3BwICAgICh3b3JraW5nIGNvcHkpCkBAIC0yODEsNyArMjgxLDcgQEAg
dm9pZCBTdHlsZWRFbGVtZW50OjphZGRDU1NJbWFnZVByb3BlcnR5KAogICAgIGF0dHJpYnV0ZS0+
ZGVjbCgpLT5zZXRJbWFnZVByb3BlcnR5KGlkLCB1cmwsIGZhbHNlKTsKIH0KIAotdm9pZCBTdHls
ZWRFbGVtZW50OjphZGRDU1NMZW5ndGgoQXR0cmlidXRlKiBhdHRyLCBpbnQgaWQsIGNvbnN0IFN0
cmluZyAmdmFsdWUpCit2b2lkIFN0eWxlZEVsZW1lbnQ6OmFkZENTU0xlbmd0aChBdHRyaWJ1dGUq
IGF0dHIsIGludCBpZCwgY29uc3QgU3RyaW5nICZ2YWx1ZSwgYm9vbCBwZXJjZW50QWxsb3dlZCkK
IHsKICAgICAvLyBGSVhNRTogVGhpcyBmdW5jdGlvbiBzaG91bGQgbm90IHNwaW4gdXAgdGhlIENT
UyBwYXJzZXIsIGJ1dCBzaG91bGQgaW5zdGVhZCBqdXN0IGZpZ3VyZSBvdXQgdGhlIGNvcnJlY3QK
ICAgICAvLyBsZW5ndGggdW5pdCBhbmQgbWFrZSB0aGUgYXBwcm9wcmlhdGUgcGFyc2VkIHZhbHVl
LgpAQCAtMzAxLDcgKzMwMSw3IEBAIHZvaWQgU3R5bGVkRWxlbWVudDo6YWRkQ1NTTGVuZ3RoKEF0
dHJpYnUKICAgICAgICAgICAgIGlmIChjYyA+ICc5JykKICAgICAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgICAgIGlmIChjYyA8ICcwJykgewotICAgICAgICAgICAgICAgIGlmIChjYyA9PSAn
JScgfHwgY2MgPT0gJyonKQorICAgICAgICAgICAgICAgIGlmICgoY2MgPT0gJyUnICYmIHBlcmNl
bnRBbGxvd2VkKSB8fCBjYyA9PSAnKicpCiAgICAgICAgICAgICAgICAgICAgIGwrKzsKICAgICAg
ICAgICAgICAgICBpZiAoY2MgIT0gJy4nKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaCAgKHJldmlzaW9uIDg2MTMxKQorKysgU291
cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaCAgKHdvcmtpbmcgY29weSkKQEAgLTQxLDcg
KzQxLDcgQEAgcHVibGljOgogICAgIGJvb2wgaGFzTWFwcGVkQXR0cmlidXRlcygpIGNvbnN0IHsg
cmV0dXJuIGF0dHJpYnV0ZU1hcCgpICYmIGF0dHJpYnV0ZU1hcCgpLT5oYXNNYXBwZWRBdHRyaWJ1
dGVzKCk7IH0KICAgICBib29sIGlzTWFwcGVkQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUm
IG5hbWUpIGNvbnN0IHsgTWFwcGVkQXR0cmlidXRlRW50cnkgcmVzID0gZU5vbmU7IG1hcFRvRW50
cnkobmFtZSwgcmVzKTsgcmV0dXJuIHJlcyAhPSBlTm9uZTsgfQogCi0gICAgdm9pZCBhZGRDU1NM
ZW5ndGgoQXR0cmlidXRlKiwgaW50IGlkLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKKyAgICB2b2lk
IGFkZENTU0xlbmd0aChBdHRyaWJ1dGUqLCBpbnQgaWQsIGNvbnN0IFN0cmluZyYgdmFsdWUsIGJv
b2wgcGVyY2VudEFsbG93ZWQgPSB0cnVlKTsKICAgICB2b2lkIGFkZENTU1Byb3BlcnR5KEF0dHJp
YnV0ZSosIGludCBpZCwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7CiAgICAgdm9pZCBhZGRDU1NQcm9w
ZXJ0eShBdHRyaWJ1dGUqLCBpbnQgaWQsIGludCB2YWx1ZSk7CiAgICAgdm9pZCBhZGRDU1NJbWFn
ZVByb3BlcnR5KEF0dHJpYnV0ZSosIGludCBwcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcmIHVybCk7
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgICAgKHJldmlz
aW9uIDg2MTMxKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcCAg
ICAod29ya2luZyBjb3B5KQpAQCAtMTEyLDcgKzExMiw4IEBAIHZvaWQgSFRNTEltYWdlRWxlbWVu
dDo6cGFyc2VNYXBwZWRBdHRyaWIKICAgICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3Bl
cnR5SGVpZ2h0LCBhdHRyLT52YWx1ZSgpKTsKICAgICBlbHNlIGlmIChhdHRyTmFtZSA9PSBib3Jk
ZXJBdHRyKSB7CiAgICAgICAgIC8vIGJvcmRlcj0ibm9ib3JkZXIiIC0+IGJvcmRlcj0iMCIKLSAg
ICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyV2lkdGgsIGF0dHItPnZh
bHVlKCkudG9JbnQoKSA/IGF0dHItPnZhbHVlKCkgOiAiMCIpOworICAgICAgICAvLyBib3JkZXIg
d2lkdGggZG9lcyBub3QgYWNjZXB0ICUKKyAgICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1By
b3BlcnR5Qm9yZGVyV2lkdGgsIGF0dHItPnZhbHVlKCkudG9JbnQoKSA/IGF0dHItPnZhbHVlKCkg
OiAiMCIsIGZhbHNlKTsKICAgICAgICAgYWRkQ1NTUHJvcGVydHkoYXR0ciwgQ1NTUHJvcGVydHlC
b3JkZXJUb3BTdHlsZSwgQ1NTVmFsdWVTb2xpZCk7CiAgICAgICAgIGFkZENTU1Byb3BlcnR5KGF0
dHIsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRTdHlsZSwgQ1NTVmFsdWVTb2xpZCk7CiAgICAgICAg
IGFkZENTU1Byb3BlcnR5KGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tU3R5bGUsIENTU1Zh
bHVlU29saWQpOwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5j
cHAgICAocmV2aXNpb24gODYxMzEpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RF
bGVtZW50LmNwcCAgICh3b3JraW5nIGNvcHkpCkBAIC0xMTQsNyArMTE0LDcgQEAgdm9pZCBIVE1M
T2JqZWN0RWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaQogICAgICAgICB9CiAgICAgICAgIG1fbmFt
ZSA9IG5ld05hbWU7CiAgICAgfSBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gYm9yZGVyQXR0cikg
ewotICAgICAgICBhZGRDU1NMZW5ndGgoYXR0ciwgQ1NTUHJvcGVydHlCb3JkZXJXaWR0aCwgYXR0
ci0+dmFsdWUoKS50b0ludCgpID8gYXR0ci0+dmFsdWUoKSA6ICIwIik7CisgICAgICAgIGFkZENT
U0xlbmd0aChhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlcldpZHRoLCBhdHRyLT52YWx1ZSgpLnRvSW50
KCkgPyBhdHRyLT52YWx1ZSgpIDogIjAiLCBmYWxzZSk7CiAgICAgICAgIGFkZENTU1Byb3BlcnR5
KGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyVG9wU3R5bGUsIENTU1ZhbHVlU29saWQpOwogICAgICAg
ICBhZGRDU1NQcm9wZXJ0eShhdHRyLCBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0U3R5bGUsIENTU1Zh
bHVlU29saWQpOwogICAgICAgICBhZGRDU1NQcm9wZXJ0eShhdHRyLCBDU1NQcm9wZXJ0eUJvcmRl
ckJvdHRvbVN0eWxlLCBDU1NWYWx1ZVNvbGlkKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cgICAocmV2aXNpb24gODYxNDQp
CisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cgICAod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2
IEBACisyMDExLTA1LTEwICBNaWhuZWEgT3ZpZGVuaWUgIDxtaWhuZWFAYWRvYmUuY29tPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJPUkRFUiBhdHRy
aWJ1dGUgd2l0aCB0aGUgSU1HIHRhZywgdXNpbmcgcGVyY2VudGFnZSB2YWx1ZXMgbm90IHdvcmtp
bmcuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDIy
NgorICAgICAgICAKKyAgICAgICAgQm9yZGVyIGF0dHJpYnV0ZSBkb2VzIG5vdCBhY2NlcHQgJSB2
YWx1ZXMuIENoYW5nZWQgcGFyc2luZyBzbyB0aGF0IHdoZW4gJSBpcyBmb3VuZCwKKyAgICAgICAg
cGFyc2luZyBpcyBzdG9wcGVkIGFuZCB0aGUgZGlnaXRzIGZvdW5kIHNvIGZhciAod2l0aG91dCAl
KSBhcmUgdXNlZCB0byBzZXQgdXAgdGhlIHZhbHVlLgorCisgICAgICAgICogZmFzdC9pbWFnZXMv
Ym9yZGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2ltYWdlcy9zY3JpcHQtdGVzdHMv
Ym9yZGVyLmpzOgorCiAyMDExLTA1LTEwICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtp
dC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2JvcmRlci1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9p
bWFnZXMvYm9yZGVyLWV4cGVjdGVkLnR4dCAocmV2aXNpb24gODYxMzEpCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2ltYWdlcy9ib3JkZXItZXhwZWN0ZWQudHh0ICh3b3JraW5nIGNvcHkpCkBAIC0yMSw2
ICsyMSw3IEBAIFBBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnMTBxJykgaXMgMTAKIFBBU1MgaW1hZ2VC
b3JkZXJXaWR0aCgnIDEwcScpIGlzIDEwCiBQQVNTIGltYWdlQm9yZGVyV2lkdGgoJzEwcSAnKSBp
cyAxMAogUEFTUyBpbWFnZUJvcmRlcldpZHRoKCcgMTBxICcpIGlzIDEwCitQQVNTIGltYWdlQm9y
ZGVyV2lkdGgoJzEwJScpIGlzIDEwCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAK
IFRFU1QgQ09NUExFVEUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3NjcmlwdC10ZXN0
cy9ib3JkZXIuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvc2NyaXB0
LXRlc3RzL2JvcmRlci5qcyAgKHJldmlzaW9uIDg2MTMxKQorKysgTGF5b3V0VGVzdHMvZmFzdC9p
bWFnZXMvc2NyaXB0LXRlc3RzL2JvcmRlci5qcyAgKHdvcmtpbmcgY29weSkKQEAgLTM2LDQgKzM2
LDYgQEAgc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoJyAxMHEnKSIsICIxMAogc2hvdWxkQmUo
ImltYWdlQm9yZGVyV2lkdGgoJzEwcSAnKSIsICIxMCIpOwogc2hvdWxkQmUoImltYWdlQm9yZGVy
V2lkdGgoJyAxMHEgJykiLCAiMTAiKTsKIAorc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoJzEw
JScpIiwgIjEwIik7CisKIHZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwo=
</data>
<flag name="review"
          id="86004"
          type_id="1"
          status="-"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>101171</attachid>
            <date>2011-07-18 10:37:03 -0700</date>
            <delta_ts>2011-07-18 10:37:03 -0700</delta_ts>
            <desc>Simpler test case</desc>
            <filename>20226.zip</filename>
            <type>application/zip</type>
            <size>34166</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">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
TVBLBQYAAAAABwAHABwCAABEgwAAAAA=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101737</attachid>
            <date>2011-07-22 09:17:51 -0700</date>
            <delta_ts>2011-07-22 11:49:39 -0700</delta_ts>
            <desc>Patch 2</desc>
            <filename>20226-2.patch</filename>
            <type>text/plain</type>
            <size>7582</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1Mjc0ODBjLi44ZjI1MGJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDct
MjIgIE1paG5lYSBPdmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CisKKyAgICAgICAgQk9SREVS
IGF0dHJpYnV0ZSB3aXRoIHRoZSBJTUcgdGFnLCB1c2luZyBwZXJjZW50YWdlIHZhbHVlcyBub3Qg
d29ya2luZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIwMjI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
V2hlbiBib3JkZXIgcHJlc2VudGF0aW9uYWwgYXR0cmlidXRlIG9mIGltYWdlIGVsZW1lbnQgaGFz
ICUgaW4gaXQsIGl0IHNob3VsZCBiZSBwYXJzZWQgdXNpbmcKKyAgICAgICAgSFRNTCBwYXJzZXIg
cnVsZXMuIEluIHRoaXMgY2FzZSwgdGhlIGFsZ29yaXRobSBpcyB0aGUgb25lIHVzZWQgZGVzY3Jp
YmVkIGluOgorICAgICAgICBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMvY3Vy
cmVudC13b3JrLyNydWxlcy1mb3ItcGFyc2luZy1ub24tbmVnYXRpdmUtaW50ZWdlcnMKKworICAg
ICAgICAqIGZhc3QvaW1hZ2VzL2JvcmRlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9p
bWFnZXMvc2NyaXB0LXRlc3RzL2JvcmRlci5qczoKKwogMjAxMS0wNy0yMiAgS2VudGFybyBIYXJh
ICA8aGFyYWtlbkBnb29nbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjg5NTM1KTogRm9y
bSByZXNldCBkb2VzIG5vdCByZXBhaW50IGEgZmlsZSB1cGxvYWQgY29udHJvbC4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2JvcmRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2ltYWdlcy9ib3JkZXItZXhwZWN0ZWQudHh0CmluZGV4IDc5NDE4Y2YuLjBjZmIw
ZTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2JvcmRlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvYm9yZGVyLWV4cGVjdGVkLnR4dApAQCAt
MjEsNiArMjEsMTEgQEAgUEFTUyBpbWFnZUJvcmRlcldpZHRoKCcxMHEnKSBpcyAxMAogUEFTUyBp
bWFnZUJvcmRlcldpZHRoKCcgMTBxJykgaXMgMTAKIFBBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnMTBx
ICcpIGlzIDEwCiBQQVNTIGltYWdlQm9yZGVyV2lkdGgoJyAxMHEgJykgaXMgMTAKK1BBU1MgaW1h
Z2VCb3JkZXJXaWR0aCgnMTAlJykgaXMgMTAKK1BBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnLTEwJScp
IGlzIDAKK1BBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnICsxMCUnKSBpcyAxMAorUEFTUyBpbWFnZUJv
cmRlcldpZHRoKDAsICdib3JkZXItd2lkdGg6IDEwJScpIGlzIDAKK1BBU1MgaW1hZ2VCb3JkZXJX
aWR0aCgwLCAnYm9yZGVyLXdpZHRoOiAtMTAlJykgaXMgMAogUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2ltYWdlcy9zY3JpcHQtdGVzdHMvYm9yZGVyLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMv
c2NyaXB0LXRlc3RzL2JvcmRlci5qcwppbmRleCAwYmEzMGNmLi5kODk3YzZkIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9zY3JpcHQtdGVzdHMvYm9yZGVyLmpzCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanMKQEAgLTM2LDQgKzM2
LDExIEBAIHNob3VsZEJlKCJpbWFnZUJvcmRlcldpZHRoKCcgMTBxJykiLCAiMTAiKTsKIHNob3Vs
ZEJlKCJpbWFnZUJvcmRlcldpZHRoKCcxMHEgJykiLCAiMTAiKTsKIHNob3VsZEJlKCJpbWFnZUJv
cmRlcldpZHRoKCcgMTBxICcpIiwgIjEwIik7CiAKK3Nob3VsZEJlKCJpbWFnZUJvcmRlcldpZHRo
KCcxMCUnKSIsICIxMCIpOworc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoJy0xMCUnKSIsICIw
Iik7CitzaG91bGRCZSgiaW1hZ2VCb3JkZXJXaWR0aCgnICsxMCUnKSIsICIxMCIpOworCitzaG91
bGRCZSgiaW1hZ2VCb3JkZXJXaWR0aCgwLCAnYm9yZGVyLXdpZHRoOiAxMCUnKSIsICIwIik7Citz
aG91bGRCZSgiaW1hZ2VCb3JkZXJXaWR0aCgwLCAnYm9yZGVyLXdpZHRoOiAtMTAlJykiLCAiMCIp
OworCiB2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3MDJiMWU5
Li5iNzA0NTk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTEtMDctMjIgIE1paG5l
YSBPdmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CisKKyAgICAgICAgQk9SREVSIGF0dHJpYnV0
ZSB3aXRoIHRoZSBJTUcgdGFnLCB1c2luZyBwZXJjZW50YWdlIHZhbHVlcyBub3Qgd29ya2luZy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMjI2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBib3Jk
ZXIgcHJlc2VudGF0aW9uYWwgYXR0cmlidXRlIG9mIGltYWdlIGVsZW1lbnQgaGFzICUgaW4gaXQs
IGl0IHNob3VsZCBiZSBwYXJzZWQgdXNpbmcKKyAgICAgICAgSFRNTCBwYXJzZXIgcnVsZXMuIElu
IHRoaXMgY2FzZSwgdGhlIGFsZ29yaXRobSBpcyB0aGUgb25lIHVzZWQgZGVzY3JpYmVkIGluOgor
ICAgICAgICBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMvY3VycmVudC13b3Jr
LyNydWxlcy1mb3ItcGFyc2luZy1ub24tbmVnYXRpdmUtaW50ZWdlcnMKKworICAgICAgICAqIGh0
bWwvSFRNTEltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW1hZ2VFbGVt
ZW50OjpwYXJzZUJvcmRlcldpZHRoQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJ
bWFnZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgKiBodG1sL0hUTUxJ
bWFnZUVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MUGFyc2VySWRpb21zLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OnBhcnNlSFRNTE5vbk5lZ2F0aXZlSW50ZWdlcik6CisgICAg
ICAgICogaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5oOgorCiAyMDExLTA3LTIyICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGdvb2dsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihyODk1
MzUpOiBGb3JtIHJlc2V0IGRvZXMgbm90IHJlcGFpbnQgYSBmaWxlIHVwbG9hZCBjb250cm9sLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKaW5kZXggOGI5ZmEyNy4uYzli
ZTljYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCkBAIC05OCw2
ICs5OCwxNyBAQCBib29sIEhUTUxJbWFnZUVsZW1lbnQ6Om1hcFRvRW50cnkoY29uc3QgUXVhbGlm
aWVkTmFtZSYgYXR0ck5hbWUsIE1hcHBlZEF0dHJpYnV0ZQogICAgIHJldHVybiBIVE1MRWxlbWVu
dDo6bWFwVG9FbnRyeShhdHRyTmFtZSwgcmVzdWx0KTsKIH0KIAoraW50IEhUTUxJbWFnZUVsZW1l
bnQ6OnBhcnNlQm9yZGVyV2lkdGhBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRyKQoreworICAgIEFT
U0VSVChhdHRyICYmIGF0dHItPm5hbWUoKSA9PSBib3JkZXJBdHRyKTsKKworICAgIHVuc2lnbmVk
IGludCBib3JkZXJXaWR0aCA9IDA7CisgICAgaWYgKCFhdHRyLT52YWx1ZSgpLmlzRW1wdHkoKSAm
JiAhYXR0ci0+dmFsdWUoKS5pc051bGwoKSkKKyAgICAgICAgcGFyc2VIVE1MTm9uTmVnYXRpdmVJ
bnRlZ2VyKGF0dHItPnZhbHVlKCksIGJvcmRlcldpZHRoKTsKKworICAgIHJldHVybiBib3JkZXJX
aWR0aDsKK30KKwogdm9pZCBIVE1MSW1hZ2VFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShB
dHRyaWJ1dGUqIGF0dHIpCiB7CiAgICAgY29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0ck5hbWUgPSBh
dHRyLT5uYW1lKCk7CkBAIC0xMTIsNyArMTIzLDcgQEAgdm9pZCBIVE1MSW1hZ2VFbGVtZW50Ojpw
YXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqIGF0dHIpCiAgICAgICAgIGFkZENTU0xlbmd0
aChhdHRyLCBDU1NQcm9wZXJ0eUhlaWdodCwgYXR0ci0+dmFsdWUoKSk7CiAgICAgZWxzZSBpZiAo
YXR0ck5hbWUgPT0gYm9yZGVyQXR0cikgewogICAgICAgICAvLyBib3JkZXI9Im5vYm9yZGVyIiAt
PiBib3JkZXI9IjAiCi0gICAgICAgIGFkZENTU0xlbmd0aChhdHRyLCBDU1NQcm9wZXJ0eUJvcmRl
cldpZHRoLCBhdHRyLT52YWx1ZSgpLnRvSW50KCkgPyBhdHRyLT52YWx1ZSgpIDogIjAiKTsKKyAg
ICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyV2lkdGgsIFN0cmluZzo6
bnVtYmVyKHBhcnNlQm9yZGVyV2lkdGhBdHRyaWJ1dGUoYXR0cikpKTsKICAgICAgICAgYWRkQ1NT
UHJvcGVydHkoYXR0ciwgQ1NTUHJvcGVydHlCb3JkZXJUb3BTdHlsZSwgQ1NTVmFsdWVTb2xpZCk7
CiAgICAgICAgIGFkZENTU1Byb3BlcnR5KGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRTdHls
ZSwgQ1NTVmFsdWVTb2xpZCk7CiAgICAgICAgIGFkZENTU1Byb3BlcnR5KGF0dHIsIENTU1Byb3Bl
cnR5Qm9yZGVyQm90dG9tU3R5bGUsIENTU1ZhbHVlU29saWQpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxJbWFnZUVsZW1lbnQuaAppbmRleCA5M2M4N2I5Li5jM2M3YmU3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxJbWFnZUVsZW1lbnQuaApAQCAtODUsNiArODUsNyBAQCBwcm90ZWN0ZWQ6CiBwcml2
YXRlOgogICAgIHZpcnR1YWwgYm9vbCBtYXBUb0VudHJ5KGNvbnN0IFF1YWxpZmllZE5hbWUmIGF0
dHJOYW1lLCBNYXBwZWRBdHRyaWJ1dGVFbnRyeSYgcmVzdWx0KSBjb25zdDsKICAgICB2aXJ0dWFs
IHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKik7CisgICAgaW50IHBhcnNlQm9y
ZGVyV2lkdGhBdHRyaWJ1dGUoQXR0cmlidXRlKik7CiAKICAgICB2aXJ0dWFsIHZvaWQgYXR0YWNo
KCk7CiAgICAgdmlydHVhbCBSZW5kZXJPYmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5h
KiwgUmVuZGVyU3R5bGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2Vy
L0hUTUxQYXJzZXJJZGlvbXMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBh
cnNlcklkaW9tcy5jcHAKaW5kZXggODk3NWU1Ny4uMDU4YmI5MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKQEAgLTIyMCw0ICsyMjAsNTAg
QEAgYm9vbCBwYXJzZUhUTUxJbnRlZ2VyKGNvbnN0IFN0cmluZyYgaW5wdXQsIGludCYgdmFsdWUp
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKKy8vIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93
ZWItYXBwcy9jdXJyZW50LXdvcmsvI3J1bGVzLWZvci1wYXJzaW5nLW5vbi1uZWdhdGl2ZS1pbnRl
Z2VycworYm9vbCBwYXJzZUhUTUxOb25OZWdhdGl2ZUludGVnZXIoY29uc3QgU3RyaW5nJiBpbnB1
dCwgdW5zaWduZWQgaW50JiB2YWx1ZSkKK3sKKyAgICAvLyBTdGVwIDEKKyAgICAvLyBTdGVwIDIK
KyAgICBjb25zdCBVQ2hhciogcG9zaXRpb24gPSBpbnB1dC5jaGFyYWN0ZXJzKCk7CisgICAgY29u
c3QgVUNoYXIqIGVuZCA9IHBvc2l0aW9uICsgaW5wdXQubGVuZ3RoKCk7CisKKyAgICAvLyBTdGVw
IDMKKyAgICB3aGlsZSAocG9zaXRpb24gPCBlbmQpIHsKKyAgICAgICAgaWYgKCFpc0hUTUxTcGFj
ZSgqcG9zaXRpb24pKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICsrcG9zaXRpb247Cisg
ICAgfQorCisgICAgLy8gU3RlcCA0CisgICAgaWYgKHBvc2l0aW9uID09IGVuZCkKKyAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgIEFTU0VSVChwb3NpdGlvbiA8IGVuZCk7CisKKyAgICAvLyBTdGVw
IDUKKyAgICBpZiAoKnBvc2l0aW9uID09ICcrJykKKyAgICAgICAgKytwb3NpdGlvbjsKKworICAg
IC8vIFN0ZXAgNgorICAgIGlmIChwb3NpdGlvbiA9PSBlbmQpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICBBU1NFUlQocG9zaXRpb24gPCBlbmQpOworCisgICAgLy8gU3RlcCA3CisgICAgaWYg
KCFpc0FTQ0lJRGlnaXQoKnBvc2l0aW9uKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAg
Ly8gU3RlcCA4CisgICAgVmVjdG9yPFVDaGFyLCAxNj4gZGlnaXRzOworICAgIHdoaWxlIChwb3Np
dGlvbiA8IGVuZCkgeworICAgICAgICBpZiAoIWlzQVNDSUlEaWdpdCgqcG9zaXRpb24pKQorICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGRpZ2l0cy5hcHBlbmQoKnBvc2l0aW9uKyspOworICAg
IH0KKworICAgIC8vIFN0ZXAgOQorICAgIHZhbHVlID0gY2hhcmFjdGVyc1RvVUludFN0cmljdChk
aWdpdHMuZGF0YSgpLCBkaWdpdHMuc2l6ZSgpKTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5oCmluZGV4IGJh
NzExYWYuLjE5Y2QyNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hU
TUxQYXJzZXJJZGlvbXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUGFy
c2VySWRpb21zLmgKQEAgLTUwLDYgKzUwLDkgQEAgYm9vbCBwYXJzZVRvRG91YmxlRm9yTnVtYmVy
VHlwZVdpdGhEZWNpbWFsUGxhY2VzKGNvbnN0IFN0cmluZyYsIGRvdWJsZSosIHVuc2lnbmUKIC8v
IGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJyZW50LXdvcmsvI3J1bGVz
LWZvci1wYXJzaW5nLWludGVnZXJzCiBib29sIHBhcnNlSFRNTEludGVnZXIoY29uc3QgU3RyaW5n
JiwgaW50Jik7CiAKKy8vIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJy
ZW50LXdvcmsvI3J1bGVzLWZvci1wYXJzaW5nLW5vbi1uZWdhdGl2ZS1pbnRlZ2VycworYm9vbCBw
YXJzZUhUTUxOb25OZWdhdGl2ZUludGVnZXIoY29uc3QgU3RyaW5nJiwgdW5zaWduZWQgaW50Jik7
CisKIC8vIElubGluZSBpbXBsZW1lbnRhdGlvbnMgb2Ygc29tZSBvZiB0aGUgZnVuY3Rpb25zIGRl
Y2xhcmVkIGFib3ZlLgogCiBpbmxpbmUgYm9vbCBpc0hUTUxTcGFjZShVQ2hhciBjaGFyYWN0ZXIp
Cg==
</data>
<flag name="review"
          id="96739"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
    <flag name="commit-queue"
          id="96740"
          type_id="3"
          status="-"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101748</attachid>
            <date>2011-07-22 11:49:39 -0700</date>
            <delta_ts>2011-07-22 13:28:09 -0700</delta_ts>
            <desc>Patch 3</desc>
            <filename>20226-3.patch</filename>
            <type>text/plain</type>
            <size>7013</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjYWYzYWVkLi5kMmY2MTJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDct
MjIgIE1paG5lYSBPdmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CisKKyAgICAgICAgQk9SREVS
IGF0dHJpYnV0ZSB3aXRoIHRoZSBJTUcgdGFnLCB1c2luZyBwZXJjZW50YWdlIHZhbHVlcyBub3Qg
d29ya2luZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIwMjI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
V2hlbiBib3JkZXIgcHJlc2VudGF0aW9uYWwgYXR0cmlidXRlIG9mIGltYWdlIGVsZW1lbnQgaGFz
ICUgaW4gaXQsIGl0IHNob3VsZCBiZSBwYXJzZWQgdXNpbmcKKyAgICAgICAgSFRNTCBwYXJzZXIg
cnVsZXMuIEluIHRoaXMgY2FzZSwgdGhlIGFsZ29yaXRobSBpcyB0aGUgb25lIHVzZWQgZGVzY3Jp
YmVkIGluOgorICAgICAgICBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMvY3Vy
cmVudC13b3JrLyNydWxlcy1mb3ItcGFyc2luZy1ub24tbmVnYXRpdmUtaW50ZWdlcnMKKworICAg
ICAgICAqIGZhc3QvaW1hZ2VzL2JvcmRlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9p
bWFnZXMvc2NyaXB0LXRlc3RzL2JvcmRlci5qczoKKwogMjAxMS0wNy0yMiAgTWFyayBIYWhuZW5i
ZXJnICA8bWhhaG5lbmJlcmdAYXBwbGUuY29tPgogCiAgICAgICAgIERhdGUucHJvdG90eXBlLnRv
SVNPU3RyaW5nIGRvZXNuJ3QgaGFuZGxlIG5lZ2F0aXZlIHllYXJzIG9yIHllYXJzID4gOTk5OSBj
b3JyZWN0bHkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9ib3JkZXItZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvYm9yZGVyLWV4cGVjdGVkLnR4dApp
bmRleCA3OTQxOGNmLi4wY2ZiMGU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9ib3JkZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2JvcmRl
ci1leHBlY3RlZC50eHQKQEAgLTIxLDYgKzIxLDExIEBAIFBBU1MgaW1hZ2VCb3JkZXJXaWR0aCgn
MTBxJykgaXMgMTAKIFBBU1MgaW1hZ2VCb3JkZXJXaWR0aCgnIDEwcScpIGlzIDEwCiBQQVNTIGlt
YWdlQm9yZGVyV2lkdGgoJzEwcSAnKSBpcyAxMAogUEFTUyBpbWFnZUJvcmRlcldpZHRoKCcgMTBx
ICcpIGlzIDEwCitQQVNTIGltYWdlQm9yZGVyV2lkdGgoJzEwJScpIGlzIDEwCitQQVNTIGltYWdl
Qm9yZGVyV2lkdGgoJy0xMCUnKSBpcyAwCitQQVNTIGltYWdlQm9yZGVyV2lkdGgoJyArMTAlJykg
aXMgMTAKK1BBU1MgaW1hZ2VCb3JkZXJXaWR0aCgwLCAnYm9yZGVyLXdpZHRoOiAxMCUnKSBpcyAw
CitQQVNTIGltYWdlQm9yZGVyV2lkdGgoMCwgJ2JvcmRlci13aWR0aDogLTEwJScpIGlzIDAKIFBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvc2NyaXB0LXRlc3RzL2JvcmRlci5qcyBiL0xheW91
dFRlc3RzL2Zhc3QvaW1hZ2VzL3NjcmlwdC10ZXN0cy9ib3JkZXIuanMKaW5kZXggMGJhMzBjZi4u
ZDg5N2M2ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvc2NyaXB0LXRlc3Rz
L2JvcmRlci5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9zY3JpcHQtdGVzdHMvYm9y
ZGVyLmpzCkBAIC0zNiw0ICszNiwxMSBAQCBzaG91bGRCZSgiaW1hZ2VCb3JkZXJXaWR0aCgnIDEw
cScpIiwgIjEwIik7CiBzaG91bGRCZSgiaW1hZ2VCb3JkZXJXaWR0aCgnMTBxICcpIiwgIjEwIik7
CiBzaG91bGRCZSgiaW1hZ2VCb3JkZXJXaWR0aCgnIDEwcSAnKSIsICIxMCIpOwogCitzaG91bGRC
ZSgiaW1hZ2VCb3JkZXJXaWR0aCgnMTAlJykiLCAiMTAiKTsKK3Nob3VsZEJlKCJpbWFnZUJvcmRl
cldpZHRoKCctMTAlJykiLCAiMCIpOworc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoJyArMTAl
JykiLCAiMTAiKTsKKworc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoMCwgJ2JvcmRlci13aWR0
aDogMTAlJykiLCAiMCIpOworc2hvdWxkQmUoImltYWdlQm9yZGVyV2lkdGgoMCwgJ2JvcmRlci13
aWR0aDogLTEwJScpIiwgIjAiKTsKKwogdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggZGQxNTRmMi4uNjM1YjliMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBA
CisyMDExLTA3LTIyICBNaWhuZWEgT3ZpZGVuaWUgIDxtaWhuZWFAYWRvYmUuY29tPgorCisgICAg
ICAgIEJPUkRFUiBhdHRyaWJ1dGUgd2l0aCB0aGUgSU1HIHRhZywgdXNpbmcgcGVyY2VudGFnZSB2
YWx1ZXMgbm90IHdvcmtpbmcuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMDIyNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFdoZW4gYm9yZGVyIHByZXNlbnRhdGlvbmFsIGF0dHJpYnV0ZSBvZiBpbWFnZSBl
bGVtZW50IGhhcyAlIGluIGl0LCBpdCBzaG91bGQgYmUgcGFyc2VkIHVzaW5nCisgICAgICAgIEhU
TUwgcGFyc2VyIHJ1bGVzLiBJbiB0aGlzIGNhc2UsIHRoZSBhbGdvcml0aG0gaXMgdGhlIG9uZSB1
c2VkIGRlc2NyaWJlZCBpbjoKKyAgICAgICAgaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dl
Yi1hcHBzL2N1cnJlbnQtd29yay8jcnVsZXMtZm9yLXBhcnNpbmctbm9uLW5lZ2F0aXZlLWludGVn
ZXJzCisKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6cGFyc2VCb3JkZXJXaWR0aEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
SW1hZ2VFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZSk6CisgICAgICAgICogaHRtbC9wYXJz
ZXIvSFRNTFBhcnNlcklkaW9tcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpwYXJzZUhUTUxOb25O
ZWdhdGl2ZUludGVnZXIpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxQYXJzZXJJZGlvbXMu
aDoKKwogMjAxMS0wNy0yMiAgS2VudCBUYW11cmEgIDx0a2VudEBnb29nbGUuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT04ocjg4NzU3KTogVGhlIHRodW1iIG9mIGEgdmVydGljYWwgcmFuZ2Ugc2xp
ZGVyIGlzIG9mZnNldCB0byB0aGUgcmlnaHQgb24gbm9uLU1hYy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDhiOWZhMjcuLjRkNGZkNGQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcApAQCAtOTgsNiArOTgsMTcgQEAgYm9vbCBI
VE1MSW1hZ2VFbGVtZW50OjptYXBUb0VudHJ5KGNvbnN0IFF1YWxpZmllZE5hbWUmIGF0dHJOYW1l
LCBNYXBwZWRBdHRyaWJ1dGUKICAgICByZXR1cm4gSFRNTEVsZW1lbnQ6Om1hcFRvRW50cnkoYXR0
ck5hbWUsIHJlc3VsdCk7CiB9CiAKK3N0YXRpYyB1bnNpZ25lZCBpbnQgcGFyc2VCb3JkZXJXaWR0
aEF0dHJpYnV0ZShBdHRyaWJ1dGUqIGF0dHIpCit7CisgICAgQVNTRVJUKGF0dHIgJiYgYXR0ci0+
bmFtZSgpID09IGJvcmRlckF0dHIpOworCisgICAgdW5zaWduZWQgaW50IGJvcmRlcldpZHRoID0g
MDsKKyAgICBpZiAoIWF0dHItPnZhbHVlKCkuaXNFbXB0eSgpICYmICFhdHRyLT52YWx1ZSgpLmlz
TnVsbCgpKQorICAgICAgICBwYXJzZUhUTUxOb25OZWdhdGl2ZUludGVnZXIoYXR0ci0+dmFsdWUo
KSwgYm9yZGVyV2lkdGgpOworCisgICAgcmV0dXJuIGJvcmRlcldpZHRoOworfQorCiB2b2lkIEhU
TUxJbWFnZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0cikKIHsK
ICAgICBjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSA9IGF0dHItPm5hbWUoKTsKQEAgLTEx
Miw3ICsxMjMsNyBAQCB2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRl
KEF0dHJpYnV0ZSogYXR0cikKICAgICAgICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3BlcnR5
SGVpZ2h0LCBhdHRyLT52YWx1ZSgpKTsKICAgICBlbHNlIGlmIChhdHRyTmFtZSA9PSBib3JkZXJB
dHRyKSB7CiAgICAgICAgIC8vIGJvcmRlcj0ibm9ib3JkZXIiIC0+IGJvcmRlcj0iMCIKLSAgICAg
ICAgYWRkQ1NTTGVuZ3RoKGF0dHIsIENTU1Byb3BlcnR5Qm9yZGVyV2lkdGgsIGF0dHItPnZhbHVl
KCkudG9JbnQoKSA/IGF0dHItPnZhbHVlKCkgOiAiMCIpOworICAgICAgICBhZGRDU1NMZW5ndGgo
YXR0ciwgQ1NTUHJvcGVydHlCb3JkZXJXaWR0aCwgU3RyaW5nOjpudW1iZXIocGFyc2VCb3JkZXJX
aWR0aEF0dHJpYnV0ZShhdHRyKSkpOwogICAgICAgICBhZGRDU1NQcm9wZXJ0eShhdHRyLCBDU1NQ
cm9wZXJ0eUJvcmRlclRvcFN0eWxlLCBDU1NWYWx1ZVNvbGlkKTsKICAgICAgICAgYWRkQ1NTUHJv
cGVydHkoYXR0ciwgQ1NTUHJvcGVydHlCb3JkZXJSaWdodFN0eWxlLCBDU1NWYWx1ZVNvbGlkKTsK
ICAgICAgICAgYWRkQ1NTUHJvcGVydHkoYXR0ciwgQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21TdHls
ZSwgQ1NTVmFsdWVTb2xpZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNl
ci9IVE1MUGFyc2VySWRpb21zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQ
YXJzZXJJZGlvbXMuY3BwCmluZGV4IDg5NzVlNTcuLjA1OGJiOTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJZGlvbXMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJZGlvbXMuY3BwCkBAIC0yMjAsNCArMjIwLDUw
IEBAIGJvb2wgcGFyc2VIVE1MSW50ZWdlcihjb25zdCBTdHJpbmcmIGlucHV0LCBpbnQmIHZhbHVl
KQogICAgIHJldHVybiB0cnVlOwogfQogCisvLyBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mv
d2ViLWFwcHMvY3VycmVudC13b3JrLyNydWxlcy1mb3ItcGFyc2luZy1ub24tbmVnYXRpdmUtaW50
ZWdlcnMKK2Jvb2wgcGFyc2VIVE1MTm9uTmVnYXRpdmVJbnRlZ2VyKGNvbnN0IFN0cmluZyYgaW5w
dXQsIHVuc2lnbmVkIGludCYgdmFsdWUpCit7CisgICAgLy8gU3RlcCAxCisgICAgLy8gU3RlcCAy
CisgICAgY29uc3QgVUNoYXIqIHBvc2l0aW9uID0gaW5wdXQuY2hhcmFjdGVycygpOworICAgIGNv
bnN0IFVDaGFyKiBlbmQgPSBwb3NpdGlvbiArIGlucHV0Lmxlbmd0aCgpOworCisgICAgLy8gU3Rl
cCAzCisgICAgd2hpbGUgKHBvc2l0aW9uIDwgZW5kKSB7CisgICAgICAgIGlmICghaXNIVE1MU3Bh
Y2UoKnBvc2l0aW9uKSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICArK3Bvc2l0aW9uOwor
ICAgIH0KKworICAgIC8vIFN0ZXAgNAorICAgIGlmIChwb3NpdGlvbiA9PSBlbmQpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICBBU1NFUlQocG9zaXRpb24gPCBlbmQpOworCisgICAgLy8gU3Rl
cCA1CisgICAgaWYgKCpwb3NpdGlvbiA9PSAnKycpCisgICAgICAgICsrcG9zaXRpb247CisKKyAg
ICAvLyBTdGVwIDYKKyAgICBpZiAocG9zaXRpb24gPT0gZW5kKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgQVNTRVJUKHBvc2l0aW9uIDwgZW5kKTsKKworICAgIC8vIFN0ZXAgNworICAgIGlm
ICghaXNBU0NJSURpZ2l0KCpwb3NpdGlvbikpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAg
IC8vIFN0ZXAgOAorICAgIFZlY3RvcjxVQ2hhciwgMTY+IGRpZ2l0czsKKyAgICB3aGlsZSAocG9z
aXRpb24gPCBlbmQpIHsKKyAgICAgICAgaWYgKCFpc0FTQ0lJRGlnaXQoKnBvc2l0aW9uKSkKKyAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICBkaWdpdHMuYXBwZW5kKCpwb3NpdGlvbisrKTsKKyAg
ICB9CisKKyAgICAvLyBTdGVwIDkKKyAgICB2YWx1ZSA9IGNoYXJhY3RlcnNUb1VJbnRTdHJpY3Qo
ZGlnaXRzLmRhdGEoKSwgZGlnaXRzLnNpemUoKSk7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJZGlvbXMu
aCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJZGlvbXMuaAppbmRleCBi
YTcxMWFmLi4xOWNkMjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9I
VE1MUGFyc2VySWRpb21zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBh
cnNlcklkaW9tcy5oCkBAIC01MCw2ICs1MCw5IEBAIGJvb2wgcGFyc2VUb0RvdWJsZUZvck51bWJl
clR5cGVXaXRoRGVjaW1hbFBsYWNlcyhjb25zdCBTdHJpbmcmLCBkb3VibGUqLCB1bnNpZ25lCiAv
LyBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMvY3VycmVudC13b3JrLyNydWxl
cy1mb3ItcGFyc2luZy1pbnRlZ2VycwogYm9vbCBwYXJzZUhUTUxJbnRlZ2VyKGNvbnN0IFN0cmlu
ZyYsIGludCYpOwogCisvLyBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMvY3Vy
cmVudC13b3JrLyNydWxlcy1mb3ItcGFyc2luZy1ub24tbmVnYXRpdmUtaW50ZWdlcnMKK2Jvb2wg
cGFyc2VIVE1MTm9uTmVnYXRpdmVJbnRlZ2VyKGNvbnN0IFN0cmluZyYsIHVuc2lnbmVkIGludCYp
OworCiAvLyBJbmxpbmUgaW1wbGVtZW50YXRpb25zIG9mIHNvbWUgb2YgdGhlIGZ1bmN0aW9ucyBk
ZWNsYXJlZCBhYm92ZS4KIAogaW5saW5lIGJvb2wgaXNIVE1MU3BhY2UoVUNoYXIgY2hhcmFjdGVy
KQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>