<?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>101303</bug_id>
          
          <creation_ts>2012-11-05 22:22:57 -0800</creation_ts>
          <short_desc>Fixed position elements that are out of view still end up forcing non-threaded scrolling</short_desc>
          <delta_ts>2012-12-06 11:10:11 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Beth Dakin">bdakin</reporter>
          <assigned_to name="Beth Dakin">bdakin</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>bdakin</cc>
    
    <cc>eric</cc>
    
    <cc>jamesr</cc>
    
    <cc>jknotten</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>skyostil</cc>
    
    <cc>thorton</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>759255</commentid>
    <comment_count>0</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-05 22:22:57 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/133536 made it so that pages with position:fixed elements can scroll on the scrolling thread. However, pages with out-of-viewport fixed position elements are still failing to scroll on the scrolling thread because we don&apos;t create layers for the out-of-view elements.

This issues is tracked by these tests:
platform/mac/tiled-drawing/fixed/fixed-position-out-of-view.html
platform/mac/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex.html

If you comment out these lines in RenderLayerCompositor::requiresCompositingForPosition(), then we do create the layers and the bug goes away:
    // Fixed position elements that are invisible in the current view don&apos;t get their own layer.
    FrameView* frameView = m_renderView-&gt;frameView();
    if (frameView &amp;&amp; !layer-&gt;absoluteBoundingBox().intersects(IntRect(IntPoint(frameView-&gt;scrollOffsetForFixedPosition()), frameView-&gt;layoutSize())))
        return false;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>759258</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2012-11-05 22:23:46 -0800</bug_when>
    <thetext>&lt;rdar://problem/12642222&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760014</commentid>
    <comment_count>2</comment_count>
      <attachid>172642</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-06 13:49:05 -0800</bug_when>
    <thetext>Created attachment 172642
Patch

Here&apos;s one simple way to fix this bug. Simon, I am wondering if you think this is okay or if you have another fix in mind?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760028</commentid>
    <comment_count>3</comment_count>
      <attachid>172642</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-11-06 14:04:22 -0800</bug_when>
    <thetext>Comment on attachment 172642
Patch

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

&gt; Source/WebCore/page/scrolling/ScrollingCoordinator.cpp:279
&gt; +        bool layerIsInsideViewport = layer-&gt;absoluteBoundingBox().intersects(IntRect(IntPoint(frameView-&gt;scrollOffsetForFixedPosition()), frameView-&gt;layoutSize()));

Checking absoluteBoundingBox() isn&apos;t sufficient: you can have a 0x0 fixedpos with an abspos child.

Is hasNonLayerFixedObjects() called after every layout, so it can update at the right time?

I also think this should share some code with RenderLayerCompositor::requiresCompositingForPosition(), since if that&apos;s correct, we should never have a visible fixedpos element that is visible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760086</commentid>
    <comment_count>4</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-06 14:58:38 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 172642 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=172642&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/scrolling/ScrollingCoordinator.cpp:279
&gt; &gt; +        bool layerIsInsideViewport = layer-&gt;absoluteBoundingBox().intersects(IntRect(IntPoint(frameView-&gt;scrollOffsetForFixedPosition()), frameView-&gt;layoutSize()));
&gt; 

Ah, yes, good call.

&gt; Checking absoluteBoundingBox() isn&apos;t sufficient: you can have a 0x0 fixedpos with an abspos child.
&gt; 
&gt; Is hasNonLayerFixedObjects() called after every layout, so it can update at the right time?
&gt; 

Yes.

&gt; I also think this should share some code with RenderLayerCompositor::requiresCompositingForPosition(), since if that&apos;s correct, we should never have a visible fixedpos element that is visible.

Yes, I will look into that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760236</commentid>
    <comment_count>5</comment_count>
      <attachid>172682</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-06 17:29:53 -0800</bug_when>
    <thetext>Created attachment 172682
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760245</commentid>
    <comment_count>6</comment_count>
      <attachid>172682</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-11-06 17:39:33 -0800</bug_when>
    <thetext>Comment on attachment 172682
Patch

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

&gt; Source/WebCore/rendering/RenderLayerCompositor.cpp:1937
&gt; +bool RenderLayerCompositor::layerIsOutsideView(const RenderLayer* layer) const
&gt; +{
&gt; +    IntRect boundingBox = layer-&gt;absoluteBoundingBox();
&gt; +    return !boundingBox.isEmpty() &amp;&amp; !layerIsVisibleInView(layer);
&gt; +}
&gt; +
&gt; +bool RenderLayerCompositor::layerIsVisibleInView(const RenderLayer* layer) const
&gt; +{
&gt; +    // FIXME: This test should be much more sophisticated and consider descendants.
&gt; +    // https://bugs.webkit.org/show_bug.cgi?id=98144
&gt; +    FrameView* frameView = m_renderView-&gt;frameView();
&gt; +    return frameView &amp;&amp; layer-&gt;absoluteBoundingBox().intersects(IntRect(IntPoint(frameView-&gt;scrollOffsetForFixedPosition()), frameView-&gt;layoutSize()));
&gt; +}

I&apos;m confused about why we need both of these?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760305</commentid>
    <comment_count>7</comment_count>
      <attachid>172682</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2012-11-06 19:30:14 -0800</bug_when>
    <thetext>Comment on attachment 172682
Patch

Attachment 172682 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/14757235</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760933</commentid>
    <comment_count>8</comment_count>
      <attachid>172850</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-07 11:38:52 -0800</bug_when>
    <thetext>Created attachment 172850
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761023</commentid>
    <comment_count>9</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-07 13:42:45 -0800</bug_when>
    <thetext>My most recent patch resolved https://bugs.webkit.org/show_bug.cgi?id=98144 as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761032</commentid>
    <comment_count>10</comment_count>
      <attachid>172850</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-11-07 13:56:27 -0800</bug_when>
    <thetext>Comment on attachment 172850
Patch

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

&gt; Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h:95
&gt; +    virtual bool hasNonLayerFixedObjects(FrameView*) const { return false; }

I think this function name is wrong. I think it should be hasVisibleSlowRepaintFixedObjects() or something.

