<?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>103539</bug_id>
          
          <creation_ts>2012-11-28 10:38:58 -0800</creation_ts>
          <short_desc>seamless iframes don&apos;t inherit styles when srcdoc is used</short_desc>
          <delta_ts>2013-01-03 08:48:59 -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>http://software.hixie.ch/utilities/js/live-dom-viewer/?saved=1932</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>105917</dependson>
          <blocked>45950</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ojan Vafai">ojan</reporter>
          <assigned_to name="Mike West">mkwst</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>mkwst</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>778047</commentid>
    <comment_count>0</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-11-28 10:38:58 -0800</bug_when>
    <thetext>Not sure what combination of incantations is needed, but see the URL for a case where we don&apos;t correctly inherit the CSS from the parent.

Are we possibly treating srcdoc documents as being on a separate domain?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778062</commentid>
    <comment_count>1</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-11-28 10:50:06 -0800</bug_when>
    <thetext>Actually, it&apos;s even stranger than your example. Look at http://software.hixie.ch/utilities/js/live-dom-viewer/?saved=1933 for instance. `body` styles are inherited in the srcdoc case. It works with `body *` as well, but not `body h1`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798319</commentid>
    <comment_count>2</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-31 03:24:10 -0800</bug_when>
    <thetext>I&apos;m working my way through this, though slowly, as I Have No Idea What I&apos;m Doing™ in rendering code.

I think that simple srcdoc documents aren&apos;t triggering a recalcStyle that&apos;s necessary to get the rendering right: `srcdoc=&quot;&lt;p&gt;Text.&lt;/p&gt;&quot;` doesn&apos;t inherit style, whereas `srcdoc=&quot;&lt;style&gt;&lt;/style&gt;&lt;p&gt;Text.&lt;/p&gt;&quot;` does. See http://software.hixie.ch/utilities/js/live-dom-viewer/?saved=2052 for a demonstration.

I&apos;ll keep printf-debugging my way through the code until I hit something interesting, but if you have a suggestion right off the top of your head as to what might be going on, I&apos;d appreciate it. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798342</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-31 06:10:18 -0800</bug_when>
    <thetext>Seamless inheritance is done here:
http://trac.webkit.org/browser/trunk/Source/WebCore/css/StyleResolver.cpp#L1427
(just search for seamless in that file)

This may be the fixme you&apos;re hitting:
http://trac.webkit.org/browser/trunk/Source/WebCore/dom/Document.cpp#L4580 :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798351</commentid>
    <comment_count>4</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-31 07:16:04 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Seamless inheritance is done here:
&gt; http://trac.webkit.org/browser/trunk/Source/WebCore/css/StyleResolver.cpp#L1427
&gt; (just search for seamless in that file)
&gt; 
&gt; This may be the fixme you&apos;re hitting:
&gt; http://trac.webkit.org/browser/trunk/Source/WebCore/dom/Document.cpp#L4580 :)

It may be, but I don&apos;t think it is. Both documents are treated as seamless (e.g. that FIXME returns true as it should), and, so far as I can tell, inheritance is working correctly. It looks like updateStyleIfNeeded is called fairly often on both documents, but it always returns early on the version without style (it bails on http://trac.webkit.org/browser/trunk/Source/WebCore/dom/Document.cpp#L1863, as there&apos;s not a pending forced layout, nor is a child dirty).

My working theory is that scheduleForcedStyleRecalc needs to be called at some point in the processing of the srcdoc data in order to kickstart the styling process, since there&apos;s no stylesheet being added to the simple document (which would call it in updateActiveStyleSheets), but I&apos;m not seeing any relevant difference in how the loader handles substitute data vs &quot;real&quot; data. *shrug* That&apos;s where I&apos;m spinning my wheels at the moment. Hopefully it&apos;s not a dead end. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798355</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-31 07:22:53 -0800</bug_when>
    <thetext>When the parser creates the DOM nodes it calls lazyAttach on them, which should mark them (and their ancestors) as needing style resolve.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798358</commentid>
    <comment_count>6</comment_count>
      <attachid>180976</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-31 07:41:46 -0800</bug_when>
    <thetext>Created attachment 180976
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798359</commentid>
    <comment_count>7</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-31 07:43:57 -0800</bug_when>
    <thetext>The attached patch solves the problem by calling Document::styleResolverChanged from Document::finishedParsing iff the document is seamless. I&apos;m not sure it&apos;s a good solution, but it works. :)

I&apos;m happy to continue to dig through loader bits and pieces to see if there&apos;s some better spot to inform the document that it needs to do this sort of thing, but a one-time call to styleResolverChanged seems like a not-too-terrible impact (assuming I haven&apos;t missed some terrible side-effects...).

WDYT?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798360</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-31 07:47:35 -0800</bug_when>
    <thetext>I suspect that yes, the StyleResolver needs a recalc.  It&apos;s probably right to special-case seamless to force that to happen.  But I&apos;m not sure where the right place to do that is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798361</commentid>
    <comment_count>9</comment_count>
      <attachid>180976</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-31 07:49:57 -0800</bug_when>
    <thetext>Comment on attachment 180976
Patch

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

&gt; Source/WebCore/dom/Document.cpp:4388
&gt; +    if (shouldDisplaySeamlesslyWithParent())
&gt; +        styleResolverChanged(DeferRecalcStyle);

I might add a comment here which says something like:
// Seamless iframes will need a StyleResolver recalc to inherit styles from their parent even
// if they don&apos;t have any styling of their own (which would normally trigger this recalc).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798362</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-31 07:50:20 -0800</bug_when>
    <thetext>Also ccing the StyleResolver ninjas.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798365</commentid>
    <comment_count>11</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2012-12-31 08:18:24 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; Also ccing the StyleResolver ninjas.

I&apos;ll wait a bit for their feedback, and, assuming they&apos;re happy, I&apos;ll land it in the new year with the suggested comments.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798437</commentid>
    <comment_count>12</comment_count>
      <attachid>180991</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-01 07:20:33 -0800</bug_when>
    <thetext>Created attachment 180991
Patch for landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798438</commentid>
    <comment_count>13</comment_count>
      <attachid>180991</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-01 09:15:48 -0800</bug_when>
    <thetext>Comment on attachment 180991
Patch for landing.

Bots are happy and this seems like a low-risk fix. I&apos;ll just land this to change the currently broken behavior, and FYI kling and anttik whenever I see them in IRC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798440</commentid>
    <comment_count>14</comment_count>
      <attachid>180991</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-01 09:21:38 -0800</bug_when>
    <thetext>Comment on attachment 180991
Patch for landing.

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

&gt; Source/WebCore/dom/Document.cpp:4391
&gt; +    // Seamless iframes require a forced StyleResolver recalc in order to ensure that they
&gt; +    // inherit style from their parent. Without this recalc, frames that don&apos;t define any of
&gt; +    // their own styles won&apos;t discover that there&apos;s still work to be done.
&gt; +    if (shouldDisplaySeamlesslyWithParent())
&gt; +        styleResolverChanged(DeferRecalcStyle);

It&apos;s not clear why documents aren&apos;t created needing a style resolver recalc.  It&apos;s possible that we optimize this away by creating the StyleResolver at creation time.  It&apos;s also possible that the style resolver creation happens before we&apos;re wired up to the parent document (if that&apos;s possible)?  I suspect there are other designs where this is not needed, but with the test and the comment here, it will be easy to remove later if the design changes. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798441</commentid>
    <comment_count>15</comment_count>
      <attachid>180991</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-01 09:22:07 -0800</bug_when>
    <thetext>Comment on attachment 180991
Patch for landing.

Clearing flags on attachment: 180991

Committed r138601: &lt;http://trac.webkit.org/changeset/138601&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798442</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-01 09:22:11 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798444</commentid>
    <comment_count>17</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-01 09:29:24 -0800</bug_when>
    <thetext>(In reply to comment #14)
&gt; (From update of attachment 180991 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=180991&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/Document.cpp:4391
&gt; &gt; +    // Seamless iframes require a forced StyleResolver recalc in order to ensure that they
&gt; &gt; +    // inherit style from their parent. Without this recalc, frames that don&apos;t define any of
&gt; &gt; +    // their own styles won&apos;t discover that there&apos;s still work to be done.
&gt; &gt; +    if (shouldDisplaySeamlesslyWithParent())
&gt; &gt; +        styleResolverChanged(DeferRecalcStyle);
&gt; 
&gt; It&apos;s not clear why documents aren&apos;t created needing a style resolver recalc.  It&apos;s possible that we optimize this away by creating the StyleResolver at creation time.  It&apos;s also possible that the style resolver creation happens before we&apos;re wired up to the parent document (if that&apos;s possible)?  I suspect there are other designs where this is not needed, but with the test and the comment here, it will be easy to remove later if the design changes. :)

Hrm. Ok, I misunderstood your comments, then. I thought you were agreeing that this was the right solution, and wanted to FYI folks that this change was happening.

I&apos;m happy to roll this back and wait for suggestions about a better place to do the work; there&apos;s really no rush for this fix, other then my own desire to fiddle with it in Canary. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798445</commentid>
    <comment_count>18</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-01 09:30:50 -0800</bug_when>
    <thetext>No, the change is OK.  I just wonder if there is a better change.  The most important part of this (and really any) change is the test.  :)

We can make additional change to make our behavior better.  It&apos;s possible that Antti/Kling will provide suggestions there, we&apos;ll see.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798446</commentid>
    <comment_count>19</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-01 09:35:43 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; No, the change is OK.  I just wonder if there is a better change.  The most important part of this (and really any) change is the test.  :)