&gt; LayoutTests/platform/mac/tiled-drawing/fixed/absolute-inside-out-of-view-fixed.html:40
&gt; +          if (window.internals) {
&gt; +            document.getElementById(&apos;results&apos;).innerText = internals.scrollingStateTreeAsText(document);
&gt; +            testRunner.notifyDone();

I think it would also be good for this test to dump the layer tree, since you&apos;re changing compositing behavior. Or add another test under compositing/ that does this, and isn&apos;t tied to tiled drawing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761055</commentid>
    <comment_count>11</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-07 14:28:19 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 172850 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=172850&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h:95
&gt; &gt; +    virtual bool hasNonLayerFixedObjects(FrameView*) const { return false; }
&gt; 
&gt; I think this function name is wrong. I think it should be hasVisibleSlowRepaintFixedObjects() or something.
&gt; 
&gt; &gt; LayoutTests/platform/mac/tiled-drawing/fixed/absolute-inside-out-of-view-fixed.html:40
&gt; &gt; +          if (window.internals) {
&gt; &gt; +            document.getElementById(&apos;results&apos;).innerText = internals.scrollingStateTreeAsText(document);
&gt; &gt; +            testRunner.notifyDone();
&gt; 
&gt; I think it would also be good for this test to dump the layer tree, since you&apos;re changing compositing behavior. Or add another test under compositing/ that does this, and isn&apos;t tied to tiled drawing.

Thanks, Simon! I addressed both of these things. http://trac.webkit.org/changeset/133807</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761057</commentid>
    <comment_count>12</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-11-07 14:29:03 -0800</bug_when>
    <thetext>*** Bug 98144 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769643</commentid>
    <comment_count>13</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-11-16 13:44:53 -0800</bug_when>
    <thetext>This has caused bug 102144.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769760</commentid>
    <comment_count>14</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2012-11-16 16:27:23 -0800</bug_when>
    <thetext>*** Bug 98144 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>773066</commentid>
    <comment_count>15</comment_count>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2012-11-21 10:07:31 -0800</bug_when>
    <thetext>I noticed that this patch has also introduced an assertion failure while running the ACID3 CSS tests:

http://build.webkit.org/results/Apple%20MountainLion%20Debug%20WK2%20(Tests)/r135405%20%283886%29/results.html

( Also reported in https://bugs.webkit.org/show_bug.cgi?id=102599 )

I tried the test without this patch reverted and it worked fine. Any ideas on how to fix much appreciated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785050</commentid>
    <comment_count>16</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-12-06 10:55:51 -0800</bug_when>
    <thetext>This has also caused bug 104276.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785056</commentid>
    <comment_count>17</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-12-06 10:59:07 -0800</bug_when>
    <thetext>Beth, will you have a chance to look into the regressions soon?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785064</commentid>
    <comment_count>18</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-12-06 11:08:45 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; Beth, will you have a chance to look into the regressions soon?

I have been working on a reduction for one of them this yes. So, yes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785066</commentid>
    <comment_count>19</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2012-12-06 11:10:11 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; (In reply to comment #17)
&gt; &gt; Beth, will you have a chance to look into the regressions soon?
&gt; 
&gt; I have been working on a reduction for one of them this yes. So, yes.

*This week.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172642</attachid>
            <date>2012-11-06 13:49:05 -0800</date>
            <delta_ts>2012-11-06 17:29:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>for-review.txt</filename>
            <type>text/plain</type>
            <size>4052</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzMzY2MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDEyLTExLTA2ICBCZXRoIERh
a2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTAxMzAzCisgICAgICAgIEZpeGVkIHBvc2l0aW9uIGVsZW1lbnRz
IHRoYXQgYXJlIG91dCBvZiB2aWV3IHN0aWxsIGVuZCB1cCBmb3JjaW5nIAorICAgICAgICBub24t
dGhyZWFkZWQgc2Nyb2xsaW5nCisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzEyNjQyMjIyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEhhdmUgaGFzTm9uTGF5ZXJGaXhlZE9iamVjdHMoKSBvbmx5IGV2
YWx1YXRlIG9iamVjdHMgdGhhdCBhcmUgaW5zaWRlIAorICAgICAgICB0aGUgdmlld3BvcnQuCisg
ICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3I6Omhhc05vbkxheWVyRml4ZWRPYmplY3Rz
KToKKwogMjAxMi0xMS0wNiAgSm9obiBHcmlnZ3MgIDxqZ3JpZ2dzQHJpbS5jb20+CiAKICAgICAg
ICAgSW1wbGVtZW50IE1lZGlhUGxheWVyUHJpdmF0ZTo6ZGlkTG9hZGluZ1Byb2dyZXNzIGZvciBC
bGFja0JlcnJ5IHBsYXRmb3JtCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9T
Y3JvbGxpbmdDb29yZGluYXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCShyZXZpc2lvbiAxMzM2NTApCisr
KyBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI3NSw4ICsyNzUsOSBAQCBib29sIFNjcm9sbGluZ0Nvb3JkaW5h
dG9yOjpoYXNOb25MYXllckZpCiAgICAgICAgIFJlbmRlck9iamVjdCogdmlld3BvcnRDb25zdHJh
aW5lZE9iamVjdCA9ICppdDsKICAgICAgICAgaWYgKCF2aWV3cG9ydENvbnN0cmFpbmVkT2JqZWN0
LT5pc0JveE1vZGVsT2JqZWN0KCkgfHwgIXZpZXdwb3J0Q29uc3RyYWluZWRPYmplY3QtPmhhc0xh
eWVyKCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgUmVuZGVyQm94TW9kZWxP
YmplY3QqIHZpZXdwb3J0Q29uc3RyYWluZWRCb3hNb2RlbE9iamVjdCA9IHRvUmVuZGVyQm94TW9k
ZWxPYmplY3Qodmlld3BvcnRDb25zdHJhaW5lZE9iamVjdCk7Ci0gICAgICAgIGlmICghdmlld3Bv
cnRDb25zdHJhaW5lZEJveE1vZGVsT2JqZWN0LT5sYXllcigpLT5iYWNraW5nKCkpCisgICAgICAg
IFJlbmRlckxheWVyKiBsYXllciA9IHRvUmVuZGVyQm94TW9kZWxPYmplY3Qodmlld3BvcnRDb25z
dHJhaW5lZE9iamVjdCktPmxheWVyKCk7CisgICAgICAgIGJvb2wgbGF5ZXJJc0luc2lkZVZpZXdw
b3J0ID0gbGF5ZXItPmFic29sdXRlQm91bmRpbmdCb3goKS5pbnRlcnNlY3RzKEludFJlY3QoSW50
UG9pbnQoZnJhbWVWaWV3LT5zY3JvbGxPZmZzZXRGb3JGaXhlZFBvc2l0aW9uKCkpLCBmcmFtZVZp
ZXctPmxheW91dFNpemUoKSkpOworICAgICAgICBpZiAoIWxheWVyLT5iYWNraW5nKCkgJiYgbGF5
ZXJJc0luc2lkZVZpZXdwb3J0KQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAg
IHJldHVybiBmYWxzZTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzMzY2NikKKysrIExheW91dFRlc3Rz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDEyLTExLTA2ICBC
ZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAxMzAzCisgICAgICAgIEZpeGVkIHBvc2l0aW9uIGVs
ZW1lbnRzIHRoYXQgYXJlIG91dCBvZiB2aWV3IHN0aWxsIGVuZCB1cCBmb3JjaW5nIAorICAgICAg
ICBub24tdGhyZWFkZWQgc2Nyb2xsaW5nCisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzEyNjQyMjIyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vbWFjL3RpbGVkLWRyYXdpbmcvZml4
ZWQvZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBs
YXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3
LW5lZ2F0aXZlLXppbmRleC1leHBlY3RlZC50eHQ6CisKIDIwMTItMTEtMDYgIERpcmsgUHJhbmtl
ICA8ZHByYW5rZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBjaHJvbWl1bSwg
Y2hyb21pdW0tbWFjLW1vdW50YWlubGlvbiBnYXJkZW5pbmcKSW5kZXg6IExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvdGls
ZWQtZHJhd2luZy9maXhlZC9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDEzMzY1MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy90aWxlZC1kcmF3
aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw3ICsxLDYgQEAKIChTY3JvbGxpbmcgbm9kZQogICAodmlld3BvcnQgcmVj
dCAwIDAgNzg1IDYwMCkKICAgKGNvbnRlbnRzIHNpemUgNzg1IDEwMjEpCi0gIChTY3JvbGxpbmcg
b24gbWFpbiB0aHJlYWQgYmVjYXVzZTogSGFzIG5vbi1sYXllciBmaXhlZCBvYmplY3RzLCApCiAg
IChjaGlsZHJlbiAxCiAgICAgKEZpeGVkIG5vZGUKICAgICAgIChhbmNob3IgZWRnZXM6IEFuY2hv
ckVkZ2VMZWZ0IEFuY2hvckVkZ2VUb3ApCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
dGlsZWQtZHJhd2luZy9maXhlZC9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1uZWdhdGl2ZS16
aW5kZXgtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LW5lZ2F0aXZl
LXppbmRleC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEzMzY1MCkKKysrIExheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3
LW5lZ2F0aXZlLXppbmRleC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNyArMSw2
IEBACiAoU2Nyb2xsaW5nIG5vZGUKICAgKHZpZXdwb3J0IHJlY3QgMCAwIDc4NSA2MDApCiAgIChj
b250ZW50cyBzaXplIDc4NSAxMDIxKQotICAoU2Nyb2xsaW5nIG9uIG1haW4gdGhyZWFkIGJlY2F1
c2U6IEhhcyBub24tbGF5ZXIgZml4ZWQgb2JqZWN0cywgKQogICAoY2hpbGRyZW4gMQogICAgIChG
aXhlZCBub2RlCiAgICAgICAoYW5jaG9yIGVkZ2VzOiBBbmNob3JFZGdlTGVmdCBBbmNob3JFZGdl
VG9wKQo=
</data>
<flag name="review"
          id="187035"
          type_id="1"
          status="-"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172682</attachid>
            <date>2012-11-06 17:29:53 -0800</date>
            <delta_ts>2012-11-07 11:38:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>for-review-2.txt</filename>
            <type>text/plain</type>
            <size>7748</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzMzY5OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI4IEBACisyMDEyLTExLTA2ICBCZXRoIERh
a2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTAxMzAzCisgICAgICAgIEZpeGVkIHBvc2l0aW9uIGVsZW1lbnRz
IHRoYXQgYXJlIG91dCBvZiB2aWV3IHN0aWxsIGVuZCB1cCBmb3JjaW5nIAorICAgICAgICBub24t
dGhyZWFkZWQgc2Nyb2xsaW5nCisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzEyNjQyMjIyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIERvbid0IGNvdW50IGxheWVycyB0aGF0IGFyZSBvdXRzaWRlIHRo
ZSB2aWV3cG9ydC4KKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRv
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcjo6aGFzTm9uTGF5
ZXJGaXhlZE9iamVjdHMpOgorCisgICAgICAgIFRoZXNlIGNoYW5nZXMgbW92ZSB0aGUgcG9zaXRp
b25pbmcgdmlzaWJpbGl0eSBjaGVjayBpbnRvIGl0cyBvd24gCisgICAgICAgIGZ1bmN0aW9uIHNv
IHRoYXQgaXQgY2FuIGJlIHNoYXJlZCB3aXRoIGEgbmV3IGZ1bmN0aW9uIHRoYXQgd2UnbGwgY2Fs
bCAKKyAgICAgICAgZnJvbSBTY3JvbGxpbmdDb29yZGluYXRvci4KKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxh
eWVyQ29tcG9zaXRvcjo6bGF5ZXJJc091dHNpZGVWaWV3KToKKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpsYXllcklzVmlzaWJsZUlu
Vmlldyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlcXVpcmVz
Q29tcG9zaXRpbmdGb3JQb3NpdGlvbik6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVy
Q29tcG9zaXRvci5oOgorICAgICAgICAoUmVuZGVyTGF5ZXJDb21wb3NpdG9yKToKKwogMjAxMi0x
MS0wNiAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBDbGVh
biB1cCB3aGljaCBzdG9yYWdlIGNvb2tpZSBqYXIgZnVuY3Rpb25zIHVzZQpJbmRleDogU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9y
LmNwcAkocmV2aXNpb24gMTMzNjUwKQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcv
U2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzAsMTMgKzI3MCwy
NCBAQCBib29sIFNjcm9sbGluZ0Nvb3JkaW5hdG9yOjpoYXNOb25MYXllckZpCiAgICAgaWYgKCF2
aWV3cG9ydENvbnN0cmFpbmVkT2JqZWN0cykKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAg
RnJhbWUqIGZyYW1lID0gZnJhbWVWaWV3LT5mcmFtZSgpOworICAgIGlmICghZnJhbWUpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKworICAgIFJlbmRlclZpZXcqIHJlbmRlclZpZXcgPSBmcmFtZS0+
Y29udGVudFJlbmRlcmVyKCk7CisgICAgaWYgKCFyZW5kZXJWaWV3KQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisKKyAgICBSZW5kZXJMYXllckNvbXBvc2l0b3IqIGNvbXBvc2l0b3IgPSByZW5kZXJW
aWV3LT5jb21wb3NpdG9yKCk7CisKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAg
ICAgZm9yIChGcmFtZVZpZXc6OlZpZXdwb3J0Q29uc3RyYWluZWRPYmplY3RTZXQ6OmNvbnN0X2l0
ZXJhdG9yIGl0ID0gdmlld3BvcnRDb25zdHJhaW5lZE9iamVjdHMtPmJlZ2luKCksIGVuZCA9IHZp
ZXdwb3J0Q29uc3RyYWluZWRPYmplY3RzLT5lbmQoKTsgaXQgIT0gZW5kOyArK2l0KSB7CiAgICAg
ICAgIFJlbmRlck9iamVjdCogdmlld3BvcnRDb25zdHJhaW5lZE9iamVjdCA9ICppdDsKICAgICAg
ICAgaWYgKCF2aWV3cG9ydENvbnN0cmFpbmVkT2JqZWN0LT5pc0JveE1vZGVsT2JqZWN0KCkgfHwg
IXZpZXdwb3J0Q29uc3RyYWluZWRPYmplY3QtPmhhc0xheWVyKCkpCiAgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKLSAgICAgICAgUmVuZGVyQm94TW9kZWxPYmplY3QqIHZpZXdwb3J0Q29uc3RyYWlu
ZWRCb3hNb2RlbE9iamVjdCA9IHRvUmVuZGVyQm94TW9kZWxPYmplY3Qodmlld3BvcnRDb25zdHJh
aW5lZE9iamVjdCk7Ci0gICAgICAgIGlmICghdmlld3BvcnRDb25zdHJhaW5lZEJveE1vZGVsT2Jq
ZWN0LT5sYXllcigpLT5iYWNraW5nKCkpCisgICAgICAgIFJlbmRlckxheWVyKiBsYXllciA9IHRv
UmVuZGVyQm94TW9kZWxPYmplY3Qodmlld3BvcnRDb25zdHJhaW5lZE9iamVjdCktPmxheWVyKCk7
CisgICAgICAgIGJvb2wgbGF5ZXJJc0luc2lkZVZpZXdwb3J0ID0gIWNvbXBvc2l0b3ItPmxheWVy
SXNPdXRzaWRlVmlldyhsYXllcik7CisgICAgICAgIGlmICghbGF5ZXItPmJhY2tpbmcoKSAmJiBs
YXllcklzSW5zaWRlVmlld3BvcnQpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAg
ICAgcmV0dXJuIGZhbHNlOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxh
eWVyQ29tcG9zaXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAJKHJldmlzaW9uIDEzMzY1MCkKKysrIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xOTIyLDYgKzE5MjIsMjAgQEAgYm9vbCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlcXVp
cmVzQ29tcAogI2VuZGlmCiB9CiAKK2Jvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpsYXllcklz
T3V0c2lkZVZpZXcoY29uc3QgUmVuZGVyTGF5ZXIqIGxheWVyKSBjb25zdAoreworICAgIEludFJl
Y3QgYm91bmRpbmdCb3ggPSBsYXllci0+YWJzb2x1dGVCb3VuZGluZ0JveCgpOworICAgIHJldHVy
biAhYm91bmRpbmdCb3guaXNFbXB0eSgpICYmICFsYXllcklzVmlzaWJsZUluVmlldyhsYXllcik7
Cit9CisKK2Jvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpsYXllcklzVmlzaWJsZUluVmlldyhj
b25zdCBSZW5kZXJMYXllciogbGF5ZXIpIGNvbnN0Cit7CisgICAgLy8gRklYTUU6IFRoaXMgdGVz
dCBzaG91bGQgYmUgbXVjaCBtb3JlIHNvcGhpc3RpY2F0ZWQgYW5kIGNvbnNpZGVyIGRlc2NlbmRh
bnRzLgorICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODE0
NAorICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbV9yZW5kZXJWaWV3LT5mcmFtZVZpZXcoKTsK
KyAgICByZXR1cm4gZnJhbWVWaWV3ICYmIGxheWVyLT5hYnNvbHV0ZUJvdW5kaW5nQm94KCkuaW50
ZXJzZWN0cyhJbnRSZWN0KEludFBvaW50KGZyYW1lVmlldy0+c2Nyb2xsT2Zmc2V0Rm9yRml4ZWRQ
b3NpdGlvbigpKSwgZnJhbWVWaWV3LT5sYXlvdXRTaXplKCkpKTsKK30KKwogYm9vbCBSZW5kZXJM
YXllckNvbXBvc2l0b3I6OnJlcXVpcmVzQ29tcG9zaXRpbmdGb3JQb3NpdGlvbihSZW5kZXJPYmpl
Y3QqIHJlbmRlcmVyLCBjb25zdCBSZW5kZXJMYXllciogbGF5ZXIpIGNvbnN0CiB7CiAgICAgLy8g
cG9zaXRpb246Zml4ZWQgZWxlbWVudHMgdGhhdCBjcmVhdGUgdGhlaXIgb3duIHN0YWNraW5nIGNv
bnRleHQgKGUuZy4gaGF2ZSBhbiBleHBsaWNpdCB6LWluZGV4LApAQCAtMTk0NywxMSArMTk2MSw3
IEBAIGJvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyZXF1aXJlc0NvbXAKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCiAgICAgLy8gRml4ZWQgcG9zaXRpb24gZWxlbWVudHMgdGhhdCBhcmUgaW52
aXNpYmxlIGluIHRoZSBjdXJyZW50IHZpZXcgZG9uJ3QgZ2V0IHRoZWlyIG93biBsYXllci4KLSAg
ICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1fcmVuZGVyVmlldy0+ZnJhbWVWaWV3KCk7Ci0gICAg
aWYgKGZyYW1lVmlldyAmJiAhbGF5ZXItPmFic29sdXRlQm91bmRpbmdCb3goKS5pbnRlcnNlY3Rz
KEludFJlY3QoSW50UG9pbnQoZnJhbWVWaWV3LT5zY3JvbGxPZmZzZXRGb3JGaXhlZFBvc2l0aW9u
KCkpLCBmcmFtZVZpZXctPmxheW91dFNpemUoKSkpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0K
LSAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4gbGF5ZXJJc1Zpc2libGVJblZpZXcobGF5ZXIp
OwogfQogCiBib29sIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVxdWlyZXNDb21wb3NpdGluZ0Zv
ck92ZXJmbG93U2Nyb2xsaW5nKGNvbnN0IFJlbmRlckxheWVyKiBsYXllcikgY29uc3QKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgJ
KHJldmlzaW9uIDEzMzY1MCkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ckNvbXBvc2l0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjMxLDYgKzIzMSw4IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHJlc2V0VHJhY2tlZFJlcGFpbnRSZWN0cygpOwogICAgIHZvaWQgc2V0VHJhY2tz
UmVwYWludHMoYm9vbCk7CiAKKyAgICBib29sIGxheWVySXNPdXRzaWRlVmlldyhjb25zdCBSZW5k
ZXJMYXllciopIGNvbnN0OworCiBwcml2YXRlOgogICAgIGNsYXNzIE92ZXJsYXBNYXA7CiAKQEAg
LTMxNiw2ICszMTgsOCBAQCBwcml2YXRlOgogICAgIGJvb2wgcmVxdWlyZXNDb21wb3NpdGluZ0Zv
ck92ZXJmbG93U2Nyb2xsaW5nKGNvbnN0IFJlbmRlckxheWVyKikgY29uc3Q7CiAgICAgYm9vbCBy
ZXF1aXJlc0NvbXBvc2l0aW5nRm9ySW5kaXJlY3RSZWFzb24oUmVuZGVyT2JqZWN0KiwgYm9vbCBo
YXNDb21wb3NpdGVkRGVzY2VuZGFudHMsIGJvb2wgaGFzM0RUcmFuc2Zvcm1lZERlc2NlbmRhbnRz
LCBSZW5kZXJMYXllcjo6SW5kaXJlY3RDb21wb3NpdGluZ1JlYXNvbiYpIGNvbnN0OwogCisgICAg
Ym9vbCBsYXllcklzVmlzaWJsZUluVmlldyhjb25zdCBSZW5kZXJMYXllciopIGNvbnN0OworCiAg
ICAgdm9pZCBhZGRWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXIoUmVuZGVyTGF5ZXIqKTsKICAgICB2
b2lkIHJlZ2lzdGVyT3JVcGRhdGVWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXIoUmVuZGVyTGF5ZXIq
KTsKICAgICB2b2lkIHVucmVnaXN0ZXJWaWV3cG9ydENvbnN0cmFpbmVkTGF5ZXIoUmVuZGVyTGF5
ZXIqKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzMzY2NikKKysrIExheW91dFRlc3RzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDEyLTExLTA2ICBCZXRoIERha2lu
ICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTAxMzAzCisgICAgICAgIEZpeGVkIHBvc2l0aW9uIGVsZW1lbnRzIHRo
YXQgYXJlIG91dCBvZiB2aWV3IHN0aWxsIGVuZCB1cCBmb3JjaW5nIAorICAgICAgICBub24tdGhy
ZWFkZWQgc2Nyb2xsaW5nCisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzEyNjQyMjIyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogcGxhdGZvcm0vbWFjL3RpbGVkLWRyYXdpbmcvZml4ZWQvZml4ZWQt
cG9zaXRpb24tb3V0LW9mLXZpZXctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21h
Yy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LW5lZ2F0aXZl
LXppbmRleC1leHBlY3RlZC50eHQ6CisKIDIwMTItMTEtMDYgIERpcmsgUHJhbmtlICA8ZHByYW5r
ZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBjaHJvbWl1bSwgY2hyb21pdW0t
bWFjLW1vdW50YWlubGlvbiBnYXJkZW5pbmcKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvdGlsZWQtZHJhd2lu
Zy9maXhlZC9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDEzMzY1MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVk
L2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMSw3ICsxLDYgQEAKIChTY3JvbGxpbmcgbm9kZQogICAodmlld3BvcnQgcmVjdCAwIDAgNzg1
IDYwMCkKICAgKGNvbnRlbnRzIHNpemUgNzg1IDEwMjEpCi0gIChTY3JvbGxpbmcgb24gbWFpbiB0
aHJlYWQgYmVjYXVzZTogSGFzIG5vbi1sYXllciBmaXhlZCBvYmplY3RzLCApCiAgIChjaGlsZHJl
biAxCiAgICAgKEZpeGVkIG5vZGUKICAgICAgIChhbmNob3IgZWRnZXM6IEFuY2hvckVkZ2VMZWZ0
IEFuY2hvckVkZ2VUb3ApCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvdGlsZWQtZHJh
d2luZy9maXhlZC9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1uZWdhdGl2ZS16aW5kZXgtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy90aWxlZC1k
cmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LW5lZ2F0aXZlLXppbmRleC1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDEzMzY1MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LW5lZ2F0aXZl
LXppbmRleC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNyArMSw2IEBACiAoU2Ny
b2xsaW5nIG5vZGUKICAgKHZpZXdwb3J0IHJlY3QgMCAwIDc4NSA2MDApCiAgIChjb250ZW50cyBz
aXplIDc4NSAxMDIxKQotICAoU2Nyb2xsaW5nIG9uIG1haW4gdGhyZWFkIGJlY2F1c2U6IEhhcyBu
b24tbGF5ZXIgZml4ZWQgb2JqZWN0cywgKQogICAoY2hpbGRyZW4gMQogICAgIChGaXhlZCBub2Rl
CiAgICAgICAoYW5jaG9yIGVkZ2VzOiBBbmNob3JFZGdlTGVmdCBBbmNob3JFZGdlVG9wKQo=
</data>
<flag name="commit-queue"
          id="187117"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172850</attachid>
            <date>2012-11-07 11:38:52 -0800</date>
            <delta_ts>2012-11-07 13:56:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>for-review-3.txt</filename>
            <type>text/plain</type>
            <size>10268</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzMzc4NikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDEyLTExLTA3ICBCZXRoIERh
a2luICA8YmRha2luQGFwcGxlLmNvbT4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTAxMzAzCisgICAgICAgIEZpeGVkIHBvc2l0aW9uIGVsZW1lbnRz
IHRoYXQgYXJlIG91dCBvZiB2aWV3IHN0aWxsIGVuZCB1cCBmb3JjaW5nIAorICAgICAgICBub24t
dGhyZWFkZWQgc2Nyb2xsaW5nCisgICAgICAgIC1hbmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzEyNjQyMjIyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIE1ha2UgaGFzTm9uTGF5ZXJGaXhlZE9iamVjdHMoKSB2aXJ0dWFs
LiAKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5oOgorICAg
ICAgICAoU2Nyb2xsaW5nQ29vcmRpbmF0b3IpOgorCisgICAgICAgIE92ZXJyaWRlIGhhc05vbkxh
eWVyRml4ZWRPYmplY3RzKCkgdG8gYWx3YXlzIHJldHVybiBmYWxzZS4gV2UgZG9uJ3QgCisgICAg
ICAgIHdhbnQgdG8gYm90aGVyIHdpdGggdGhlIGV4dHJhIGNvbXB1dGF0aW9uIGluIHRoZSAKKyAg
ICAgICAgU2Nyb2xsaW5nQ29vcmRpbmF0b3IgaW1wbGVtZW50YXRpb24sIHRob3VnaCBvdGhlciBw
b3J0cyBtaWdodCBzdGlsbCAKKyAgICAgICAgd2FudCBpdC4KKyAgICAgICAgKiBwYWdlL3Njcm9s
bGluZy9tYWMvU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbGluZ0Nvb3JkaW5hdG9yTWFjOjpoYXNOb25MYXllckZpeGVkT2JqZWN0cyk6CisgICAgICAg
IChTY3JvbGxpbmdDb29yZGluYXRvck1hYyk6CisKKyAgICAgICAgTWFrZSB0aGlzIGZ1bmN0aW9u
IGNvbnN0IHNvIHRoYXQgd2UgY2FuIGNhbGwgaXQgZnJvbSAKKyAgICAgICAgcmVxdWlyZXNDb21w
b3NpdGluZ0ZvclBvc2l0aW9uKCkuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyQ29t
cG9zaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OmNh
bGN1bGF0ZUNvbXBvc2l0ZWRCb3VuZHMpOgorCisgICAgICAgIEFjdHVhbGx5IGJlIHRob3JvdWdo
IGhlcmUgYW5kIGNoZWNrIGlmIHRoZSBmaXhlZCBvYmplY3QgaGFzIGFueSAKKyAgICAgICAgZGVz
Y2VuZGFudHMgdGhhdCBhcmUgdmlzaWJsZSBpbiB0aGUgdmlldy4gSWYgaXQgZG9lcywgdGhlbiB3
ZSBkbyAKKyAgICAgICAgd2FudCB0byBjb21wb3NpdGUgdGhlIGZpeGVkIG9iamVjdC4KKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29tcG9zaXRvcjo6cmVxdWlyZXNDb21wb3NpdGluZ0Zv
clBvc2l0aW9uKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmg6
CisKIDIwMTItMTEtMDcgIFBoaWxpcCBSb2dlcnMgIDxwZHJAZ29vZ2xlLmNvbT4KIAogICAgICAg
ICBTa2lwIFNWRyByZXBhaW50IHRyYWNraW5nIHdoZW4gcGFyZW50IGNvbnRhaW5lciB0cmFuc2Zv
cm1zCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGlu
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9s
bGluZ0Nvb3JkaW5hdG9yLmgJKHJldmlzaW9uIDEzMzY1MCkKKysrIFNvdXJjZS9XZWJDb3JlL3Bh
Z2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTE1
NSw3ICsxNTUsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCByZWNvbXB1dGVXaGVlbEV2
ZW50SGFuZGxlckNvdW50Rm9yRnJhbWVWaWV3KEZyYW1lVmlldyopIHsgfQogICAgIHZpcnR1YWwg
dm9pZCBzZXRTaG91bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhyZWFkKE1haW5U
aHJlYWRTY3JvbGxpbmdSZWFzb25zKSB7IH0KIAotICAgIGJvb2wgaGFzTm9uTGF5ZXJGaXhlZE9i
amVjdHMoRnJhbWVWaWV3KikgY29uc3Q7CisgICAgdmlydHVhbCBib29sIGhhc05vbkxheWVyRml4
ZWRPYmplY3RzKEZyYW1lVmlldyopIGNvbnN0OwogICAgIHZvaWQgdXBkYXRlU2hvdWxkVXBkYXRl
U2Nyb2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZCgpOwogCiAgICAgYm9vbCBtX2ZvcmNlTWFp
blRocmVhZFNjcm9sbExheWVyUG9zaXRpb25VcGRhdGVzOwpJbmRleDogU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ0Nvb3JkaW5hdG9y
TWFjLmgJKHJldmlzaW9uIDEzMzY1MCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdDb29yZGluYXRvck1hYy5oCSh3b3JraW5nIGNvcHkpCkBAIC05Miw2ICs5
Miw4IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHJlY29tcHV0ZVdoZWVsRXZlbnRIYW5k
bGVyQ291bnRGb3JGcmFtZVZpZXcoRnJhbWVWaWV3Kik7CiAgICAgdmlydHVhbCB2b2lkIHNldFNo
b3VsZFVwZGF0ZVNjcm9sbExheWVyUG9zaXRpb25Pbk1haW5UaHJlYWQoTWFpblRocmVhZFNjcm9s
bGluZ1JlYXNvbnMpOwogCisgICAgdmlydHVhbCBib29sIGhhc05vbkxheWVyRml4ZWRPYmplY3Rz
KEZyYW1lVmlldyopIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CisKICAgICB2b2lkIGVuc3VyZVJv
b3RTdGF0ZU5vZGVGb3JGcmFtZVZpZXcoRnJhbWVWaWV3Kik7CiAgICAgU2Nyb2xsaW5nU3RhdGVO
b2RlKiBzdGF0ZU5vZGVGb3JJRChTY3JvbGxpbmdOb2RlSUQpOwogCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAkocmV2aXNp
b24gMTMzNjUwKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9z
aXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY2MSw3ICs2NjEsNyBAQCB2b2lkIFJlbmRlckxh
eWVyQ29tcG9zaXRvcjo6cmVwYWludEluQ29tCiAKIC8vIFRoZSBib3VuZHMgb2YgdGhlIEdyYXBo
aWNzTGF5ZXIgY3JlYXRlZCBmb3IgYSBjb21wb3NpdGluZyBsYXllciBpcyB0aGUgdW5pb24gb2Yg
dGhlIGJvdW5kcyBvZiBhbGwgdGhlIGRlc2NlbmRhbnQKIC8vIFJlbmRlckxheWVycyB0aGF0IGFy
ZSByZW5kZXJlZCBieSB0aGUgY29tcG9zaXRlZCBSZW5kZXJMYXllci4KLUludFJlY3QgUmVuZGVy
TGF5ZXJDb21wb3NpdG9yOjpjYWxjdWxhdGVDb21wb3NpdGVkQm91bmRzKGNvbnN0IFJlbmRlckxh
eWVyKiBsYXllciwgY29uc3QgUmVuZGVyTGF5ZXIqIGFuY2VzdG9yTGF5ZXIpCitJbnRSZWN0IFJl
bmRlckxheWVyQ29tcG9zaXRvcjo6Y2FsY3VsYXRlQ29tcG9zaXRlZEJvdW5kcyhjb25zdCBSZW5k
ZXJMYXllciogbGF5ZXIsIGNvbnN0IFJlbmRlckxheWVyKiBhbmNlc3RvckxheWVyKSBjb25zdAog
ewogICAgIGlmICghY2FuQmVDb21wb3NpdGVkKGxheWVyKSkKICAgICAgICAgcmV0dXJuIEludFJl
Y3QoKTsKQEAgLTE5NDcsOSArMTk0NywxMiBAQCBib29sIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6
cmVxdWlyZXNDb21wCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIC8vIEZpeGVkIHBvc2l0
aW9uIGVsZW1lbnRzIHRoYXQgYXJlIGludmlzaWJsZSBpbiB0aGUgY3VycmVudCB2aWV3IGRvbid0
IGdldCB0aGVpciBvd24gbGF5ZXIuCi0gICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX3JlbmRl
clZpZXctPmZyYW1lVmlldygpOwotICAgIGlmIChmcmFtZVZpZXcgJiYgIWxheWVyLT5hYnNvbHV0
ZUJvdW5kaW5nQm94KCkuaW50ZXJzZWN0cyhJbnRSZWN0KEludFBvaW50KGZyYW1lVmlldy0+c2Ny
b2xsT2Zmc2V0Rm9yRml4ZWRQb3NpdGlvbigpKSwgZnJhbWVWaWV3LT5sYXlvdXRTaXplKCkpKSkK
LSAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmIChGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1f
cmVuZGVyVmlldy0+ZnJhbWVWaWV3KCkpIHsKKyAgICAgICAgSW50UmVjdCB2aWV3Qm91bmRzID0g
SW50UmVjdChJbnRQb2ludChmcmFtZVZpZXctPnNjcm9sbE9mZnNldEZvckZpeGVkUG9zaXRpb24o
KSksIGZyYW1lVmlldy0+bGF5b3V0U2l6ZSgpKTsKKyAgICAgICAgSW50UmVjdCBsYXllckJvdW5k
cyA9IGNhbGN1bGF0ZUNvbXBvc2l0ZWRCb3VuZHMobGF5ZXIsIHJvb3RSZW5kZXJMYXllcigpKTsK
KyAgICAgICAgaWYgKCF2aWV3Qm91bmRzLmludGVyc2VjdHMobGF5ZXJCb3VuZHMpKQorICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KIAogICAgIHJldHVybiB0cnVlOwogfQpJbmRleDog
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaAko
cmV2aXNpb24gMTMzNjUwKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVy
Q29tcG9zaXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzAsNyArMTMwLDcgQEAgcHVibGljOgog
ICAgIGJvb2wgbmVlZHNDb250ZW50c0NvbXBvc2l0aW5nTGF5ZXIoY29uc3QgUmVuZGVyTGF5ZXIq
KSBjb25zdDsKICAgICAvLyBSZXR1cm4gdGhlIGJvdW5kaW5nIGJveCByZXF1aXJlZCBmb3IgY29t
cG9zaXRpbmcgbGF5ZXIgYW5kIGl0cyBjaGlsZGVybiwgcmVsYXRpdmUgdG8gYW5jZXN0b3JMYXll
ci4KICAgICAvLyBJZiBsYXllckJvdW5kaW5nQm94IGlzIG5vdCAwLCBvbiByZXR1cm4gaXQgY29u
dGFpbnMgdGhlIGJvdW5kaW5nIGJveCBvZiB0aGlzIGxheWVyIG9ubHkuCi0gICAgSW50UmVjdCBj
YWxjdWxhdGVDb21wb3NpdGVkQm91bmRzKGNvbnN0IFJlbmRlckxheWVyKiwgY29uc3QgUmVuZGVy
TGF5ZXIqIGFuY2VzdG9yTGF5ZXIpOworICAgIEludFJlY3QgY2FsY3VsYXRlQ29tcG9zaXRlZEJv
dW5kcyhjb25zdCBSZW5kZXJMYXllciosIGNvbnN0IFJlbmRlckxheWVyKiBhbmNlc3RvckxheWVy
KSBjb25zdDsKIAogICAgIC8vIFJlcGFpbnQgdGhlIGFwcHJvcHJpYXRlIGxheWVycyB3aGVuIHRo
ZSBnaXZlbiBSZW5kZXJMYXllciBzdGFydHMgb3Igc3RvcHMgYmVpbmcgY29tcG9zaXRlZC4KICAg
ICB2b2lkIHJlcGFpbnRPbkNvbXBvc2l0aW5nQ2hhbmdlKFJlbmRlckxheWVyKik7CkluZGV4OiBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxMzM3ODcpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwyMiBAQAorMjAxMi0xMS0wNyAgQmV0aCBEYWtpbiAgPGJkYWtpbkBhcHBs
ZS5jb20+CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMTMwMworICAgICAgICBGaXhlZCBwb3NpdGlvbiBlbGVtZW50cyB0aGF0IGFyZSBvdXQgb2Yg
dmlldyBzdGlsbCBlbmQgdXAgZm9yY2luZyAKKyAgICAgICAgbm9uLXRocmVhZGVkIHNjcm9sbGlu
ZworICAgICAgICAtYW5kIGNvcnJlc3BvbmRpbmctCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8x
MjY0MjIyMj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBOZXcgdGVzdCBmb3IgYW4gaW52aXNpYmxlIGZpeGVkIG9iamVjdCB0aGF0IGhhcyB2aXNpYmxl
IGNoaWxkcmVuLgorICAgICAgICAqIHBsYXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2Fi
c29sdXRlLWluc2lkZS1vdXQtb2Ytdmlldy1maXhlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2Fic29sdXRlLWluc2lkZS1v
dXQtb2Ytdmlldy1maXhlZC5odG1sOiBBZGRlZC4KKworICAgICAgICBVcGRhdGVkIHRlc3RzLiBU
aGVzZSB0ZXN0cyBjYW4gbm93IHNjcm9sbCB3aXRoIHRoZSBzY3JvbGxpbmcgdGhyZWFkLCAKKyAg
ICAgICAgeWF5IQorICAgICAgICAqIHBsYXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2Zp
eGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvdGlsZWQtZHJhd2luZy9maXhlZC9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1uZWdh
dGl2ZS16aW5kZXgtZXhwZWN0ZWQudHh0OgorCiAyMDEyLTExLTA3ICBQaGlsaXAgUm9nZXJzICA8
cGRyQGdvb2dsZS5jb20+CiAKICAgICAgICAgU2tpcCBTVkcgcmVwYWludCB0cmFja2luZyB3aGVu
IHBhcmVudCBjb250YWluZXIgdHJhbnNmb3JtcwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL3RpbGVkLWRyYXdpbmcvZml4ZWQvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12aWV3LWZpeGVk
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvdGls
ZWQtZHJhd2luZy9maXhlZC9hYnNvbHV0ZS1pbnNpZGUtb3V0LW9mLXZpZXctZml4ZWQtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3RpbGVkLWRy
YXdpbmcvZml4ZWQvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12aWV3LWZpeGVkLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMiBAQAorKFNjcm9sbGluZyBub2RlCisgICh2aWV3
cG9ydCByZWN0IDAgMCA3ODUgNjAwKQorICAoY29udGVudHMgc2l6ZSA3ODUgMjUxMykKKyAgKHJl
cXVlc3RlZCBzY3JvbGwgcG9zaXRpb24gMCAyMDApCisgIChjaGlsZHJlbiAxCisgICAgKEZpeGVk
IG5vZGUKKyAgICAgIChhbmNob3IgZWRnZXM6IEFuY2hvckVkZ2VMZWZ0IEFuY2hvckVkZ2VUb3Ap
CisgICAgICAodmlld3BvcnQgcmVjdCBhdCBsYXN0IGxheW91dDogMC4wMCAyMDAuMDAgNzg1LjAw
IDYwMC4wMCkKKyAgICApCisgICkKKykKKwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L3RpbGVkLWRyYXdpbmcvZml4ZWQvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12aWV3LWZpeGVkLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3RpbGVkLWRyYXdpbmcv
Zml4ZWQvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12aWV3LWZpeGVkLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvdGlsZWQtZHJhd2luZy9maXhlZC9hYnNvbHV0
ZS1pbnNpZGUtb3V0LW9mLXZpZXctZml4ZWQuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw1
NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKworPGhlYWQ+CisgICAgPHN0eWxlPgorICAg
ICAgICBib2R5IHsKKyAgICAgICAgICAgIG1hcmdpbjogMDsKKyAgICAgICAgICAgIGhlaWdodDog
MjUwMHB4OworICAgICAgICB9CisKKyAgICAgICAgLmJveCB7CisgICAgICAgICAgaGVpZ2h0OiAx
MDBweDsKKyAgICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIH0KKworICAgICAgICAuZml4
ZWQgeworICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOworICAgICAgICAgICAgbGVmdDogMHB4
OworICAgICAgICAgICAgdG9wOiAwcHg7CisgICAgICAgIH0KKworICAgICAgICAud3JhcHBlciB7
CisgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICAgIGJhY2tncm91bmQtY29s
b3I6IGdyZWVuOworICAgICAgICB9CisgICAgICAgIAorICAgIDwvc3R5bGU+CisgICAgPHNjcmlw
dD4KKyAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLndh
aXRVbnRpbERvbmUoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICB9
CisKKyAgICAgIGZ1bmN0aW9uIGRvU2Nyb2xsKCkKKyAgICAgIHsKKyAgICAgICAgd2luZG93LnNl
dFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAgICAgd2luZG93LnNjcm9sbFRvKDAsIDIwMCk7
CisgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdyZXN1bHRzJykuaW5uZXJUZXh0ID0gaW50ZXJuYWxzLnNjcm9sbGlu
Z1N0YXRlVHJlZUFzVGV4dChkb2N1bWVudCk7CisgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0sIDEwKTsKKyAgICAgIH0KKyAgICAgIAor
ICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBkb1Njcm9sbCwgZmFsc2UpOwor
ICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgIDxwcmUgaWQ9InJlc3VsdHMiPjwvcHJl
PgorICA8ZGl2IGNsYXNzPSJmaXhlZCI+CisgICAgPGRpdiBjbGFzcz0id3JhcHBlciBib3giPgor
ICAgIDwvZGl2PgorICA8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12
aWV3LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
dGlsZWQtZHJhd2luZy9maXhlZC9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDEzMzY1MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy90aWxlZC1k
cmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LWV4cGVjdGVkLnR4dAkod29y
a2luZyBjb3B5KQpAQCAtMSw3ICsxLDYgQEAKIChTY3JvbGxpbmcgbm9kZQogICAodmlld3BvcnQg
cmVjdCAwIDAgNzg1IDYwMCkKICAgKGNvbnRlbnRzIHNpemUgNzg1IDEwMjEpCi0gIChTY3JvbGxp
bmcgb24gbWFpbiB0aHJlYWQgYmVjYXVzZTogSGFzIG5vbi1sYXllciBmaXhlZCBvYmplY3RzLCAp
CiAgIChjaGlsZHJlbiAxCiAgICAgKEZpeGVkIG5vZGUKICAgICAgIChhbmNob3IgZWRnZXM6IEFu
Y2hvckVkZ2VMZWZ0IEFuY2hvckVkZ2VUb3ApCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvdGlsZWQtZHJhd2luZy9maXhlZC9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1uZWdhdGl2
ZS16aW5kZXgtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LW5lZ2F0
aXZlLXppbmRleC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDEzMzY1MCkKKysrIExheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy90aWxlZC1kcmF3aW5nL2ZpeGVkL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12
aWV3LW5lZ2F0aXZlLXppbmRleC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNyAr
MSw2IEBACiAoU2Nyb2xsaW5nIG5vZGUKICAgKHZpZXdwb3J0IHJlY3QgMCAwIDc4NSA2MDApCiAg
IChjb250ZW50cyBzaXplIDc4NSAxMDIxKQotICAoU2Nyb2xsaW5nIG9uIG1haW4gdGhyZWFkIGJl
Y2F1c2U6IEhhcyBub24tbGF5ZXIgZml4ZWQgb2JqZWN0cywgKQogICAoY2hpbGRyZW4gMQogICAg
IChGaXhlZCBub2RlCiAgICAgICAoYW5jaG9yIGVkZ2VzOiBBbmNob3JFZGdlTGVmdCBBbmNob3JF
ZGdlVG9wKQo=
</data>
<flag name="review"
          id="187320"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>