&gt; 
&gt; We can make additional change to make our behavior better.  It&apos;s possible that Antti/Kling will provide suggestions there, we&apos;ll see.

I wonder if:

    StyleResolver* styleResolver()
    { 
        if (!m_styleResolver)
            createStyleResolver();
        return m_styleResolver.get();
    }

Should be changed to call:
styleResolverChanged()

I suspect the case we&apos;re hitting here is that we&apos;re creating a styleResolver (because someone is accessing it), yet creating it does not cause it to inherit from seamless.  Maybe it should?  Or mabye creating it should just always mark it as invalid. :)

Again, Antti/Kling&apos;s thoughts here are useful whenever they&apos;re back from vacation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798597</commentid>
    <comment_count>20</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-01-02 03:14:00 -0800</bug_when>
    <thetext>This seems like a hack that just hides the bug by forcing a full document style recalc for no obvious reason. It would probably be better to revert this and figure out what actually goes wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798614</commentid>
    <comment_count>21</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-02 04:03:51 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; This seems like a hack that just hides the bug by forcing a full document style recalc for no obvious reason. It would probably be better to revert this and figure out what actually goes wrong.

Hrm. I think we do need to notify the seamlessly rendered document that it ought to do a full recalc, otherwise it won&apos;t inherit properly from its parent. But I&apos;m happy to roll the patch out since you actually know what you&apos;re talking about. :)

I&apos;d really appreciate a pointer in the right direction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798616</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-02 04:05:35 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 105917</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798953</commentid>
    <comment_count>23</comment_count>
      <attachid>181076</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-02 15:12:08 -0800</bug_when>
    <thetext>Created attachment 181076
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798961</commentid>
    <comment_count>24</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-02 15:18:02 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; I&apos;d really appreciate a pointer in the right direction.

In short, there&apos;s no relevant difference between handing &apos;src&apos; and &apos;srcdoc&apos; documents. The reason the former worked was an accident of the particular document I created being categorized into quirks mode, which triggered a style recalculation.

This patch solves the problem by marking seamless documents as needing a recalc in Document::implicitOpen. This should ensure that they&apos;ll be properly set up by the time everything&apos;s said and done.

Thanks to anttik for walking through bits of this with me on #webkit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798988</commentid>
    <comment_count>25</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-02 15:30:59 -0800</bug_when>
    <thetext>Its kinda odd to me that all documents don&apos;t start out needing style recalc.  Document::createStyleResolver doesn&apos;t know how to do the inheritance. Maybe it should. It seems to be an artifact of the fact that style resolver creation is implicit in access of Document::styleResolver and that when a document doesn&apos;t have style the default-constructed StyleResolver knows how to do the right thing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799008</commentid>
    <comment_count>26</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-01-02 15:42:11 -0800</bug_when>
    <thetext>(In reply to comment #25)
&gt; Its kinda odd to me that all documents don&apos;t start out needing style recalc.  Document::createStyleResolver doesn&apos;t know how to do the inheritance. Maybe it should. It seems to be an artifact of the fact that style resolver creation is implicit in access of Document::styleResolver and that when a document doesn&apos;t have style the default-constructed StyleResolver knows how to do the right thing.

They don&apos;t start out needing a style recalc because we currently compute the initial style for elements when they are added to the tree, during attach().

The issue here is not style recalc though, it is that we need to update the stylesheet collection. Normally if the document has no stylesheets the stylesheet collection is empty (ua sheets are handled in StyleResolver). In case of inherited seamless sheets that is not true and we need to trigger an update. The badly named styleResolverChanged() does that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799012</commentid>
    <comment_count>27</comment_count>
      <attachid>181076</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-01-02 15:48:54 -0800</bug_when>
    <thetext>Comment on attachment 181076
Patch

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

&gt; Source/WebCore/dom/Document.cpp:2259
&gt; +    // Documents rendered seamlessly should start out requiring a style
&gt; +    // recalculation in order to ensure they inherit all the relevant data
&gt; +    // from their parent.

The comment is wrong. We don&apos;t need style recalc, we need stylesheet collection update. The style recalc is just a side effect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799046</commentid>
    <comment_count>28</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-01-02 16:10:27 -0800</bug_when>
    <thetext>It is true that the current update mechanism is bug-prone and hard to understand but fixing that is probably outside the scope of this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799278</commentid>
    <comment_count>29</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-02 22:44:47 -0800</bug_when>
    <thetext>(In reply to comment #28)
&gt; It is true that the current update mechanism is bug-prone and hard to understand but fixing that is probably outside the scope of this bug.

If you could (or already have?) file some bugs on the subject, I&apos;m sure there are others who would be happy to fix them. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799280</commentid>
    <comment_count>30</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-01-02 22:45:37 -0800</bug_when>
    <thetext>(In reply to comment #29)
&gt; (In reply to comment #28)
&gt; &gt; It is true that the current update mechanism is bug-prone and hard to understand but fixing that is probably outside the scope of this bug.
&gt; 
&gt; If you could (or already have?) file some bugs on the subject, I&apos;m sure there are others who would be happy to fix them. :)

(Otherwise stated: I suspect the set of folks interested/capable of writing such cleanup patches is larger than the set able/willing to write bugs explaining a better design.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799295</commentid>
    <comment_count>31</comment_count>
      <attachid>181154</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-03 00:39:39 -0800</bug_when>
    <thetext>Created attachment 181154
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799296</commentid>
    <comment_count>32</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-01-03 00:40:38 -0800</bug_when>
    <thetext>(In reply to comment #27)
&gt; (From update of attachment 181076 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=181076&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/Document.cpp:2259
&gt; &gt; +    // Documents rendered seamlessly should start out requiring a style
&gt; &gt; +    // recalculation in order to ensure they inherit all the relevant data
&gt; &gt; +    // from their parent.
&gt; 
&gt; The comment is wrong. We don&apos;t need style recalc, we need stylesheet collection update. The style recalc is just a side effect.

Fixed, thank you for the explanation.

I&apos;d echo Eric&apos;s comments; I&apos;d like to learn more about this area of code. If you have good ideas about improvements that you could point me to, I&apos;d be happy to do some grunt work of refactoring.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799307</commentid>
    <comment_count>33</comment_count>
      <attachid>181154</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-03 01:15:09 -0800</bug_when>
    <thetext>Comment on attachment 181154
Patch for landing

Clearing flags on attachment: 181154

Committed r138704: &lt;http://trac.webkit.org/changeset/138704&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799308</commentid>
    <comment_count>34</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-03 01:15:14 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799392</commentid>
    <comment_count>35</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-01-03 08:48:59 -0800</bug_when>
    <thetext>Bugzilla is not really the forum for discussion like this.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180976</attachid>
            <date>2012-12-31 07:41:46 -0800</date>
            <delta_ts>2013-01-01 07:20:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103539-20121231163853.patch</filename>
            <type>text/plain</type>
            <size>7241</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmZlNTA5NDJiOTVhZWU4
ODU4NGUzMjUyNzU3NjYzZTMyMjIxYmIyZS4uOTJiODI5OTU0YjY3MDVlZWFkMmNmNWUzNjA2ZDk0
ZjAwMzY1ZDdiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTEyLTMxICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgc2VhbWxlc3MgaWZyYW1lcyBk
b24ndCBpbmhlcml0IHN0eWxlcyB3aGVuIHNyY2RvYyBpcyB1c2VkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM1MzkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTZWFtbGVzcyBpZnJhbWVzIHBvcHVsYXRl
ZCB2aWEgYSAnc3JjZG9jJyBhdHRyaWJ1dGUgc2hvdWxkIGFsd2F5cworICAgICAgICBpbmhlcml0
IHN0eWxlcyBmcm9tIHRoZWlyIHBhcmVudCBkb2N1bWVudHMuIEF0IHRoZSBtb21lbnQsIHRoaXMg
aXMKKyAgICAgICAgb25seSB0aGUgY2FzZSB3aGVuIHRoZXkgY29udGFpbiBhIHN0eWxlc2hlZXQs
IG9yIHNvbWUgb3RoZXIgbWFya3VwCisgICAgICAgIHRoYXQgZm9yY2VzIGEgc3R5bGUgcmVjYWxj
dWxhdGlvbiBvbiB0aGUgZG9jdW1lbnQuIFNpbXBsZSBzcmNkb2MKKyAgICAgICAgYXR0cmlidXRl
cyAoInNyY2RvYz0nPHA+VGhpcyBpcyBhIGNvbW1lbnQuPC9wPiciKSBiYWlsIG91dCBvZgorICAg
ICAgICByZWNhbGN1bGF0aW5nIHN0eWxlIGVhcmx5LCBtZWFuaW5nIHRoYXQgdGhleSBhcHBlYXIg
dW5zdHlsZWQuCisKKyAgICAgICAgVGhpcyBwYXRjaCBpbnN0cnVjdHMgV2ViQ29yZSB0byB0cmVh
dCBzZWFtbGVzcyBkb2N1bWVudHMgYXMgaGF2aW5nIGFuCisgICAgICAgIHVwZGF0ZWQgU3R5bGVS
ZXNvbHZlciByZWdhcmRsZXNzIG9mIHdoYXQgYWN0aW9ucyB0aGUgcGFyc2VyIHRha2VzLAorICAg
ICAgICB3aGljaCBpbiB0dXJuIGVuc3VyZXMgdGhhdCB0aGUgZG9jdW1lbnQncyBzdHlsZSBpcyBy
ZWNhbGN1bGF0ZWQKKyAgICAgICAgY29ycmVjdGx5LgorCisgICAgICAgIFRlc3Q6IGZhc3QvZnJh
bWVzL3NlYW1sZXNzL3NlYW1sZXNzLXNyY2RvYy5odG1sCisKKyAgICAgICAgKiBkb20vRG9jdW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmZpbmlzaGVkUGFyc2luZyk6Cisg
ICAgICAgICAgICBJZiBpdCdzIGEgc2VhbWxlc3MgZG9jdW1lbnQsIG5vdGlmeSBpdCB0aGF0IGl0
cyBTdHlsZVJlc29sdmVyIGlzbid0CisgICAgICAgICAgICB3aGF0IGl0IG1pZ2h0IGhhdmUgZXhw
ZWN0ZWQuCisKIDIwMTItMTItMjkgIE90dG8gRGVyZWsgQ2hldW5nICA8b3RjaGV1bmdAcmltLmNv
bT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gQ29va2llcyB3aXRoIGFuIElQIGRvbWFpbiBhcmUg
bm90IGJlaW5nIGxvYWRlZCBwcm9wZXJseSBpbnRvIG1lbW9yeQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAKaW5kZXggYzkwYTViZmE3ZGE4MjEzMGJiZDhlMTU2ZDNkYjkzZDhiYzRmZThkOC4uYmY2YmFk
YzViMThhNTg0YTFmYTUyMGM1NDc2OTgyNjM4MWZkMjg4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCkBAIC00Mzg0LDYgKzQzODQsOSBAQCB2b2lkIERvY3VtZW50OjpmaW5pc2hlZFBhcnNpbmco
KQogICAgIGlmICghbV9kb2N1bWVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQpCiAg
ICAgICAgIG1fZG9jdW1lbnRUaW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50RW5kID0gbW9ub3Rv
bmljYWxseUluY3JlYXNpbmdUaW1lKCk7CiAKKyAgICBpZiAoc2hvdWxkRGlzcGxheVNlYW1sZXNz
bHlXaXRoUGFyZW50KCkpCisgICAgICAgIHN0eWxlUmVzb2x2ZXJDaGFuZ2VkKERlZmVyUmVjYWxj
U3R5bGUpOworCiAgICAgaWYgKFJlZlB0cjxGcmFtZT4gZiA9IGZyYW1lKCkpIHsKICAgICAgICAg
Ly8gRnJhbWVMb2FkZXI6OmZpbmlzaGVkUGFyc2luZygpIG1pZ2h0IGVuZCB1cCBjYWxsaW5nIERv
Y3VtZW50OjppbXBsaWNpdENsb3NlKCkgaWYgYWxsCiAgICAgICAgIC8vIHJlc291cmNlIGxvYWRz
IGFyZSBjb21wbGV0ZS4gSFRNTE9iamVjdEVsZW1lbnRzIGNhbiBzdGFydCBsb2FkaW5nIHRoZWly
IHJlc291cmNlcyBmcm9tCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDg2ZTE4Nzk2ZDAxMGUzYjkxNmEyOTZlNmRhZTQ4ZDY3
ODgxMWYxYS4uZDcxNWYxYTUyMWJiMTZhMzNiNDFmOWQ4ZmE5NWNlYjMzMTIyZDBmMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE5IEBACisyMDEyLTEyLTMxICBNaWtlIFdlc3QgIDxta3dzdEBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgc2VhbWxlc3MgaWZyYW1lcyBkb24ndCBpbmhlcml0IHN0eWxlcyB3aGVu
IHNyY2RvYyBpcyB1c2VkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMDM1MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIGZhc3QvZnJhbWVzL3NlYW1sZXNzL3Jlc291cmNlcy9zcGFuLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvZnJhbWVzL3NlYW1sZXNzL3NlYW1sZXNzLWNvbnRlbnRlZGl0YWJs
ZS1ub3QtaW5oZXJpdGVkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgICAgIFVwZGF0aW5nIHRoZSBw
cmV2aW91c2x5IEZBSUxpbmcgZXhwZWN0YXRpb24uCisgICAgICAgICogZmFzdC9mcmFtZXMvc2Vh
bWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFz
dC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWw6IEFkZGVkLgorICAgICAgICAg
ICAgRXhjaXRpbmcgbmV3IHRlc3QgdG8gZW5zdXJlIHRoYXQgdGhpcyBkb2Vzbid0IHJlZ3Jlc3Ms
IG5laXRoZXIKKyAgICAgICAgICAgIGZvciB0b3RhbGx5IHNpbXBsZSBzcmNkb2MgYXR0cml1YnRl
cywgbm9yIGZvciBzbGlnaHRseSBtb3JlCisgICAgICAgICAgICBjb21wbGV4IHZhcmlhdGlvbnMu
CisKIDIwMTItMTItMjkgIFNlb2tqdSBLd29uICA8c2Vva2p1Lmt3b25AZ21haWwuY29tPgogCiAg
ICAgICAgIFtHVEtdIENoYW5nZSBidWcgZm9yIHNvbWUgaW5zcGVjdG9yIHRlc3RzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9yZXNvdXJjZXMvc3Bhbi5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3MvcmVzb3VyY2VzL3NwYW4uaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5kZjI3NTJiYjU3OTViMzg4ZGEyZmMxZjkzY2VkMTMyOWRlZWU5MzI0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3MvcmVzb3VyY2Vz
L3NwYW4uaHRtbApAQCAtMCwwICsxIEBACis8c3Bhbj5UaGlzIGlzIGEgc3Bhbi48L3NwYW4+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1jb250
ZW50ZWRpdGFibGUtbm90LWluaGVyaXRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1jb250ZW50ZWRpdGFibGUtbm90LWluaGVyaXRlZC1l
eHBlY3RlZC50eHQKaW5kZXggMjI0ZGU1MjkzMjhmN2ZkN2MwODIzZGE1MzQzMDYzZTdhMzllZDhj
Ny4uZmYwZjI0ZjEyZDA5Njk4NGUxODQxZWEwMWE0YzMxZWVjMzg0NzQ5NSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3MtY29udGVudGVkaXRhYmxl
LW5vdC1pbmhlcml0ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZnJhbWVz
L3NlYW1sZXNzL3NlYW1sZXNzLWNvbnRlbnRlZGl0YWJsZS1ub3QtaW5oZXJpdGVkLWV4cGVjdGVk
LnR4dApAQCAtMSw0ICsxLDQgQEAKIFRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgY29udGVudCBpbnNp
ZGUgYSBzZWFtbGVzcyBpZnJhbWUgZG9lcyBub3QgaW5oZXJpdCBlZGl0YWJpbGl0eSB2aWEgdGhl
IGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgb24gYSBwYXJlbnQgZWxlbWVudCwgYnV0IGRvZXMg
dmlhIGEgQ1NTIHJ1bGUgdGhhdCBjYXNjYWRlcyBpbnRvIHRoZSBmcmFtZS4KIFBBU1Mgd2luZG93
LmdldENvbXB1dGVkU3R5bGUoc3BhbikuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC11c2Vy
LW1vZGlmeScpLmNzc1RleHQgaXMgInJlYWQtb25seSIKLUZBSUwgd2luZG93LmdldENvbXB1dGVk
U3R5bGUocCkuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC11c2VyLW1vZGlmeScpLmNzc1Rl
eHQgc2hvdWxkIGJlIHJlYWQtd3JpdGUuIFdhcyByZWFkLW9ubHkuCitQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKHApLmdldFByb3BlcnR5Q1NTVmFsdWUoJy13ZWJraXQtdXNlci1tb2RpZnkn
KS5jc3NUZXh0IGlzICJyZWFkLXdyaXRlIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1zcmNkb2MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43NjIxNzk1NjBiMzBmOWM5YzZmZTIwZjk0ZGYxMjBlNWYxODc4YzBkCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3Jj
ZG9jLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBlbnN1cmVzIHRoYXQg
Y29udGVudCBpbnNpZGUgYSBzZWFtbGVzcyBzcmNkb2MgaWZyYW1lIGNvcnJlY3RseSBpbmhlcml0
cyBzdHlsZSwgZXZlbiBpZiBpdCBkb2Vzbid0IHNldCBhbnkgc3R5bGVzIG9mIGl0cyBvd24uCitQ
QVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3NwYW4pLmdldFByb3BlcnR5Q1NTVmFs
dWUoJ2NvbG9yJykuY3NzVGV4dCBpcyAicmdiKDI1NSwgMCwgMCkiCitQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKHNyY2RvY3N0eWxlc3BhbikuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnY29sb3In
KS5jc3NUZXh0IGlzICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUoc3BhbikuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnY29sb3InKS5jc3NUZXh0IGlzICJyZ2IoMjU1
LCAwLCAwKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mv
c2VhbWxlc3Mtc3JjZG9jLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9z
ZWFtbGVzcy1zcmNkb2MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MzUyNTdlM2M1NTJhNDMwZjk3MjNlMzRl
YjVlMzc4ZjE4NTZkMTZkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFt
ZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwKQEAgLTAsMCArMSwyNyBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIHdp
bmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICBkZWJ1ZygiVGhpcyB0ZXN0
IGVuc3VyZXMgdGhhdCBjb250ZW50IGluc2lkZSBhIHNlYW1sZXNzIHNyY2RvYyBpZnJhbWUgY29y
cmVjdGx5IGluaGVyaXRzIHN0eWxlLCBldmVuIGlmIGl0IGRvZXNuJ3Qgc2V0IGFueSBzdHlsZXMg
b2YgaXRzIG93bi4iKTsKKworICAgICAgICAgICAgd2luZG93LnNyY2RvY3NwYW4gPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgibm9zdHlsZSIpLmNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9y
KCdzcGFuJyk7CisgICAgICAgICAgICB3aW5kb3cuc3JjZG9jc3R5bGVzcGFuID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInN0eWxlIikuY29udGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3Nw
YW4nKTsKKyAgICAgICAgICAgIHdpbmRvdy5zcGFuID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcign
aWZyYW1lW3NyY10nKS5jb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc3BhbicpOworCisg
ICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KHNyY2RvY3NwYW4pLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJykuY3NzVGV4dCIsICJyZ2Io
MjU1LCAwLCAwKSIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cu
Z2V0Q29tcHV0ZWRTdHlsZShzcmNkb2NzdHlsZXNwYW4pLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2Nv
bG9yJykuY3NzVGV4dCIsICJyZ2IoMjU1LCAwLCAwKSIpOworICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzcGFuKS5nZXRQcm9wZXJ0eUNT
U1ZhbHVlKCdjb2xvcicpLmNzc1RleHQiLCAicmdiKDI1NSwgMCwgMCkiKTsKKyAgICAgICAgfTsK
KyAgICA8L3NjcmlwdD4KKyAgICA8c3R5bGU+CisgICAgICAgIHNwYW4geyBjb2xvcjogcmVkOyB9
CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxpZnJhbWUgaWQ9Im5vc3R5bGUi
IHNlYW1sZXNzIHNyY2RvYz0iPHNwYW4+VGhpcyBpcyBhIHNwYW4uPC9zcGFuPiI+PC9pZnJhbWU+
CisgICAgPGlmcmFtZSBpZD0ic3R5bGUiIHNlYW1sZXNzIHNyY2RvYz0iPHN0eWxlPjwvc3R5bGU+
PHNwYW4+VGhpcyBpcyBhIHNwYW4uPC9zcGFuPiI+PC9pZnJhbWU+CisgICAgPGlmcmFtZSBzZWFt
bGVzcyBzcmM9InJlc291cmNlcy9zcGFuLmh0bWwiPjwvaWZyYW1lPgorPC9ib2R5PgorPC9odG1s
Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180991</attachid>
            <date>2013-01-01 07:20:33 -0800</date>
            <delta_ts>2013-01-02 15:12:02 -0800</delta_ts>
            <desc>Patch for landing.</desc>
            <filename>bug-103539-20130101161740.patch</filename>
            <type>text/plain</type>
            <size>7541</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NjAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjU5ZGMxOTgwNmFmNDc0
M2IyZThkZTdhOGNhNmNjZGY0ODUzNDU5Yi4uZTYyYjJhOTY2ZDE1Y2EwOWUwMzc3MWVmYTdkOTQ2
ZGUyODUzM2JkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEzLTAxLTAxICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgc2VhbWxlc3MgaWZyYW1lcyBk
b24ndCBpbmhlcml0IHN0eWxlcyB3aGVuIHNyY2RvYyBpcyB1c2VkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM1MzkKKworICAgICAgICBSZXZpZXdl
ZCBieSBFcmljIFNlaWRlbC4KKworICAgICAgICBTZWFtbGVzcyBpZnJhbWVzIHBvcHVsYXRlZCB2
aWEgYSAnc3JjZG9jJyBhdHRyaWJ1dGUgc2hvdWxkIGFsd2F5cworICAgICAgICBpbmhlcml0IHN0
eWxlcyBmcm9tIHRoZWlyIHBhcmVudCBkb2N1bWVudHMuIEF0IHRoZSBtb21lbnQsIHRoaXMgaXMK
KyAgICAgICAgb25seSB0aGUgY2FzZSB3aGVuIHRoZXkgY29udGFpbiBhIHN0eWxlc2hlZXQgb3Ig
c29tZSBvdGhlciBtYXJrdXAKKyAgICAgICAgdGhhdCBmb3JjZXMgYSBzdHlsZSByZWNhbGN1bGF0
aW9uIG9uIHRoZSBkb2N1bWVudC4gU2ltcGxlICdzcmNkb2MnCisgICAgICAgIGF0dHJpYnV0ZXMg
KGUuZy4gInNyY2RvYz0nPHA+VGhpcyBpcyBhIGNvbW1lbnQuPC9wPiciKSBiYWlsIG91dCBvZgor
ICAgICAgICByZWNhbGN1bGF0aW5nIHN0eWxlIGVhcmx5LCByZXN1bHRpbmcgaW4gdW5zdHlsZWQg
YXBwZWFyYW5jZS4KKworICAgICAgICBUaGlzIHBhdGNoIGluc3RydWN0cyBXZWJDb3JlIHRvIHRy
ZWF0IHNlYW1sZXNzIGRvY3VtZW50cyBhcyBoYXZpbmcgYW4KKyAgICAgICAgdXBkYXRlZCBTdHls
ZVJlc29sdmVyIHJlZ2FyZGxlc3Mgb2Ygd2hhdCBhY3Rpb25zIHRoZSBwYXJzZXIgdGFrZXMsCisg
ICAgICAgIHdoaWNoIGluIHR1cm4gZW5zdXJlcyB0aGF0IHRoZSBkb2N1bWVudCdzIHN0eWxlIGlz
IHJlY2FsY3VsYXRlZAorICAgICAgICBjb3JyZWN0bHkuCisKKyAgICAgICAgVGVzdDogZmFzdC9m
cmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwKKworICAgICAgICAqIGRvbS9Eb2N1
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6ZmluaXNoZWRQYXJzaW5nKToK
KyAgICAgICAgICAgIElmIGl0J3MgYSBzZWFtbGVzcyBkb2N1bWVudCwgbm90aWZ5IGl0IHRoYXQg
aXRzIFN0eWxlUmVzb2x2ZXIgaXNuJ3QKKyAgICAgICAgICAgIHdoYXQgaXQgbWlnaHQgaGF2ZSBl
eHBlY3RlZC4KKwogMjAxMi0xMi0zMSAgSmVmZiBSb2dlcnMgIDxqcm9nZXJzQHJpbS5jb20+CiAK
ICAgICAgICAgW0JsYWNrQmVycnldIEZ1bGxzY3JlZW4gTWVkaWEgVGltZSBJbmRpY2F0b3JzIEJh
Y2tncm91bmQgSW5jb3JyZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBjOTBhNWJmYTdk
YTgyMTMwYmJkOGUxNTZkM2RiOTNkOGJjNGZlOGQ4Li4wZjE2MjNmY2ZjYzdlMTAzMWYzZDY5YTRl
NmViN2E2MTRhMjQzM2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTQzODQsNiArNDM4
NCwxMiBAQCB2b2lkIERvY3VtZW50OjpmaW5pc2hlZFBhcnNpbmcoKQogICAgIGlmICghbV9kb2N1
bWVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQpCiAgICAgICAgIG1fZG9jdW1lbnRU
aW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50RW5kID0gbW9ub3RvbmljYWxseUluY3JlYXNpbmdU
aW1lKCk7CiAKKyAgICAvLyBTZWFtbGVzcyBpZnJhbWVzIHJlcXVpcmUgYSBmb3JjZWQgU3R5bGVS
ZXNvbHZlciByZWNhbGMgaW4gb3JkZXIgdG8gZW5zdXJlIHRoYXQgdGhleQorICAgIC8vIGluaGVy
aXQgc3R5bGUgZnJvbSB0aGVpciBwYXJlbnQuIFdpdGhvdXQgdGhpcyByZWNhbGMsIGZyYW1lcyB0
aGF0IGRvbid0IGRlZmluZSBhbnkgb2YKKyAgICAvLyB0aGVpciBvd24gc3R5bGVzIHdvbid0IGRp
c2NvdmVyIHRoYXQgdGhlcmUncyBzdGlsbCB3b3JrIHRvIGJlIGRvbmUuCisgICAgaWYgKHNob3Vs
ZERpc3BsYXlTZWFtbGVzc2x5V2l0aFBhcmVudCgpKQorICAgICAgICBzdHlsZVJlc29sdmVyQ2hh
bmdlZChEZWZlclJlY2FsY1N0eWxlKTsKKwogICAgIGlmIChSZWZQdHI8RnJhbWU+IGYgPSBmcmFt
ZSgpKSB7CiAgICAgICAgIC8vIEZyYW1lTG9hZGVyOjpmaW5pc2hlZFBhcnNpbmcoKSBtaWdodCBl
bmQgdXAgY2FsbGluZyBEb2N1bWVudDo6aW1wbGljaXRDbG9zZSgpIGlmIGFsbAogICAgICAgICAv
LyByZXNvdXJjZSBsb2FkcyBhcmUgY29tcGxldGUuIEhUTUxPYmplY3RFbGVtZW50cyBjYW4gc3Rh
cnQgbG9hZGluZyB0aGVpciByZXNvdXJjZXMgZnJvbQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDViMzY5NmQzNjVjOGMwYzM5
NTA0ZTZlMTE0MjU3NDU4M2YxYmQ5ODIuLmM2Y2FlODZmYTZlYjBiZTAwZWJjODJjY2YwNTg4YzAw
ZmRhMzJlYjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMy0wMS0wMSAgTWlrZSBXZXN0ICA8
bWt3c3RAY2hyb21pdW0ub3JnPgorCisgICAgICAgIHNlYW1sZXNzIGlmcmFtZXMgZG9uJ3QgaW5o
ZXJpdCBzdHlsZXMgd2hlbiBzcmNkb2MgaXMgdXNlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzNTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJp
YyBTZWlkZWwuCisKKyAgICAgICAgKiBmYXN0L2ZyYW1lcy9zZWFtbGVzcy9yZXNvdXJjZXMvc3Bh
bi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1j
b250ZW50ZWRpdGFibGUtbm90LWluaGVyaXRlZC1leHBlY3RlZC50eHQ6CisgICAgICAgICAgICBV
cGRhdGluZyB0aGUgcHJldmlvdXNseSBGQUlMaW5nIGV4cGVjdGF0aW9uLgorICAgICAgICAqIGZh
c3QvZnJhbWVzL3NlYW1sZXNzL3NlYW1sZXNzLXNyY2RvYy1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZnJhbWVzL3NlYW1sZXNzL3NlYW1sZXNzLXNyY2RvYy5odG1sOiBBZGRl
ZC4KKyAgICAgICAgICAgIEV4Y2l0aW5nIG5ldyB0ZXN0IHRvIGVuc3VyZSB0aGF0IHRoaXMgZG9l
c24ndCByZWdyZXNzLCBuZWl0aGVyCisgICAgICAgICAgICBmb3IgdG90YWxseSBzaW1wbGUgc3Jj
ZG9jIGF0dHJpdWJ0ZXMsIG5vciBmb3Igc2xpZ2h0bHkgbW9yZQorICAgICAgICAgICAgY29tcGxl
eCB2YXJpYXRpb25zLgorCiAyMDEyLTEyLTMxICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1z
dW5nLmNvbT4KIAogICAgICAgICBbRUZMXSBjc3MzL21hc2tpbmcvY2xpcC1wYXRoLWNpcmNsZS1y
ZWxhdGl2ZS1vdmVyZmxvdy5odG1sIG5lZWRzIGV4cGVjdGVkIHJlc3VsdHMgdXBkYXRlIGFmdGVy
IDk3MjE3CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9yZXNv
dXJjZXMvc3Bhbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3MvcmVzb3Vy
Y2VzL3NwYW4uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjI3NTJiYjU3OTViMzg4ZGEyZmMxZjkzY2VkMTMy
OWRlZWU5MzI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2Vh
bWxlc3MvcmVzb3VyY2VzL3NwYW4uaHRtbApAQCAtMCwwICsxIEBACis8c3Bhbj5UaGlzIGlzIGEg
c3Bhbi48L3NwYW4+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVz
cy9zZWFtbGVzcy1jb250ZW50ZWRpdGFibGUtbm90LWluaGVyaXRlZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1jb250ZW50ZWRpdGFibGUt
bm90LWluaGVyaXRlZC1leHBlY3RlZC50eHQKaW5kZXggMjI0ZGU1MjkzMjhmN2ZkN2MwODIzZGE1
MzQzMDYzZTdhMzllZDhjNy4uZmYwZjI0ZjEyZDA5Njk4NGUxODQxZWEwMWE0YzMxZWVjMzg0NzQ5
NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mt
Y29udGVudGVkaXRhYmxlLW5vdC1pbmhlcml0ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZnJhbWVzL3NlYW1sZXNzL3NlYW1sZXNzLWNvbnRlbnRlZGl0YWJsZS1ub3QtaW5o
ZXJpdGVkLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIFRoaXMgdGVzdCBlbnN1cmVzIHRo
YXQgY29udGVudCBpbnNpZGUgYSBzZWFtbGVzcyBpZnJhbWUgZG9lcyBub3QgaW5oZXJpdCBlZGl0
YWJpbGl0eSB2aWEgdGhlIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgb24gYSBwYXJlbnQgZWxl
bWVudCwgYnV0IGRvZXMgdmlhIGEgQ1NTIHJ1bGUgdGhhdCBjYXNjYWRlcyBpbnRvIHRoZSBmcmFt
ZS4KIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoc3BhbikuZ2V0UHJvcGVydHlDU1NWYWx1
ZSgnLXdlYmtpdC11c2VyLW1vZGlmeScpLmNzc1RleHQgaXMgInJlYWQtb25seSIKLUZBSUwgd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUocCkuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC11c2Vy
LW1vZGlmeScpLmNzc1RleHQgc2hvdWxkIGJlIHJlYWQtd3JpdGUuIFdhcyByZWFkLW9ubHkuCitQ
QVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHApLmdldFByb3BlcnR5Q1NTVmFsdWUoJy13ZWJr
aXQtdXNlci1tb2RpZnknKS5jc3NUZXh0IGlzICJyZWFkLXdyaXRlIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1zcmNkb2MtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NjIxNzk1NjBiMzBmOWM5YzZmZTIwZjk0ZGYxMjBlNWYx
ODc4YzBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxl
c3Mvc2VhbWxlc3Mtc3JjZG9jLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVz
dCBlbnN1cmVzIHRoYXQgY29udGVudCBpbnNpZGUgYSBzZWFtbGVzcyBzcmNkb2MgaWZyYW1lIGNv
cnJlY3RseSBpbmhlcml0cyBzdHlsZSwgZXZlbiBpZiBpdCBkb2Vzbid0IHNldCBhbnkgc3R5bGVz
IG9mIGl0cyBvd24uCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3NwYW4pLmdl
dFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJykuY3NzVGV4dCBpcyAicmdiKDI1NSwgMCwgMCkiCitQ
QVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3N0eWxlc3BhbikuZ2V0UHJvcGVydHlD
U1NWYWx1ZSgnY29sb3InKS5jc3NUZXh0IGlzICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1Mgd2luZG93
LmdldENvbXB1dGVkU3R5bGUoc3BhbikuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnY29sb3InKS5jc3NU
ZXh0IGlzICJyZ2IoMjU1LCAwLCAwKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9m
cmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zy
YW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1zcmNkb2MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MzUyNTdlM2M1
NTJhNDMwZjk3MjNlMzRlYjVlMzc4ZjE4NTZkMTZkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwKQEAgLTAsMCAr
MSwyNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgIDxzY3Jp
cHQ+CisgICAgICAgIHdpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICBk
ZWJ1ZygiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCBjb250ZW50IGluc2lkZSBhIHNlYW1sZXNzIHNy
Y2RvYyBpZnJhbWUgY29ycmVjdGx5IGluaGVyaXRzIHN0eWxlLCBldmVuIGlmIGl0IGRvZXNuJ3Qg
c2V0IGFueSBzdHlsZXMgb2YgaXRzIG93bi4iKTsKKworICAgICAgICAgICAgd2luZG93LnNyY2Rv
Y3NwYW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm9zdHlsZSIpLmNvbnRlbnREb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKCdzcGFuJyk7CisgICAgICAgICAgICB3aW5kb3cuc3JjZG9jc3R5bGVz
cGFuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0eWxlIikuY29udGVudERvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoJ3NwYW4nKTsKKyAgICAgICAgICAgIHdpbmRvdy5zcGFuID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcignaWZyYW1lW3NyY10nKS5jb250ZW50RG9jdW1lbnQucXVlcnlTZWxlY3Rv
cignc3BhbicpOworCisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKHNyY2RvY3NwYW4pLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJyku
Y3NzVGV4dCIsICJyZ2IoMjU1LCAwLCAwKSIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzcmNkb2NzdHlsZXNwYW4pLmdldFByb3Bl
cnR5Q1NTVmFsdWUoJ2NvbG9yJykuY3NzVGV4dCIsICJyZ2IoMjU1LCAwLCAwKSIpOworICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzcGFu
KS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCdjb2xvcicpLmNzc1RleHQiLCAicmdiKDI1NSwgMCwgMCki
KTsKKyAgICAgICAgfTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c3R5bGU+CisgICAgICAgIHNwYW4g
eyBjb2xvcjogcmVkOyB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxpZnJh
bWUgaWQ9Im5vc3R5bGUiIHNlYW1sZXNzIHNyY2RvYz0iPHNwYW4+VGhpcyBpcyBhIHNwYW4uPC9z
cGFuPiI+PC9pZnJhbWU+CisgICAgPGlmcmFtZSBpZD0ic3R5bGUiIHNlYW1sZXNzIHNyY2RvYz0i
PHN0eWxlPjwvc3R5bGU+PHNwYW4+VGhpcyBpcyBhIHNwYW4uPC9zcGFuPiI+PC9pZnJhbWU+Cisg
ICAgPGlmcmFtZSBzZWFtbGVzcyBzcmM9InJlc291cmNlcy9zcGFuLmh0bWwiPjwvaWZyYW1lPgor
PC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181076</attachid>
            <date>2013-01-02 15:12:08 -0800</date>
            <delta_ts>2013-01-03 00:39:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103539-20130103000914.patch</filename>
            <type>text/plain</type>
            <size>7148</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTFhZWZkMDcxNzlmMGJk
MTFmNjhjNzk2YjkwOTYwMDk3YTg5NWRhZi4uYTlkMTQ5ZjM3ZGU2MDE2ZjEyMDEzNmU4NDNiYWU3
NWNlOTdiOThhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEzLTAxLTAyICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgc2VhbWxlc3MgaWZyYW1lcyBk
b24ndCBpbmhlcml0IHN0eWxlcyB3aGVuIHNyY2RvYyBpcyB1c2VkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM1MzkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTZWFtbGVzcyBpZnJhbWVzIHBvcHVsYXRl
ZCB2aWEgYSAnc3JjZG9jJyBhdHRyaWJ1dGUgc2hvdWxkIGFsd2F5cworICAgICAgICBpbmhlcml0
IHN0eWxlcyBmcm9tIHRoZWlyIHBhcmVudCBkb2N1bWVudHMuIEF0IHRoZSBtb21lbnQsIHRoaXMg
aXMKKyAgICAgICAgb25seSB0aGUgY2FzZSB3aGVuIHRoZXkgY29udGFpbiBhIHN0eWxlc2hlZXQg
b3Igc29tZSBvdGhlciBtYXJrdXAKKyAgICAgICAgdGhhdCBmb3JjZXMgYSBzdHlsZSByZWNhbGN1
bGF0aW9uIG9uIHRoZSBkb2N1bWVudC4gU2ltcGxlICdzcmNkb2MnCisgICAgICAgIGF0dHJpYnV0
ZXMgKGUuZy4gInNyY2RvYz0nPHA+VGhpcyBpcyBhIGNvbW1lbnQuPC9wPiciKSBiYWlsIG91dCBv
ZgorICAgICAgICByZWNhbGN1bGF0aW5nIHN0eWxlIGVhcmx5LCByZXN1bHRpbmcgaW4gdW5zdHls
ZWQgYXBwZWFyYW5jZS4KKworICAgICAgICBUaGlzIHBhdGNoIGluc3RydWN0cyBXZWJDb3JlIHRv
IHRyZWF0IHNlYW1sZXNzIGRvY3VtZW50cyBhcyBoYXZpbmcgYW4KKyAgICAgICAgdXBkYXRlZCBT
dHlsZVJlc29sdmVyIHJlZ2FyZGxlc3Mgb2Ygd2hhdCBhY3Rpb25zIHRoZSBwYXJzZXIgdGFrZXMs
CisgICAgICAgIHdoaWNoIGluIHR1cm4gZW5zdXJlcyB0aGF0IHRoZSBkb2N1bWVudCdzIHN0eWxl
IGlzIHJlY2FsY3VsYXRlZAorICAgICAgICBjb3JyZWN0bHkuCisKKyAgICAgICAgVGVzdDogZmFz
dC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwKKworICAgICAgICAqIGRvbS9E
b2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6aW1wbGljaXRPcGVuKToK
KyAgICAgICAgICAgIElmIGl0J3MgYSBzZWFtbGVzcyBkb2N1bWVudCwgbm90aWZ5IGl0IHRoYXQg
aXRzIFN0eWxlUmVzb2x2ZXIgaXNuJ3QKKyAgICAgICAgICAgIHdoYXQgaXQgbWlnaHQgaGF2ZSBl
eHBlY3RlZC4KKwogMjAxMy0wMS0wMiAgS29uZGFwYWxseSBLYWx5YW4gIDxrYWx5YW4ua29uZGFw
YWxseUBpbnRlbC5jb20+CiAKICAgICAgICAgW0VGTF0gW1dlYkdMXSBNaW5vciBjbGVhbnVwIGlu
IFBsYXRmb3JtQ29udGV4dC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IGM5MGE1YmZhN2Rh
ODIxMzBiYmQ4ZTE1NmQzZGI5M2Q4YmM0ZmU4ZDguLjFmNjc5MTgyY2ViMjVkZjhkNWFlMWUwZjQw
NTNjYWY3YjQ2ZTBkMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMjI1NCw2ICsyMjU0
LDEyIEBAIHZvaWQgRG9jdW1lbnQ6OmltcGxpY2l0T3BlbigpCiAKICAgICBzZXRDb21wYXRpYmls
aXR5TW9kZShOb1F1aXJrc01vZGUpOwogCisgICAgLy8gRG9jdW1lbnRzIHJlbmRlcmVkIHNlYW1s
ZXNzbHkgc2hvdWxkIHN0YXJ0IG91dCByZXF1aXJpbmcgYSBzdHlsZQorICAgIC8vIHJlY2FsY3Vs
YXRpb24gaW4gb3JkZXIgdG8gZW5zdXJlIHRoZXkgaW5oZXJpdCBhbGwgdGhlIHJlbGV2YW50IGRh
dGEKKyAgICAvLyBmcm9tIHRoZWlyIHBhcmVudC4KKyAgICBpZiAoc2hvdWxkRGlzcGxheVNlYW1s
ZXNzbHlXaXRoUGFyZW50KCkpCisgICAgICAgIHN0eWxlUmVzb2x2ZXJDaGFuZ2VkKERlZmVyUmVj
YWxjU3R5bGUpOworCiAgICAgbV9wYXJzZXIgPSBjcmVhdGVQYXJzZXIoKTsKICAgICBzZXRQYXJz
aW5nKHRydWUpOwogICAgIHNldFJlYWR5U3RhdGUoTG9hZGluZyk7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTM1Yzg5ZTFl
OGIxZmU2N2VjYWRlMTc1ZGE2OTUxZTUyMDA4YTc0MS4uNWQwMGNiMDY1Mjc3NGExMTAyOGJiMzVm
ZDhhYjA2MzE4M2Y1MjI0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTAxLTAyICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgc2VhbWxlc3MgaWZyYW1lcyBk
b24ndCBpbmhlcml0IHN0eWxlcyB3aGVuIHNyY2RvYyBpcyB1c2VkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM1MzkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvZnJhbWVzL3NlYW1sZXNzL3Jl
c291cmNlcy9zcGFuLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZnJhbWVzL3NlYW1sZXNz
L3NlYW1sZXNzLWNvbnRlbnRlZGl0YWJsZS1ub3QtaW5oZXJpdGVkLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgICAgIFVwZGF0aW5nIHRoZSBwcmV2aW91c2x5IGZhaWxpbmcgZXhwZWN0YXRpb24uCisg
ICAgICAgICogZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9j
Lmh0bWw6IEFkZGVkLgorICAgICAgICAgICAgRXhjaXRpbmcgbmV3IHRlc3QgdG8gZW5zdXJlIHRo
YXQgdGhpcyBkb2Vzbid0IHJlZ3Jlc3MsIG5laXRoZXIKKyAgICAgICAgICAgIGZvciB0b3RhbGx5
IHNpbXBsZSBzcmNkb2MgYXR0cml1YnRlcywgbm9yIGZvciBzbGlnaHRseSBtb3JlCisgICAgICAg
ICAgICBjb21wbGV4IHZhcmlhdGlvbnMuCisKIDIwMTMtMDEtMDIgIFNoZXJpZmYgQm90ICA8d2Vi
a2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcg
b3V0IHIxMzg2MDEuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVz
cy9yZXNvdXJjZXMvc3Bhbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mv
cmVzb3VyY2VzL3NwYW4uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjI3NTJiYjU3OTViMzg4ZGEyZmMxZjkz
Y2VkMTMyOWRlZWU5MzI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFt
ZXMvc2VhbWxlc3MvcmVzb3VyY2VzL3NwYW4uaHRtbApAQCAtMCwwICsxIEBACis8c3Bhbj5UaGlz
IGlzIGEgc3Bhbi48L3NwYW4+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9z
ZWFtbGVzcy9zZWFtbGVzcy1jb250ZW50ZWRpdGFibGUtbm90LWluaGVyaXRlZC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1jb250ZW50ZWRp
dGFibGUtbm90LWluaGVyaXRlZC1leHBlY3RlZC50eHQKaW5kZXggMjI0ZGU1MjkzMjhmN2ZkN2Mw
ODIzZGE1MzQzMDYzZTdhMzllZDhjNy4uZmYwZjI0ZjEyZDA5Njk4NGUxODQxZWEwMWE0YzMxZWVj
Mzg0NzQ5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2Vh
bWxlc3MtY29udGVudGVkaXRhYmxlLW5vdC1pbmhlcml0ZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZnJhbWVzL3NlYW1sZXNzL3NlYW1sZXNzLWNvbnRlbnRlZGl0YWJsZS1u
b3QtaW5oZXJpdGVkLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIFRoaXMgdGVzdCBlbnN1
cmVzIHRoYXQgY29udGVudCBpbnNpZGUgYSBzZWFtbGVzcyBpZnJhbWUgZG9lcyBub3QgaW5oZXJp
dCBlZGl0YWJpbGl0eSB2aWEgdGhlIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgb24gYSBwYXJl
bnQgZWxlbWVudCwgYnV0IGRvZXMgdmlhIGEgQ1NTIHJ1bGUgdGhhdCBjYXNjYWRlcyBpbnRvIHRo
ZSBmcmFtZS4KIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoc3BhbikuZ2V0UHJvcGVydHlD
U1NWYWx1ZSgnLXdlYmtpdC11c2VyLW1vZGlmeScpLmNzc1RleHQgaXMgInJlYWQtb25seSIKLUZB
SUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCkuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtp
dC11c2VyLW1vZGlmeScpLmNzc1RleHQgc2hvdWxkIGJlIHJlYWQtd3JpdGUuIFdhcyByZWFkLW9u
bHkuCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHApLmdldFByb3BlcnR5Q1NTVmFsdWUo
Jy13ZWJraXQtdXNlci1tb2RpZnknKS5jc3NUZXh0IGlzICJyZWFkLXdyaXRlIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1zcmNkb2MtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3Jj
ZG9jLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NjIxNzk1NjBiMzBmOWM5YzZmZTIwZjk0ZGYx
MjBlNWYxODc4YzBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMv
c2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1Ro
aXMgdGVzdCBlbnN1cmVzIHRoYXQgY29udGVudCBpbnNpZGUgYSBzZWFtbGVzcyBzcmNkb2MgaWZy
YW1lIGNvcnJlY3RseSBpbmhlcml0cyBzdHlsZSwgZXZlbiBpZiBpdCBkb2Vzbid0IHNldCBhbnkg
c3R5bGVzIG9mIGl0cyBvd24uCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3Nw
YW4pLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJykuY3NzVGV4dCBpcyAicmdiKDI1NSwgMCwg
MCkiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3N0eWxlc3BhbikuZ2V0UHJv
cGVydHlDU1NWYWx1ZSgnY29sb3InKS5jc3NUZXh0IGlzICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1Mg
d2luZG93LmdldENvbXB1dGVkU3R5bGUoc3BhbikuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnY29sb3In
KS5jc3NUZXh0IGlzICJyZ2IoMjU1LCAwLCAwKSIKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1zcmNkb2MuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MzUy
NTdlM2M1NTJhNDMwZjk3MjNlMzRlYjVlMzc4ZjE4NTZkMTZkCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwKQEAg
LTAsMCArMSwyNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzY3Jp
cHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQ+CisgICAgICAgIHdpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CisgICAgICAg
ICAgICBkZWJ1ZygiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCBjb250ZW50IGluc2lkZSBhIHNlYW1s
ZXNzIHNyY2RvYyBpZnJhbWUgY29ycmVjdGx5IGluaGVyaXRzIHN0eWxlLCBldmVuIGlmIGl0IGRv
ZXNuJ3Qgc2V0IGFueSBzdHlsZXMgb2YgaXRzIG93bi4iKTsKKworICAgICAgICAgICAgd2luZG93
LnNyY2RvY3NwYW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm9zdHlsZSIpLmNvbnRlbnRE
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzcGFuJyk7CisgICAgICAgICAgICB3aW5kb3cuc3JjZG9j
c3R5bGVzcGFuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0eWxlIikuY29udGVudERvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3IoJ3NwYW4nKTsKKyAgICAgICAgICAgIHdpbmRvdy5zcGFuID0gZG9j
dW1lbnQucXVlcnlTZWxlY3RvcignaWZyYW1lW3NyY10nKS5jb250ZW50RG9jdW1lbnQucXVlcnlT
ZWxlY3Rvcignc3BhbicpOworCisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3NwYW4pLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2Nv
bG9yJykuY3NzVGV4dCIsICJyZ2IoMjU1LCAwLCAwKSIpOworICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzcmNkb2NzdHlsZXNwYW4pLmdl
dFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJykuY3NzVGV4dCIsICJyZ2IoMjU1LCAwLCAwKSIpOwor
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShzcGFuKS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCdjb2xvcicpLmNzc1RleHQiLCAicmdiKDI1NSwg
MCwgMCkiKTsKKyAgICAgICAgfTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c3R5bGU+CisgICAgICAg
IHNwYW4geyBjb2xvcjogcmVkOyB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAg
IDxpZnJhbWUgaWQ9Im5vc3R5bGUiIHNlYW1sZXNzIHNyY2RvYz0iPHNwYW4+VGhpcyBpcyBhIHNw
YW4uPC9zcGFuPiI+PC9pZnJhbWU+CisgICAgPGlmcmFtZSBpZD0ic3R5bGUiIHNlYW1sZXNzIHNy
Y2RvYz0iPHN0eWxlPjwvc3R5bGU+PHNwYW4+VGhpcyBpcyBhIHNwYW4uPC9zcGFuPiI+PC9pZnJh
bWU+CisgICAgPGlmcmFtZSBzZWFtbGVzcyBzcmM9InJlc291cmNlcy9zcGFuLmh0bWwiPjwvaWZy
YW1lPgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181154</attachid>
            <date>2013-01-03 00:39:39 -0800</date>
            <delta_ts>2013-01-03 01:15:09 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-103539-20130103093645.patch</filename>
            <type>text/plain</type>
            <size>7157</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTFhZWZkMDcxNzlmMGJk
MTFmNjhjNzk2YjkwOTYwMDk3YTg5NWRhZi4uOTMzZjUwYjRmMGIwOGQ3MWI3ZmY1YjAwZGRkNzI0
ZGQ5ZDYxNjgxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEzLTAxLTAyICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgc2VhbWxlc3MgaWZyYW1lcyBk
b24ndCBpbmhlcml0IHN0eWxlcyB3aGVuIHNyY2RvYyBpcyB1c2VkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM1MzkKKworICAgICAgICBSZXZpZXdl
ZCBieSBBbnR0aSBLb2l2aXN0by4KKworICAgICAgICBTZWFtbGVzcyBpZnJhbWVzIHBvcHVsYXRl
ZCB2aWEgYSAnc3JjZG9jJyBhdHRyaWJ1dGUgc2hvdWxkIGFsd2F5cworICAgICAgICBpbmhlcml0
IHN0eWxlcyBmcm9tIHRoZWlyIHBhcmVudCBkb2N1bWVudHMuIEF0IHRoZSBtb21lbnQsIHRoaXMg
aXMKKyAgICAgICAgb25seSB0aGUgY2FzZSB3aGVuIHRoZXkgY29udGFpbiBhIHN0eWxlc2hlZXQg
b3Igc29tZSBvdGhlciBtYXJrdXAKKyAgICAgICAgdGhhdCBmb3JjZXMgYSBzdHlsZSByZWNhbGN1
bGF0aW9uIG9uIHRoZSBkb2N1bWVudC4gU2ltcGxlICdzcmNkb2MnCisgICAgICAgIGF0dHJpYnV0
ZXMgKGUuZy4gInNyY2RvYz0nPHA+VGhpcyBpcyBhIGNvbW1lbnQuPC9wPiciKSBiYWlsIG91dCBv
ZgorICAgICAgICByZWNhbGN1bGF0aW5nIHN0eWxlIGVhcmx5LCByZXN1bHRpbmcgaW4gdW5zdHls
ZWQgYXBwZWFyYW5jZS4KKworICAgICAgICBUaGlzIHBhdGNoIGluc3RydWN0cyBXZWJDb3JlIHRv
IHRyZWF0IHNlYW1sZXNzIGRvY3VtZW50cyBhcyBoYXZpbmcgYW4KKyAgICAgICAgdXBkYXRlZCBT
dHlsZVJlc29sdmVyIHJlZ2FyZGxlc3Mgb2Ygd2hhdCBhY3Rpb25zIHRoZSBwYXJzZXIgdGFrZXMs
CisgICAgICAgIHdoaWNoIGluIHR1cm4gZW5zdXJlcyB0aGF0IHRoZSBkb2N1bWVudCdzIHN0eWxl
IGlzIHJlY2FsY3VsYXRlZAorICAgICAgICBjb3JyZWN0bHkuCisKKyAgICAgICAgVGVzdDogZmFz
dC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwKKworICAgICAgICAqIGRvbS9E
b2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6aW1wbGljaXRPcGVuKToK
KyAgICAgICAgICAgIElmIGl0J3MgYSBzZWFtbGVzcyBkb2N1bWVudCwgbm90aWZ5IGl0IHRoYXQg
aXRzIFN0eWxlUmVzb2x2ZXIgaXNuJ3QKKyAgICAgICAgICAgIHdoYXQgaXQgbWlnaHQgaGF2ZSBl
eHBlY3RlZC4KKwogMjAxMy0wMS0wMiAgS29uZGFwYWxseSBLYWx5YW4gIDxrYWx5YW4ua29uZGFw
YWxseUBpbnRlbC5jb20+CiAKICAgICAgICAgW0VGTF0gW1dlYkdMXSBNaW5vciBjbGVhbnVwIGlu
IFBsYXRmb3JtQ29udGV4dC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IGM5MGE1YmZhN2Rh
ODIxMzBiYmQ4ZTE1NmQzZGI5M2Q4YmM0ZmU4ZDguLjNhOWQ3NDYxMDQ5NjMwMDRkZmYxZDRlZTNj
ZTNlMzY3ZGE2ZTUxMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMjI1NCw2ICsyMjU0
LDEyIEBAIHZvaWQgRG9jdW1lbnQ6OmltcGxpY2l0T3BlbigpCiAKICAgICBzZXRDb21wYXRpYmls
aXR5TW9kZShOb1F1aXJrc01vZGUpOwogCisgICAgLy8gRG9jdW1lbnRzIHJlbmRlcmVkIHNlYW1s
ZXNzbHkgc2hvdWxkIHN0YXJ0IG91dCByZXF1aXJpbmcgYSBzdHlsZXNoZWV0CisgICAgLy8gY29s
bGVjdGlvbiB1cGRhdGUgaW4gb3JkZXIgdG8gZW5zdXJlIHRoZXkgaW5oZXJpdCBhbGwgdGhlIHJl
bGV2YW50IGRhdGEKKyAgICAvLyBmcm9tIHRoZWlyIHBhcmVudC4KKyAgICBpZiAoc2hvdWxkRGlz
cGxheVNlYW1sZXNzbHlXaXRoUGFyZW50KCkpCisgICAgICAgIHN0eWxlUmVzb2x2ZXJDaGFuZ2Vk
KERlZmVyUmVjYWxjU3R5bGUpOworCiAgICAgbV9wYXJzZXIgPSBjcmVhdGVQYXJzZXIoKTsKICAg
ICBzZXRQYXJzaW5nKHRydWUpOwogICAgIHNldFJlYWR5U3RhdGUoTG9hZGluZyk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
OTM1Yzg5ZTFlOGIxZmU2N2VjYWRlMTc1ZGE2OTUxZTUyMDA4YTc0MS4uNTFlOTY4ODI1NTU3MjU1
NzAwODMxNjA3ZTI3ZjBlMDI4Yzc1OWY3NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTAx
LTAyICBNaWtlIFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgc2VhbWxlc3Mg
aWZyYW1lcyBkb24ndCBpbmhlcml0IHN0eWxlcyB3aGVuIHNyY2RvYyBpcyB1c2VkCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM1MzkKKworICAgICAg
ICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KKworICAgICAgICAqIGZhc3QvZnJhbWVzL3Nl
YW1sZXNzL3Jlc291cmNlcy9zcGFuLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZnJhbWVz
L3NlYW1sZXNzL3NlYW1sZXNzLWNvbnRlbnRlZGl0YWJsZS1ub3QtaW5oZXJpdGVkLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgICAgIFVwZGF0aW5nIHRoZSBwcmV2aW91c2x5IGZhaWxpbmcgZXhwZWN0
YXRpb24uCisgICAgICAgICogZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxl
c3Mtc3JjZG9jLmh0bWw6IEFkZGVkLgorICAgICAgICAgICAgRXhjaXRpbmcgbmV3IHRlc3QgdG8g
ZW5zdXJlIHRoYXQgdGhpcyBkb2Vzbid0IHJlZ3Jlc3MsIG5laXRoZXIKKyAgICAgICAgICAgIGZv
ciB0b3RhbGx5IHNpbXBsZSBzcmNkb2MgYXR0cml1YnRlcywgbm9yIGZvciBzbGlnaHRseSBtb3Jl
CisgICAgICAgICAgICBjb21wbGV4IHZhcmlhdGlvbnMuCisKIDIwMTMtMDEtMDIgIFNoZXJpZmYg
Qm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQs
IHJvbGxpbmcgb3V0IHIxMzg2MDEuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1l
cy9zZWFtbGVzcy9yZXNvdXJjZXMvc3Bhbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMv
c2VhbWxlc3MvcmVzb3VyY2VzL3NwYW4uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjI3NTJiYjU3OTViMzg4
ZGEyZmMxZjkzY2VkMTMyOWRlZWU5MzI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9mcmFtZXMvc2VhbWxlc3MvcmVzb3VyY2VzL3NwYW4uaHRtbApAQCAtMCwwICsxIEBACis8
c3Bhbj5UaGlzIGlzIGEgc3Bhbi48L3NwYW4+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1jb250ZW50ZWRpdGFibGUtbm90LWluaGVyaXRlZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1j
b250ZW50ZWRpdGFibGUtbm90LWluaGVyaXRlZC1leHBlY3RlZC50eHQKaW5kZXggMjI0ZGU1Mjkz
MjhmN2ZkN2MwODIzZGE1MzQzMDYzZTdhMzllZDhjNy4uZmYwZjI0ZjEyZDA5Njk4NGUxODQxZWEw
MWE0YzMxZWVjMzg0NzQ5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2Vh
bWxlc3Mvc2VhbWxlc3MtY29udGVudGVkaXRhYmxlLW5vdC1pbmhlcml0ZWQtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZnJhbWVzL3NlYW1sZXNzL3NlYW1sZXNzLWNvbnRlbnRl
ZGl0YWJsZS1ub3QtaW5oZXJpdGVkLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIFRoaXMg
dGVzdCBlbnN1cmVzIHRoYXQgY29udGVudCBpbnNpZGUgYSBzZWFtbGVzcyBpZnJhbWUgZG9lcyBu
b3QgaW5oZXJpdCBlZGl0YWJpbGl0eSB2aWEgdGhlIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUg
b24gYSBwYXJlbnQgZWxlbWVudCwgYnV0IGRvZXMgdmlhIGEgQ1NTIHJ1bGUgdGhhdCBjYXNjYWRl
cyBpbnRvIHRoZSBmcmFtZS4KIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoc3BhbikuZ2V0
UHJvcGVydHlDU1NWYWx1ZSgnLXdlYmtpdC11c2VyLW1vZGlmeScpLmNzc1RleHQgaXMgInJlYWQt
b25seSIKLUZBSUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCkuZ2V0UHJvcGVydHlDU1NWYWx1
ZSgnLXdlYmtpdC11c2VyLW1vZGlmeScpLmNzc1RleHQgc2hvdWxkIGJlIHJlYWQtd3JpdGUuIFdh
cyByZWFkLW9ubHkuCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHApLmdldFByb3BlcnR5
Q1NTVmFsdWUoJy13ZWJraXQtdXNlci1tb2RpZnknKS5jc3NUZXh0IGlzICJyZWFkLXdyaXRlIgog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1z
cmNkb2MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2Vh
bWxlc3Mtc3JjZG9jLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NjIxNzk1NjBiMzBmOWM5YzZm
ZTIwZjk0ZGYxMjBlNWYxODc4YzBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDUgQEAKK1RoaXMgdGVzdCBlbnN1cmVzIHRoYXQgY29udGVudCBpbnNpZGUgYSBzZWFtbGVzcyBz
cmNkb2MgaWZyYW1lIGNvcnJlY3RseSBpbmhlcml0cyBzdHlsZSwgZXZlbiBpZiBpdCBkb2Vzbid0
IHNldCBhbnkgc3R5bGVzIG9mIGl0cyBvd24uCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KHNyY2RvY3NwYW4pLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJykuY3NzVGV4dCBpcyAicmdi
KDI1NSwgMCwgMCkiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3N0eWxlc3Bh
bikuZ2V0UHJvcGVydHlDU1NWYWx1ZSgnY29sb3InKS5jc3NUZXh0IGlzICJyZ2IoMjU1LCAwLCAw
KSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoc3BhbikuZ2V0UHJvcGVydHlDU1NWYWx1
ZSgnY29sb3InKS5jc3NUZXh0IGlzICJyZ2IoMjU1LCAwLCAwKSIKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9jLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2ZyYW1lcy9zZWFtbGVzcy9zZWFtbGVzcy1zcmNkb2MuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi45MzUyNTdlM2M1NTJhNDMwZjk3MjNlMzRlYjVlMzc4ZjE4NTZkMTZkCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvc2VhbWxlc3Mvc2VhbWxlc3Mtc3JjZG9j
Lmh0bWwKQEAgLTAsMCArMSwyNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
ICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIHdpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7
CisgICAgICAgICAgICBkZWJ1ZygiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCBjb250ZW50IGluc2lk
ZSBhIHNlYW1sZXNzIHNyY2RvYyBpZnJhbWUgY29ycmVjdGx5IGluaGVyaXRzIHN0eWxlLCBldmVu
IGlmIGl0IGRvZXNuJ3Qgc2V0IGFueSBzdHlsZXMgb2YgaXRzIG93bi4iKTsKKworICAgICAgICAg
ICAgd2luZG93LnNyY2RvY3NwYW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm9zdHlsZSIp
LmNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzcGFuJyk7CisgICAgICAgICAgICB3aW5k
b3cuc3JjZG9jc3R5bGVzcGFuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0eWxlIikuY29u
dGVudERvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3NwYW4nKTsKKyAgICAgICAgICAgIHdpbmRvdy5z
cGFuID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaWZyYW1lW3NyY10nKS5jb250ZW50RG9jdW1l
bnQucXVlcnlTZWxlY3Rvcignc3BhbicpOworCisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHNyY2RvY3NwYW4pLmdldFByb3BlcnR5Q1NT
VmFsdWUoJ2NvbG9yJykuY3NzVGV4dCIsICJyZ2IoMjU1LCAwLCAwKSIpOworICAgICAgICAgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShzcmNkb2NzdHls
ZXNwYW4pLmdldFByb3BlcnR5Q1NTVmFsdWUoJ2NvbG9yJykuY3NzVGV4dCIsICJyZ2IoMjU1LCAw
LCAwKSIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShzcGFuKS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKCdjb2xvcicpLmNzc1RleHQiLCAi
cmdiKDI1NSwgMCwgMCkiKTsKKyAgICAgICAgfTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c3R5bGU+
CisgICAgICAgIHNwYW4geyBjb2xvcjogcmVkOyB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxi
b2R5PgorICAgIDxpZnJhbWUgaWQ9Im5vc3R5bGUiIHNlYW1sZXNzIHNyY2RvYz0iPHNwYW4+VGhp
cyBpcyBhIHNwYW4uPC9zcGFuPiI+PC9pZnJhbWU+CisgICAgPGlmcmFtZSBpZD0ic3R5bGUiIHNl
YW1sZXNzIHNyY2RvYz0iPHN0eWxlPjwvc3R5bGU+PHNwYW4+VGhpcyBpcyBhIHNwYW4uPC9zcGFu
PiI+PC9pZnJhbWU+CisgICAgPGlmcmFtZSBzZWFtbGVzcyBzcmM9InJlc291cmNlcy9zcGFuLmh0
bWwiPjwvaWZyYW1lPgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>