<?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>50222</bug_id>
          
          <creation_ts>2010-11-30 03:45:13 -0800</creation_ts>
          <short_desc>[Qt] QML WebView inside a Flickable shows checkers pattern at startup</short_desc>
          <delta_ts>2011-03-21 12:16:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Henry Haverinen">henry.haverinen</reporter>
          <assigned_to name="Gopal Raghavan">gopal.1.raghavan</assigned_to>
          <cc>ademar</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>gopal.1.raghavan</cc>
    
    <cc>hausmann</cc>
    
    <cc>henrik.hartz</cc>
    
    <cc>kevin.simons</cc>
    
    <cc>kling</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>menard</cc>
    
    <cc>ossy</cc>
    
    <cc>sriram.seetharam</cc>
    
    <cc>suresh.voruganti</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>314939</commentid>
    <comment_count>0</comment_count>
    <who name="Henry Haverinen">henry.haverinen</who>
    <bug_when>2010-11-30 03:45:13 -0800</bug_when>
    <thetext>This code snippet shows only checkers pattern until you move the view:

import Qt 4.7
import QtWebKit 1.0
Flickable {
    id: flick; width: 640; height: 400
    clip: true
    contentWidth: web.width; contentHeight: web.height
    WebView {
        id: web
        url: &quot;http://qt.nokia.com&quot; 
    }
}

If you add this workaround in the WebView, then it will render the page correctly:

        onLoadFinished: {
            flick.contentY += 1; 
        }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>315634</commentid>
    <comment_count>1</comment_count>
    <who name="Sriram">sriram.seetharam</who>
    <bug_when>2010-12-01 07:28:57 -0800</bug_when>
    <thetext>COuld you please provide steps to reproduce this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>316076</commentid>
    <comment_count>2</comment_count>
    <who name="Henry Haverinen">henry.haverinen</who>
    <bug_when>2010-12-02 03:36:51 -0800</bug_when>
    <thetext>Here&apos;s how you should be able to reproduce this:

1. Install Qt 4.7 on Windows or Mac
2. Save the code snippet above as testcase.qml
3. run qmlviewer testcase.qml

I&apos;ve reproduced the problem on windows and Mac but it occurs on devices too.

An alternative is to create a little C++ application that embeds a QDeclarativeView for showing this problem. You could use the Qt Quick application wizard present in Qt Creator 2.1 beta and paste the code snipped as the main.qml.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318758</commentid>
    <comment_count>3</comment_count>
    <who name="Sriram">sriram.seetharam</who>
    <bug_when>2010-12-08 07:03:01 -0800</bug_when>
    <thetext>I am looking into this error right now. I am not able to reproduce the error locally on linux qmlviewer. What I see is that a checker pattern appears for a split second and then the actual page is loaded(all of this without onloadfinished()).

Checking to see if there is some refresh happening on linux that is not happening on other platforms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318872</commentid>
    <comment_count>4</comment_count>
    <who name="Sriram">sriram.seetharam</who>
    <bug_when>2010-12-08 10:36:01 -0800</bug_when>
    <thetext>I discovered that this error does not happen if there is no http proxy settings and content is accessed via file:/// scheme.

With http proxy settings, I can see the error even for file:/// scheme.

Looking to see why having proxy settings is causing the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319657</commentid>
    <comment_count>5</comment_count>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2010-12-09 12:31:19 -0800</bug_when>
    <thetext>Henry,

WebView needs preferredHeight and preferredWidth to be set. Once you set it you will not see checkers pattern.
for example:

Flickable {
    id: flick; width: 640; height: 400
    clip: true
    contentWidth: web.width; contentHeight: web.height
    WebView {
        id: web
        url: &quot;http://qt.nokia.com&quot; 
        preferredHeight: 400
        preferredWidth: 640
    }
}

Ideally, in the absense of preferredHeight/preferredWidth it would be nice to take parent dimensions.

What is the product requirement? 
To do fall back behavior or use mandatory preferred property.

Br,
--
Gopal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319762</commentid>
    <comment_count>6</comment_count>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2010-12-09 16:05:43 -0800</bug_when>
    <thetext>solution :
http://gitorious.org/~gopal/qt/gopal-qt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320018</commentid>
    <comment_count>7</comment_count>
    <who name="Henry Haverinen">henry.haverinen</who>
    <bug_when>2010-12-10 01:30:10 -0800</bug_when>
    <thetext>According to the documentation (http://doc.qt.nokia.com/4.7-snapshot/qml-webview.html#details), the QML developer can do one of the following things

- set the width, in which case content will be clipped if it doesn&apos;t fit
- set the preferredWidth, in which case Qt will try to fit content in preferredWidth but if that doesn&apos;t work then the width of the WebView will be more
- not set either, in which case the size will be adjusted to a size appropriate for the content

So it wouldn&apos;t work to have the WebView&apos;s preferredWidth to default to the parent&apos;s width. After all, we&apos;re using Flickable in order to show content that is larger than the Flickable area on the screen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320106</commentid>
    <comment_count>8</comment_count>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2010-12-10 05:42:03 -0800</bug_when>
    <thetext>Sure, agreed with all your three cases.
I guess, we are now concerned about the last case. 
With the solution I have proposed, you should not see any checker during initial load. Then when you flick, it will auto restreach to show all the content.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320196</commentid>
    <comment_count>9</comment_count>
      <attachid>76210</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2010-12-10 09:03:42 -0800</bug_when>
    <thetext>Created attachment 76210
patch to fix the checker box issue

Please find attached a patch for eliminating checkerbox in absense of preferredHeight and preferredWidth on declarative WebView.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320246</commentid>
    <comment_count>10</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2010-12-10 10:51:02 -0800</bug_when>
    <thetext>Sorry, I was not on the computer when you asked on IRC.

If there are not autotest for the declarative web view, you should create the folder and make the test file.

I think this need autotest. You are enforcing certains behaviors in certains conditions. Nothing is currently tested, this is bad.

Not your fault obvisouly if tests are missing, but you can solve the issue by making some tests :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320295</commentid>
    <comment_count>11</comment_count>
    <who name="Suresh Voruganti">suresh.voruganti</who>
    <bug_when>2010-12-10 12:00:36 -0800</bug_when>
    <thetext>Fix required for Qtwebkit 2.1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320954</commentid>
    <comment_count>12</comment_count>
    <who name="Henry Haverinen">henry.haverinen</who>
    <bug_when>2010-12-13 00:22:30 -0800</bug_when>
    <thetext>Gopal, I don&apos;t think you can set the preferredWidth to the parent&apos;s width if it is not given. If width and preferredWidth are not set, then the WebView should choose a width that is appropriate for the _content_, which is not necessarily the width of the parent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>323985</commentid>
    <comment_count>13</comment_count>
      <attachid>76908</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2010-12-17 14:19:10 -0800</bug_when>
    <thetext>Created attachment 76908
Patch attached along with test case

I have attached couple of test cases. The patch resolves the issue.
These test cannot go in the autotest. We probably need to add a framework to test layout rendered through qmlviewer.
Currently, the test can be manually checked through qmlviewer.
I request you to review and move this patch forward.
Thanks,
--
Gopal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>327333</commentid>
    <comment_count>14</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2010-12-28 13:38:07 -0800</bug_when>
    <thetext>As discussed (in pvt) with Suresh, this should not block qtwebkit-2.1. Marking as a nice-to-have fix for qtwebkit-2.2 (later it can be triaged and promoted to blocker if necessary)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>329003</commentid>
    <comment_count>15</comment_count>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-01-04 08:28:20 -0800</bug_when>
    <thetext>Can someone please review the patch?
Thanks,
--
Gopal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331630</commentid>
    <comment_count>16</comment_count>
    <who name="Suresh Voruganti">suresh.voruganti</who>
    <bug_when>2011-01-10 08:06:16 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; Can someone please review the patch?
&gt; Thanks,
&gt; --
&gt; Gopal

Can someone pls review the patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337548</commentid>
    <comment_count>17</comment_count>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-01-20 13:21:52 -0800</bug_when>
    <thetext>could also solve: https://bugs.webkit.org/show_bug.cgi?id=48413</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348278</commentid>
    <comment_count>18</comment_count>
      <attachid>76908</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2011-02-09 09:07:22 -0800</bug_when>
    <thetext>Comment on attachment 76908
Patch attached along with test case

The patch is ok to me. For the auto-test why not using a private header (#include &quot;qdeclarative_p.h&quot;) and create a test case in C++ like tst_qwebpage.cpp? You instanciate the qdeclarativewebview class and using QTestLib you test the preferredwidth and preferredHeight.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>348295</commentid>
    <comment_count>19</comment_count>
      <attachid>76908</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2011-02-09 09:20:59 -0800</bug_when>
    <thetext>Comment on attachment 76908
Patch attached along with test case

Change the the plugin code looks ok to me.

r- as tests are not automated. I like Alexis proposal on how to write auto tests for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>353705</commentid>
    <comment_count>20</comment_count>
      <attachid>82986</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-02-18 11:34:10 -0800</bug_when>
    <thetext>Created attachment 82986
Added auto test cases along with patch as per suggestion</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>353708</commentid>
    <comment_count>21</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-18 11:37:53 -0800</bug_when>
    <thetext>Attachment 82986 did not pass style-queue:

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

Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:1:  Found other header before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 1 in 8 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354876</commentid>
    <comment_count>22</comment_count>
      <attachid>83233</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-02-21 16:03:05 -0800</bug_when>
    <thetext>Created attachment 83233
Update checker.py to fix the style-checker issue

Added auto test cases along with patch as per suggestion.
Updated checker.py to take care of style-checker issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354967</commentid>
    <comment_count>23</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-02-21 18:28:18 -0800</bug_when>
    <thetext>Attachment 83233 did not build on qt:
Build output: http://queues.webkit.org/results/7938978</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355308</commentid>
    <comment_count>24</comment_count>
      <attachid>83323</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-02-22 08:47:52 -0800</bug_when>
    <thetext>Created attachment 83323
Fixed build issues

Added auto test cases.
Updated style checker.
Fixed build issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>355370</commentid>
    <comment_count>25</comment_count>
      <attachid>83323</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-02-22 10:24:15 -0800</bug_when>
    <thetext>Comment on attachment 83323
Fixed build issues

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

&gt; Source/WebKit/qt/ChangeLog:7
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=50222. With this patch you will
&gt; +        not see checkerboard in webview even if preferredWidth and 

Please split lines here

&gt; Source/WebKit/qt/declarative/qdeclarativewebview.cpp:281
&gt; +    if (!preferredWidth())
&gt; +        setPreferredWidth(d-&gt;view-&gt;preferredWidth());
&gt; +    if (!preferredHeight())
&gt; +        setPreferredHeight(d-&gt;view-&gt;preferredHeight());

Probably OK, but would it make more sense for preferredWidth to return d-&gt;view-&gt;preferredWidth() if setPreferredWidth was never set? The changelog also does not explain why this solution is correct.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:31
&gt; +#define QTRY_VERIFY(__expr) \

I do not think that using this one place is enough for making it a macro. This just obscures the code.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:64
&gt; +void tst_QDeclarativeWebView::initTestCase()
&gt; +{
&gt; +}
&gt; +
&gt; +// This will be called after the last test function is executed.
&gt; +// It is only called once.
&gt; +void tst_QDeclarativeWebView::cleanupTestCase()
&gt; +{
&gt; +}
&gt; +
&gt; +// This will be called before each test function is executed.
&gt; +void tst_QDeclarativeWebView::init()
&gt; +{
&gt; +}
&gt; +
&gt; +// This will be called after every test function.
&gt; +void tst_QDeclarativeWebView::cleanup()
&gt; +{
&gt; +}

Why add these if they do not test anything?

&gt; Tools/Scripts/webkitpy/style/checker.py:127
&gt; -      &quot;Tools/TestWebKitAPI/&quot;],
&gt; +      &quot;Tools/TestWebKitAPI/&quot;,
&gt; +      &quot;Source/WebKit/qt/tests/qdeclarativewebview&quot;],

This could be a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>356019</commentid>
    <comment_count>26</comment_count>
      <attachid>83470</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-02-23 04:18:01 -0800</bug_when>
    <thetext>Created attachment 83470
Updated patch based on suggestion from reviewer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357042</commentid>
    <comment_count>27</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2011-02-24 08:53:35 -0800</bug_when>
    <thetext>*** Bug 48413 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357054</commentid>
    <comment_count>28</comment_count>
      <attachid>83470</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2011-02-24 09:02:49 -0800</bug_when>
    <thetext>Comment on attachment 83470
Updated patch based on suggestion from reviewer

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

Thanks for the patch. Modify it to take into account the comments :).

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:6
&gt; +#include &lt;QtDeclarative/qdeclarativeengine.h&gt;

Why mixing #include &lt;QDeclarativeView&gt; and the other types of includes #include &lt;QtDeclarative/qdeclarativecomponent.h&gt;

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:7
&gt; +#include &lt;qtest.h&gt;

Why not used &lt;QtTest/QTest&gt;

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:22
&gt; +    void qTryVerify(bool);

No need. Use the one in QTestLib like other tests.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:46
&gt; +    QDeclarativeComponent component(&amp;engine, QUrl::fromLocalFile(TESTS_SOURCE_DIR&quot;/qdeclarativewebview/resources/webviewtest.qml&quot;));

In resources as suggested on IRC.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:57
&gt; +        QSKIP(QString(&quot;This test requires access to resources found in &apos;%1&apos;&quot;).arg(TESTS_SOURCE_DIR).toLatin1().constData(), SkipAll);

Don&apos;t forget to remove that if you use the resources.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:71
&gt; +        QSKIP(QString(&quot;This test requires access to resources found in &apos;%1&apos;&quot;).arg(TESTS_SOURCE_DIR).toLatin1().constData(), SkipAll);

Same as 57.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:105
&gt; +            qWarning() &lt;&lt; errorStr;

Why? We don&apos;t need to print in the terminal the warnings. It fails or pass like the QVERIFY below.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/resources/webviewtest.qml:17
&gt; +	url: &quot;http://qt.nokia.com&quot;

Tab issue.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/resources/webviewtest.qml:18
&gt; +        smooth: false

Check the tab or spaces. It has to be spaces.

&gt; Source/WebKit/qt/tests/qdeclarativewebview/resources/webviewtestdefault.qml:17
&gt; +	url: &quot;http://qt.nokia.com&quot;

Same tab issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357224</commentid>
    <comment_count>29</comment_count>
      <attachid>83691</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-02-24 11:44:26 -0800</bug_when>
    <thetext>Created attachment 83691
Took care of comments from reviewer

Thanks Alexis for your input. I have fixed as per your suggestions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357244</commentid>
    <comment_count>30</comment_count>
      <attachid>83691</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2011-02-24 11:58:48 -0800</bug_when>
    <thetext>Comment on attachment 83691
Took care of comments from reviewer

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

&gt; Source/WebKit/qt/ChangeLog:10
&gt; +

This patch fixes the checkerboard visible at startup even if preferredWidth and preferredHeight are not set.

seems a better changelog. I&apos;m nitpicking :).

&gt; Source/WebKit/qt/tests/util.h:37
&gt; +

Why this extra line?

&gt; Source/WebKit/qt/tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:41
&gt; +    delete wv;

You don&apos;t need those deletes. component.create(); return a pointer and indeed allocate memory BUT everything is deleted anyway when QDeclarativeComponent dies (at the end of the scope) and when the QDeclarativeEngine dies because the root element is parented to them. I&apos;m sure it can cause problem of double deletion (valgrind can confirm) but I guess probably that use case is catched so that&apos;s why it works.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357273</commentid>
    <comment_count>31</comment_count>
      <attachid>83699</attachid>
    <who name="Gopal Raghavan">gopal.1.raghavan</who>
    <bug_when>2011-02-24 12:28:15 -0800</bug_when>
    <thetext>Created attachment 83699
Update as per suggestions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357277</commentid>
    <comment_count>32</comment_count>
      <attachid>83699</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2011-02-24 12:32:39 -0800</bug_when>
    <thetext>Comment on attachment 83699
Update as per suggestions

Looks good to me. Need someone to land it :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357838</commentid>
    <comment_count>33</comment_count>
      <attachid>83699</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-02-25 04:48:19 -0800</bug_when>
    <thetext>Comment on attachment 83699
Update as per suggestions

Clearing flags on attachment: 83699

Committed r79672: &lt;http://trac.webkit.org/changeset/79672&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357839</commentid>
    <comment_count>34</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-02-25 04:48:34 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357855</commentid>
    <comment_count>35</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-02-25 05:22:44 -0800</bug_when>
    <thetext>(In reply to comment #33)
&gt; (From update of attachment 83699 [details])
&gt; Clearing flags on attachment: 83699
&gt; 
&gt; Committed r79672: &lt;http://trac.webkit.org/changeset/79672&gt;

It broke Qt Linux Release minimal, because it hasn&apos;t QDeclarative.

We shouldn&apos;t build tst_qdeclarativewebview if CONFIG contains qt_minimal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357858</commentid>
    <comment_count>36</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2011-02-25 05:32:16 -0800</bug_when>
    <thetext>On my way to make the fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357867</commentid>
    <comment_count>37</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-02-25 05:54:56 -0800</bug_when>
    <thetext>Fix landed in http://trac.webkit.org/changeset/79678</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>361754</commentid>
    <comment_count>38</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2011-03-03 11:08:38 -0800</bug_when>
    <thetext>Revision r79672 cherry-picked into qtwebkit-2.1.x with commit c31f2f4 &lt;http://gitorious.org/webkit/qtwebkit/commit/c31f2f4&gt;
Revision r79678 cherry-picked into qtwebkit-2.1.x with commit 0a95892 &lt;http://gitorious.org/webkit/qtwebkit/commit/0a95892&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>369362</commentid>
    <comment_count>39</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-03-17 15:48:44 -0700</bug_when>
    <thetext>(In reply to comment #38)
&gt; Revision r79672 cherry-picked into qtwebkit-2.1.x with commit c31f2f4 &lt;http://gitorious.org/webkit/qtwebkit/commit/c31f2f4&gt;
&gt; Revision r79678 cherry-picked into qtwebkit-2.1.x with commit 0a95892 &lt;http://gitorious.org/webkit/qtwebkit/commit/0a95892&gt;

I think something went wrong with this cherry-pick, as c31f2f4 created Source/WebKit/qt/declarative/qdeclarativewebview.cpp instead of merging the changes into WebKit/qt/declarative/qdeclarativewebview.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370822</commentid>
    <comment_count>40</comment_count>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2011-03-21 12:16:41 -0700</bug_when>
    <thetext>Thanks for catching that, Simon.

The change from the original patch is correctly applied in WebKit/qt/declarative/qdeclarativewebview.cpp. What happened is that the equivalent file in &quot;Source/&quot; was also mistakenly added to the commit.

I&apos;ve just pushed 23a7339771ad724427cfce724430b0f898177b2e in the qtwebkit-2.1.x branch to remove that file. But since it was not used by the build system in that branch, it didn&apos;t cause any harm.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76210</attachid>
            <date>2010-12-10 09:03:42 -0800</date>
            <delta_ts>2010-12-17 14:19:10 -0800</delta_ts>
            <desc>patch to fix the checker box issue</desc>
            <filename>50222.patch</filename>
            <type>text/plain</type>
            <size>1616</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNzM3MzEpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMTItMTAgIEdvcGFsIFJhZ2hhdmFuICA8Z29wYWwu
MS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNpZGUgYSBGbGlja2FibGUgc2hvd3Mg
Y2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMgorCisgICAgICAgIFdpdGggdGhpcyBwYXRjaCB5b3Ug
d2lsbCBub3Qgc2VlIGNoZWNrZXJib2FyZCBpbiB3ZWJ2aWV3IGV2ZW4gaWYgcHJlZmVycmVkV2lk
dGgKKyAgICAgICAgYW5kIHByZWZlcnJlZEhlaWdodCBhcmUgbWlzc2luZy4KKworICAgICAgICAq
IGRlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwOgorICAgICAgICAoUURlY2xhcmF0
aXZlV2ViVmlldzo6aW5pdCk6CisKIDIwMTAtMTItMTAgIEpvY2VseW4gVHVyY290dGUgIDxqb2Nl
bHluLnR1cmNvdHRlQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJv
aGRlIENocmlzdGlhbnNlbi4KSW5kZXg6IFdlYktpdC9xdC9kZWNsYXJhdGl2ZS9xZGVjbGFyYXRp
dmV3ZWJ2aWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xh
cmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDczNjU2KQorKysgV2ViS2l0L3F0L2RlY2xhcmF0
aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNTksNiArMjU5
LDEwIEBAIHZvaWQgUURlY2xhcmF0aXZlV2ViVmlldzo6aW5pdCgpCiAgICAgZC0+dmlldy0+c2V0
UmVzaXplc1RvQ29udGVudHModHJ1ZSk7CiAgICAgUVdlYlBhZ2UqIHdwID0gbmV3IFFEZWNsYXJh
dGl2ZVdlYlBhZ2UodGhpcyk7CiAgICAgc2V0UGFnZSh3cCk7CisgICAgaWYgKCFwcmVmZXJyZWRX
aWR0aCgpKQorICAgICAgICBzZXRQcmVmZXJyZWRXaWR0aChkLT52aWV3LT5wcmVmZXJyZWRXaWR0
aCgpKTsKKyAgICBpZiAoIXByZWZlcnJlZEhlaWdodCgpKQorICAgICAgICBzZXRQcmVmZXJyZWRI
ZWlnaHQoZC0+dmlldy0+cHJlZmVycmVkSGVpZ2h0KCkpOwogICAgIGNvbm5lY3QoZC0+dmlldywg
U0lHTkFMKGdlb21ldHJ5Q2hhbmdlZCgpKSwgdGhpcywgU0xPVCh1cGRhdGVEZWNsYXJhdGl2ZVdl
YlZpZXdTaXplKCkpKTsKICAgICBjb25uZWN0KGQtPnZpZXcsIFNJR05BTChkb3VibGVDbGljayhp
bnQsIGludCkpLCB0aGlzLCBTSUdOQUwoZG91YmxlQ2xpY2soaW50LCBpbnQpKSk7CiAgICAgY29u
bmVjdChkLT52aWV3LCBTSUdOQUwoc2NhbGVDaGFuZ2VkKCkpLCB0aGlzLCBTSUdOQUwoY29udGVu
dHNTY2FsZUNoYW5nZWQoKSkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76908</attachid>
            <date>2010-12-17 14:19:10 -0800</date>
            <delta_ts>2011-02-18 11:34:10 -0800</delta_ts>
            <desc>Patch attached along with test case</desc>
            <filename>50222a.patch</filename>
            <type>text/plain</type>
            <size>3303</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNzQyOTMpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMTItMTcgIEdvcGFsIFJhZ2hhdmFuICA8Z29wYWwu
MS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNpZGUgYSBGbGlja2FibGUgc2hvd3Mg
Y2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMgorCisgICAgICAgIFdpdGggdGhpcyBwYXRjaCB5b3Ug
d2lsbCBub3Qgc2VlIGNoZWNrZXJib2FyZCBpbiB3ZWJ2aWV3IGV2ZW4gaWYgcHJlZmVycmVkV2lk
dGgKKyAgICAgICAgYW5kIHByZWZlcnJlZEhlaWdodCBhcmUgbWlzc2luZy4KKworICAgICAgICAq
IGRlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwOgorICAgICAgICAoUURlY2xhcmF0
aXZlV2ViVmlldzo6aW5pdCk6CisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldzog
QWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9XZWJWaWV3RmxpY2th
YmxlV2l0aG91dFByZWZlcnJlZFByb3BlcnR5LnFtbDogQWRkZWQuCisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9XZWJWaWV3UmVjdGFuZ2xlV2l0aG91dFByZWZlcnJlZFByb3Bl
cnR5LnFtbDogQWRkZWQuCisKIDIwMTAtMTItMTcgIEFyaXlhIEhpZGF5YXQgIDxhcml5YUBzZW5j
aGEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFudG9uaW8gR29tZXMuCkluZGV4OiBXZWJL
aXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0L3F0L2RlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCShyZXZpc2lvbiA3
NDI2OSkKKysrIFdlYktpdC9xdC9kZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmV3ZWJ2aWV3LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjU5LDYgKzI1OSwxMCBAQCB2b2lkIFFEZWNsYXJhdGl2ZVdlYlZp
ZXc6OmluaXQoKQogICAgIGQtPnZpZXctPnNldFJlc2l6ZXNUb0NvbnRlbnRzKHRydWUpOwogICAg
IFFXZWJQYWdlKiB3cCA9IG5ldyBRRGVjbGFyYXRpdmVXZWJQYWdlKHRoaXMpOwogICAgIHNldFBh
Z2Uod3ApOworICAgIGlmICghcHJlZmVycmVkV2lkdGgoKSkKKyAgICAgICAgc2V0UHJlZmVycmVk
V2lkdGgoZC0+dmlldy0+cHJlZmVycmVkV2lkdGgoKSk7CisgICAgaWYgKCFwcmVmZXJyZWRIZWln
aHQoKSkKKyAgICAgICAgc2V0UHJlZmVycmVkSGVpZ2h0KGQtPnZpZXctPnByZWZlcnJlZEhlaWdo
dCgpKTsKICAgICBjb25uZWN0KGQtPnZpZXcsIFNJR05BTChnZW9tZXRyeUNoYW5nZWQoKSksIHRo
aXMsIFNMT1QodXBkYXRlRGVjbGFyYXRpdmVXZWJWaWV3U2l6ZSgpKSk7CiAgICAgY29ubmVjdChk
LT52aWV3LCBTSUdOQUwoZG91YmxlQ2xpY2soaW50LCBpbnQpKSwgdGhpcywgU0lHTkFMKGRvdWJs
ZUNsaWNrKGludCwgaW50KSkpOwogICAgIGNvbm5lY3QoZC0+dmlldywgU0lHTkFMKHNjYWxlQ2hh
bmdlZCgpKSwgdGhpcywgU0lHTkFMKGNvbnRlbnRzU2NhbGVDaGFuZ2VkKCkpKTsKSW5kZXg6IFdl
YktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L1dlYlZpZXdGbGlja2FibGVXaXRob3V0
UHJlZmVycmVkUHJvcGVydHkucW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC90ZXN0cy9xZGVj
bGFyYXRpdmV3ZWJ2aWV3L1dlYlZpZXdGbGlja2FibGVXaXRob3V0UHJlZmVycmVkUHJvcGVydHku
cW1sCShyZXZpc2lvbiAwKQorKysgV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcv
V2ViVmlld0ZsaWNrYWJsZVdpdGhvdXRQcmVmZXJyZWRQcm9wZXJ0eS5xbWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjEgQEAKK2ltcG9ydCBRdCA0LjcKK2ltcG9ydCBRdFdlYktpdCAxLjAKKwor
Ly8gRXhwZWN0ZWQgcmVzdWx0czoKKy8vIHRoZSB3ZWJwYWdlIHNob3VsZCBsb2FkIG5vcm1hbGx5
IGluIHFtbHZpZXdlci4gUGFnZSBzaG91bGQgYmUgZmxpY2thYmxlCisKK0ZsaWNrYWJsZSB7Cisg
ICAgaWQ6IGZsaWNrCisgICAgd2lkdGg6IDY0MAorICAgIGhlaWdodDogNDAwCisgICAgY2xpcDog
dHJ1ZQorICAgIGNvbnRlbnRXaWR0aDogd2ViLndpZHRoOyBjb250ZW50SGVpZ2h0OiB3ZWIuaGVp
Z2h0CisKKyAgICBXZWJWaWV3IHsKKyAgICAgICAgaWQ6IHdlYgorICAgICAgICB1cmw6ICJodHRw
Oi8vcXQubm9raWEuY29tLyIKKyAgICAgICAgc21vb3RoOiBmYWxzZQorICAgICAgICBzY2FsZTog
MS4wCisgICAgICAgIGZvY3VzOiB0cnVlCisgICAgfQorfQpJbmRleDogV2ViS2l0L3F0L3Rlc3Rz
L3FkZWNsYXJhdGl2ZXdlYnZpZXcvV2ViVmlld1JlY3RhbmdsZVdpdGhvdXRQcmVmZXJyZWRQcm9w
ZXJ0eS5xbWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZp
ZXcvV2ViVmlld1JlY3RhbmdsZVdpdGhvdXRQcmVmZXJyZWRQcm9wZXJ0eS5xbWwJKHJldmlzaW9u
IDApCisrKyBXZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9XZWJWaWV3UmVjdGFu
Z2xlV2l0aG91dFByZWZlcnJlZFByb3BlcnR5LnFtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwy
MCBAQAoraW1wb3J0IFF0IDQuNworaW1wb3J0IFF0V2ViS2l0IDEuMAorCisvLyBFeHBlY3RlZCBy
ZXN1bHRzOgorLy8gdGhlIHdlYnBhZ2Ugc2hvdWxkIGxvYWQgbm9ybWFsbHkgaW4gcW1sdmlld2Vy
CisKK1JlY3RhbmdsZSB7CisgICAgaWQ6IGZsaWNrCisgICAgd2lkdGg6IDY0MAorICAgIGhlaWdo
dDogNDAwCisgICAgY2xpcDogdHJ1ZQorCisgICAgV2ViVmlldyB7CisgICAgICAgIGlkOiB3ZWIK
KyAgICAgICAgdXJsOiAiaHR0cDovL3F0Lm5va2lhLmNvbS8iCisgICAgICAgIHNtb290aDogZmFs
c2UKKyAgICAgICAgc2NhbGU6IDEuMAorICAgICAgICBmb2N1czogdHJ1ZQorICAgIH0KK30K
</data>
<flag name="review"
          id="67930"
          type_id="1"
          status="-"
          setter="laszlo.gombos"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>82986</attachid>
            <date>2011-02-18 11:34:10 -0800</date>
            <delta_ts>2011-02-21 16:03:05 -0800</delta_ts>
            <desc>Added auto test cases along with patch as per suggestion</desc>
            <filename>50222b.patch</filename>
            <type>text/plain</type>
            <size>10627</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTAxMykKKysrIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMDItMTggIEdv
cGFsIFJhZ2hhdmFuICA8Z29wYWwuMS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNp
ZGUgYSBGbGlja2FibGUgc2hvd3MgY2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMgorCisgICAgICAg
IFdpdGggdGhpcyBwYXRjaCB5b3Ugd2lsbCBub3Qgc2VlIGNoZWNrZXJib2FyZCBpbiB3ZWJ2aWV3
IGV2ZW4gaWYgcHJlZmVycmVkV2lkdGgKKyAgICAgICAgYW5kIHByZWZlcnJlZEhlaWdodCBhcmUg
bWlzc2luZy4KKworICAgICAgICAqIGRlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3Bw
OgorICAgICAgICAoUURlY2xhcmF0aXZlV2ViVmlldzo6aW5pdCk6CisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2VidmlldzogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnBybzogQWRkZWQuCisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL3Fk
ZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbDogQWRkZWQuCisgICAg
ICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZh
dWx0LnFtbDogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3Rf
cWRlY2xhcmF0aXZld2Vidmlldy5jcHA6IEFkZGVkLgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2
ZVdlYlZpZXc6OmluaXRUZXN0Q2FzZSk6CisgICAgICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmll
dzo6Y2xlYW51cFRlc3RDYXNlKToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3Ojpp
bml0KToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjbGVhbnVwKToKKyAgICAg
ICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QpOgorICAgICAg
ICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodFRlc3QpOgorICAgICAg
ICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QpOgor
ICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodERlZmF1bHRU
ZXN0KToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjaGVja05vRXJyb3JzKToK
KyAgICAgICAgKiB0ZXN0cy90ZXN0cy5wcmk6CisgICAgICAgICogdGVzdHMvdGVzdHMucHJvOgor
CiAyMDExLTAyLTEwICBMdWl6IEFnb3N0aW5pICA8bHVpei5hZ29zdGluaUBvcGVuYm9zc2Eub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCkluZGV4OiBTb3VyY2UvV2ViS2l0
L3F0L2RlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHJldmlz
aW9uIDc5MDEzKQorKysgU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmV3
ZWJ2aWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjc1LDYgKzI3NSwxMCBAQCB2b2lkIFFEZWNs
YXJhdGl2ZVdlYlZpZXc6OmluaXQoKQogICAgIGQtPnZpZXctPnNldEZvY3VzKCk7CiAgICAgUVdl
YlBhZ2UqIHdwID0gbmV3IFFEZWNsYXJhdGl2ZVdlYlBhZ2UodGhpcyk7CiAgICAgc2V0UGFnZSh3
cCk7CisgICAgaWYgKCFwcmVmZXJyZWRXaWR0aCgpKQorICAgICAgICBzZXRQcmVmZXJyZWRXaWR0
aChkLT52aWV3LT5wcmVmZXJyZWRXaWR0aCgpKTsKKyAgICBpZiAoIXByZWZlcnJlZEhlaWdodCgp
KQorICAgICAgICBzZXRQcmVmZXJyZWRIZWlnaHQoZC0+dmlldy0+cHJlZmVycmVkSGVpZ2h0KCkp
OwogICAgIGNvbm5lY3QoZC0+dmlldywgU0lHTkFMKGdlb21ldHJ5Q2hhbmdlZCgpKSwgdGhpcywg
U0xPVCh1cGRhdGVEZWNsYXJhdGl2ZVdlYlZpZXdTaXplKCkpKTsKICAgICBjb25uZWN0KGQtPnZp
ZXcsIFNJR05BTChkb3VibGVDbGljayhpbnQsIGludCkpLCB0aGlzLCBTSUdOQUwoZG91YmxlQ2xp
Y2soaW50LCBpbnQpKSk7CiAgICAgY29ubmVjdChkLT52aWV3LCBTSUdOQUwoc2NhbGVDaGFuZ2Vk
KCkpLCB0aGlzLCBTSUdOQUwoY29udGVudHNTY2FsZUNoYW5nZWQoKSkpOwpJbmRleDogU291cmNl
L1dlYktpdC9xdC90ZXN0cy90ZXN0cy5wcmkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9x
dC90ZXN0cy90ZXN0cy5wcmkJKHJldmlzaW9uIDc5MDEzKQorKysgU291cmNlL1dlYktpdC9xdC90
ZXN0cy90ZXN0cy5wcmkJKHdvcmtpbmcgY29weSkKQEAgLTIwLDcgKzIwLDcgQEAgSU5DTFVERVBB
VEggKz0gXAogICAgICQkUFdELy4uL0FwaQogCiBpbmNsdWRlKC4uLy4uLy4uL1dlYktpdC5wcmkp
Ci1RVCArPSB0ZXN0bGliIG5ldHdvcmsKK1FUICs9IHRlc3RsaWIgbmV0d29yayBkZWNsYXJhdGl2
ZQogCiBRTUFLRV9SUEFUSERJUiA9ICQkT1VUUFVUX0RJUi9saWIgJCRRTUFLRV9SUEFUSERJUgog
CkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwkocmV2aXNpb24gNzkwMTMpCisrKyBTb3Vy
Y2UvV2ViS2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQg
QEAKIAogVEVNUExBVEUgPSBzdWJkaXJzCi1TVUJESVJTID0gcXdlYmZyYW1lIHF3ZWJwYWdlIHF3
ZWJlbGVtZW50IHFncmFwaGljc3dlYnZpZXcgcXdlYmhpc3RvcnlpbnRlcmZhY2UgcXdlYnZpZXcg
cXdlYmhpc3RvcnkgcXdlYmluc3BlY3RvciBoeWJyaWRQaXhtYXAKK1NVQkRJUlMgPSBxd2ViZnJh
bWUgcXdlYnBhZ2UgcXdlYmVsZW1lbnQgcWdyYXBoaWNzd2VidmlldyBxd2ViaGlzdG9yeWludGVy
ZmFjZSBxd2VidmlldyBxd2ViaGlzdG9yeSBxZGVjbGFyYXRpdmV3ZWJ2aWV3IHF3ZWJpbnNwZWN0
b3IgaHlicmlkUGl4bWFwCiBTVUJESVJTICs9IGJlbmNobWFya3MvcGFpbnRpbmcgYmVuY2htYXJr
cy9sb2FkaW5nCkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZp
ZXcvcWRlY2xhcmF0aXZld2Vidmlldy5wcm8KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9x
dC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNsYXJhdGl2ZXdlYnZpZXcucHJvCShyZXZp
c2lvbiAwKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Fk
ZWNsYXJhdGl2ZXdlYnZpZXcucHJvCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYgQEAKK2lzRW1w
dHkoT1VUUFVUX0RJUik6IE9VVFBVVF9ESVIgPSAuLi8uLi8uLi8uLgoraW5jbHVkZSguLi90ZXN0
cy5wcmkpCitleGlzdHMoJCR7VEFSR0VUfS5xcmMpOlJFU09VUkNFUyArPSAkJHtUQVJHRVR9LnFy
YworSU5DTFVERVBBVEggKz0gXAorICAgICQkUFdELy4uLy4uL2RlY2xhcmF0aXZlCisKSW5kZXg6
IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3RfcWRlY2xhcmF0
aXZld2Vidmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVj
bGFyYXRpdmV3ZWJ2aWV3L3RzdF9xZGVjbGFyYXRpdmV3ZWJ2aWV3LmNwcAkocmV2aXNpb24gMCkK
KysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3RfcWRlY2xh
cmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTQxIEBACisjaW5jbHVk
ZSA8UURlYnVnPgorI2luY2x1ZGUgPFFEZWNsYXJhdGl2ZVByb3BlcnR5PgorI2luY2x1ZGUgPFFE
ZWNsYXJhdGl2ZVZpZXc+CisjaW5jbHVkZSA8UURpcj4KKyNpbmNsdWRlIDxRdERlY2xhcmF0aXZl
L3FkZWNsYXJhdGl2ZWNvbXBvbmVudC5oPgorI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRlY2xh
cmF0aXZlZW5naW5lLmg+CisjaW5jbHVkZSA8cXRlc3QuaD4KKworUVRfQkVHSU5fTkFNRVNQQUNF
CisKK2NsYXNzIHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3IDogcHVibGljIFFPYmplY3QgeworICAg
IFFfT0JKRUNUCisKK3B1YmxpYyBzbG90czoKKyAgICB2b2lkIGluaXRUZXN0Q2FzZSgpOworICAg
IHZvaWQgY2xlYW51cFRlc3RDYXNlKCk7CisgICAgdm9pZCBpbml0KCk7CisgICAgdm9pZCBjbGVh
bnVwKCk7CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBwcmVmZXJyZWRXaWR0aFRlc3QoKTsK
KyAgICB2b2lkIHByZWZlcnJlZEhlaWdodFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZFdpZHRo
RGVmYXVsdFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZEhlaWdodERlZmF1bHRUZXN0KCk7CisK
K3ByaXZhdGU6CisgICAgdm9pZCBjaGVja05vRXJyb3JzKGNvbnN0IFFEZWNsYXJhdGl2ZUNvbXBv
bmVudCYpOworfTsKKworLy8gV2lsbCB0cnkgdG8gd2FpdCBmb3IgdGhlIGNvbmRpdGlvbiB3aGls
ZSBhbGxvd2luZyBldmVudCBwcm9jZXNzaW5nCisjZGVmaW5lIFFUUllfVkVSSUZZKF9fZXhwcikg
XAorICAgIGRvIHsgXAorICAgICAgICBjb25zdCBpbnQgX19zdGVwID0gNTA7IFwKKyAgICAgICAg
Y29uc3QgaW50IF9fdGltZW91dCA9IDkwMDAwOyBcCisgICAgICAgIGlmICghKF9fZXhwcikpIHsg
XAorICAgICAgICAgICAgUVRlc3Q6OnFXYWl0KDApOyBcCisgICAgICAgIH0gXAorICAgICAgICBm
b3IgKGludCBfX2kgPSAwOyBfX2kgPCBfX3RpbWVvdXQgJiYgIShfX2V4cHIpOyBfX2kgKz0gX19z
dGVwKSB7IFwKKyAgICAgICAgICAgIFFUZXN0OjpxV2FpdChfX3N0ZXApOyBcCisgICAgICAgIH0g
XAorICAgICAgICBRVkVSSUZZKF9fZXhwcik7IFwKKyAgICB9IHdoaWxlICgwKQorCisvLyBUaGlz
IHdpbGwgYmUgY2FsbGVkIGJlZm9yZSB0aGUgZmlyc3QgdGVzdCBmdW5jdGlvbiBpcyBleGVjdXRl
ZC4KKy8vIEl0IGlzIG9ubHkgY2FsbGVkIG9uY2UuCit2b2lkIHRzdF9RRGVjbGFyYXRpdmVXZWJW
aWV3Ojppbml0VGVzdENhc2UoKQoreworfQorCisvLyBUaGlzIHdpbGwgYmUgY2FsbGVkIGFmdGVy
IHRoZSBsYXN0IHRlc3QgZnVuY3Rpb24gaXMgZXhlY3V0ZWQuCisvLyBJdCBpcyBvbmx5IGNhbGxl
ZCBvbmNlLgordm9pZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6Y2xlYW51cFRlc3RDYXNlKCkK
K3sKK30KKworLy8gVGhpcyB3aWxsIGJlIGNhbGxlZCBiZWZvcmUgZWFjaCB0ZXN0IGZ1bmN0aW9u
IGlzIGV4ZWN1dGVkLgordm9pZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6aW5pdCgpCit7Cit9
CisKKy8vIFRoaXMgd2lsbCBiZSBjYWxsZWQgYWZ0ZXIgZXZlcnkgdGVzdCBmdW5jdGlvbi4KK3Zv
aWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNsZWFudXAoKQoreworfQorCit2b2lkIHRzdF9R
RGVjbGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QoKQoreworICAgIGlmICghUURp
cihURVNUU19TT1VSQ0VfRElSKS5leGlzdHMoKSkKKyAgICAgICAgUVNLSVAoUVN0cmluZygiVGhp
cyB0ZXN0IHJlcXVpcmVzIGFjY2VzcyB0byByZXNvdXJjZXMgZm91bmQgaW4gJyUxJyIpLmFyZyhU
RVNUU19TT1VSQ0VfRElSKS50b0xhdGluMSgpLmNvbnN0RGF0YSgpLCBTa2lwQWxsKTsKKworICAg
IFFEZWNsYXJhdGl2ZUVuZ2luZSBlbmdpbmU7CisgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50IGNv
bXBvbmVudCgmZW5naW5lLCBRVXJsOjpmcm9tTG9jYWxGaWxlKFRFU1RTX1NPVVJDRV9ESVIiL3Fk
ZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbCIpKTsKKyAgICBjaGVj
a05vRXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3YgPSBjb21wb25lbnQuY3JlYXRl
KCk7CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3YtPnByb3BlcnR5KCJwcmVmV2lk
dGgiKS50b0ludCgpLCA2MDApOworICAgIGRlbGV0ZSB3djsKK30KKwordm9pZCB0c3RfUURlY2xh
cmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0VGVzdCgpCit7CisgICAgaWYgKCFRRGlyKFRF
U1RTX1NPVVJDRV9ESVIpLmV4aXN0cygpKQorICAgICAgICBRU0tJUChRU3RyaW5nKCJUaGlzIHRl
c3QgcmVxdWlyZXMgYWNjZXNzIHRvIHJlc291cmNlcyBmb3VuZCBpbiAnJTEnIikuYXJnKFRFU1RT
X1NPVVJDRV9ESVIpLnRvTGF0aW4xKCkuY29uc3REYXRhKCksIFNraXBBbGwpOworCisgICAgUURl
Y2xhcmF0aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQgY29tcG9u
ZW50KCZlbmdpbmUsIFFVcmw6OmZyb21Mb2NhbEZpbGUoVEVTVFNfU09VUkNFX0RJUiIvcWRlY2xh
cmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sIikpOworICAgIGNoZWNrTm9F
cnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNvbXBvbmVudC5jcmVhdGUoKTsK
KyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJvcGVydHkoInByZWZIZWlnaHQi
KS50b0ludCgpLCA1MDApOworICAgIGRlbGV0ZSB3djsKK30KKwordm9pZCB0c3RfUURlY2xhcmF0
aXZlV2ViVmlldzo6cHJlZmVycmVkV2lkdGhEZWZhdWx0VGVzdCgpCit7CisgICAgaWYgKCFRRGly
KFRFU1RTX1NPVVJDRV9ESVIpLmV4aXN0cygpKQorICAgICAgICBRU0tJUChRU3RyaW5nKCJUaGlz
IHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHJlc291cmNlcyBmb3VuZCBpbiAnJTEnIikuYXJnKFRF
U1RTX1NPVVJDRV9ESVIpLnRvTGF0aW4xKCkuY29uc3REYXRhKCksIFNraXBBbGwpOworCisgICAg
UURlY2xhcmF0aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQgY29t
cG9uZW50KCZlbmdpbmUsIFFVcmw6OmZyb21Mb2NhbEZpbGUoVEVTVFNfU09VUkNFX0RJUiIvcWRl
Y2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFtbCIpKTsKKyAg
ICBjaGVja05vRXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3YgPSBjb21wb25lbnQu
Y3JlYXRlKCk7CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3YtPnByb3BlcnR5KCJw
cmVmV2lkdGgiKS50b0ludCgpLCAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisKK3ZvaWQgdHN0X1FE
ZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodERlZmF1bHRUZXN0KCkKK3sKKyAgICBR
RGVjbGFyYXRpdmVFbmdpbmUgZW5naW5lOworICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCBjb21w
b25lbnQoJmVuZ2luZSwgUVVybDo6ZnJvbUxvY2FsRmlsZShURVNUU19TT1VSQ0VfRElSIi9xZGVj
bGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRlZmF1bHQucW1sIikpOworICAg
IGNoZWNrTm9FcnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNvbXBvbmVudC5j
cmVhdGUoKTsKKyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJvcGVydHkoInBy
ZWZIZWlnaHQiKS50b0ludCgpLCAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisKK3ZvaWQgdHN0X1FE
ZWNsYXJhdGl2ZVdlYlZpZXc6OmNoZWNrTm9FcnJvcnMoY29uc3QgUURlY2xhcmF0aXZlQ29tcG9u
ZW50JiBjb21wb25lbnQpCit7CisgICAgLy8gV2FpdCB1bnRpbCB0aGUgY29tcG9uZW50IGlzIHJl
YWR5CisgICAgUVRSWV9WRVJJRlkoY29tcG9uZW50LmlzUmVhZHkoKSB8fCBjb21wb25lbnQuaXNF
cnJvcigpKTsKKworICAgIGlmIChjb21wb25lbnQuaXNFcnJvcigpKSB7CisgICAgICAgIFFMaXN0
PFFEZWNsYXJhdGl2ZUVycm9yPiBlcnJvcnMgPSBjb21wb25lbnQuZXJyb3JzKCk7CisgICAgICAg
IGZvciAoaW50IGlpID0gMDsgaWkgPCBlcnJvcnMuY291bnQoKTsgKytpaSkgeworICAgICAgICAg
ICAgY29uc3QgUURlY2xhcmF0aXZlRXJyb3IgJmVycm9yID0gZXJyb3JzLmF0KGlpKTsKKyAgICAg
ICAgICAgIFFCeXRlQXJyYXkgZXJyb3JTdHIgPSBRQnl0ZUFycmF5OjpudW1iZXIoZXJyb3IubGlu
ZSgpKSArICI6IiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUUJ5dGVBcnJh
eTo6bnVtYmVyKGVycm9yLmNvbHVtbigpKSArICI6IiArCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZXJyb3IuZGVzY3JpcHRpb24oKS50b1V0ZjgoKTsKKyAgICAgICAgICAgIHFX
YXJuaW5nKCkgPDwgZXJyb3JTdHI7CisgICAgICAgIH0KKyAgICB9CisgICAgUVZFUklGWSghY29t
cG9uZW50LmlzRXJyb3IoKSk7Cit9CisKKworUVRFU1RfTUFJTih0c3RfUURlY2xhcmF0aXZlV2Vi
VmlldykKKyNpbmNsdWRlICJ0c3RfcWRlY2xhcmF0aXZld2Vidmlldy5tb2MiCisKK1FUX0VORF9O
QU1FU1BBQ0UKSW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmll
dy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
cXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sCShy
ZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3
L3Jlc291cmNlcy93ZWJ2aWV3dGVzdC5xbWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjYgQEAK
K2ltcG9ydCBRdCA0LjcKK2ltcG9ydCBRdFdlYktpdCAxLjAKKworRmxpY2thYmxlIHsKKyAgICBp
ZDogZmxpY2sKKyAgICB3aWR0aDogNjQwCisgICAgaGVpZ2h0OiA0MDAKKyAgICBjbGlwOiB0cnVl
CisgICAgY29udGVudFdpZHRoOiBteXdlYi53aWR0aDsgY29udGVudEhlaWdodDogbXl3ZWIuaGVp
Z2h0CisgICAgcHJvcGVydHkgYWxpYXMgbXl1cmw6IG15d2ViLnVybAorICAgIHByb3BlcnR5IGFs
aWFzIHByZWZIZWlnaHQ6IG15d2ViLnByZWZlcnJlZEhlaWdodAorICAgIHByb3BlcnR5IGFsaWFz
IHByZWZXaWR0aDogbXl3ZWIucHJlZmVycmVkV2lkdGgKKworCisgICAgV2ViVmlldyB7CisgICAg
ICAgIGlkOiBteXdlYgorCXVybDogImh0dHA6Ly9xdC5ub2tpYS5jb20iCisgICAgICAgIHNtb290
aDogZmFsc2UKKyAgICAgICAgc2NhbGU6IDEuMAorICAgICAgICBwcmVmZXJyZWRIZWlnaHQ6IDUw
MAorICAgICAgICBwcmVmZXJyZWRXaWR0aDogNjAwCisgICAgICAgIHByZXNzR3JhYlRpbWU6IDEw
MDAKKyAgICAgICAgZm9jdXM6IHRydWUKKyAgICB9CisKK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQv
cXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0
LnFtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdl
YnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwJKHJldmlzaW9uIDApCisrKyBT
b3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZp
ZXd0ZXN0ZGVmYXVsdC5xbWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQgQEAKK2ltcG9ydCBR
dCA0LjcKK2ltcG9ydCBRdFdlYktpdCAxLjAKKworRmxpY2thYmxlIHsKKyAgICBpZDogZmxpY2sK
KyAgICB3aWR0aDogNjQwCisgICAgaGVpZ2h0OiA0MDAKKyAgICBjbGlwOiB0cnVlCisgICAgY29u
dGVudFdpZHRoOiBteXdlYi53aWR0aDsgY29udGVudEhlaWdodDogbXl3ZWIuaGVpZ2h0CisgICAg
cHJvcGVydHkgYWxpYXMgbXl1cmw6IG15d2ViLnVybAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZI
ZWlnaHQ6IG15d2ViLnByZWZlcnJlZEhlaWdodAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZXaWR0
aDogbXl3ZWIucHJlZmVycmVkV2lkdGgKKworCisgICAgV2ViVmlldyB7CisgICAgICAgIGlkOiBt
eXdlYgorCXVybDogImh0dHA6Ly9xdC5ub2tpYS5jb20iCisgICAgICAgIHNtb290aDogZmFsc2UK
KyAgICAgICAgc2NhbGU6IDEuMAorICAgICAgICBwcmVzc0dyYWJUaW1lOiAxMDAwCisgICAgICAg
IGZvY3VzOiB0cnVlCisgICAgfQorCit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83233</attachid>
            <date>2011-02-21 16:03:05 -0800</date>
            <delta_ts>2011-02-22 08:47:52 -0800</delta_ts>
            <desc>Update checker.py to fix the style-checker issue</desc>
            <filename>50222c.patch</filename>
            <type>text/plain</type>
            <size>11808</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTI1OSkKKysrIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMDItMjEgIEdv
cGFsIFJhZ2hhdmFuICA8Z29wYWwuMS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNp
ZGUgYSBGbGlja2FibGUgc2hvd3MgY2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMgorCisgICAgICAg
IFdpdGggdGhpcyBwYXRjaCB5b3Ugd2lsbCBub3Qgc2VlIGNoZWNrZXJib2FyZCBpbiB3ZWJ2aWV3
IGV2ZW4gaWYgcHJlZmVycmVkV2lkdGgKKyAgICAgICAgYW5kIHByZWZlcnJlZEhlaWdodCBhcmUg
bWlzc2luZy4KKworICAgICAgICAqIGRlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3Bw
OgorICAgICAgICAoUURlY2xhcmF0aXZlV2ViVmlldzo6aW5pdCk6CisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2VidmlldzogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnBybzogQWRkZWQuCisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL3Fk
ZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbDogQWRkZWQuCisgICAg
ICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZh
dWx0LnFtbDogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3Rf
cWRlY2xhcmF0aXZld2Vidmlldy5jcHA6IEFkZGVkLgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2
ZVdlYlZpZXc6OmluaXRUZXN0Q2FzZSk6CisgICAgICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmll
dzo6Y2xlYW51cFRlc3RDYXNlKToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3Ojpp
bml0KToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjbGVhbnVwKToKKyAgICAg
ICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QpOgorICAgICAg
ICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodFRlc3QpOgorICAgICAg
ICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QpOgor
ICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodERlZmF1bHRU
ZXN0KToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjaGVja05vRXJyb3JzKToK
KyAgICAgICAgKiB0ZXN0cy90ZXN0cy5wcmk6CisgICAgICAgICogdGVzdHMvdGVzdHMucHJvOgor
CiAyMDExLTAyLTE3ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IEtlbnQgVGFtdXJhLgpJbmRleDogU291cmNlL1dlYktpdC9xdC9kZWNsYXJh
dGl2ZS9xZGVjbGFyYXRpdmV3ZWJ2aWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L3F0L2RlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCShyZXZpc2lvbiA3OTAxMykK
KysrIFNvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI3NSw2ICsyNzUsMTAgQEAgdm9pZCBRRGVjbGFyYXRpdmVXZWJW
aWV3Ojppbml0KCkKICAgICBkLT52aWV3LT5zZXRGb2N1cygpOwogICAgIFFXZWJQYWdlKiB3cCA9
IG5ldyBRRGVjbGFyYXRpdmVXZWJQYWdlKHRoaXMpOwogICAgIHNldFBhZ2Uod3ApOworICAgIGlm
ICghcHJlZmVycmVkV2lkdGgoKSkKKyAgICAgICAgc2V0UHJlZmVycmVkV2lkdGgoZC0+dmlldy0+
cHJlZmVycmVkV2lkdGgoKSk7CisgICAgaWYgKCFwcmVmZXJyZWRIZWlnaHQoKSkKKyAgICAgICAg
c2V0UHJlZmVycmVkSGVpZ2h0KGQtPnZpZXctPnByZWZlcnJlZEhlaWdodCgpKTsKICAgICBjb25u
ZWN0KGQtPnZpZXcsIFNJR05BTChnZW9tZXRyeUNoYW5nZWQoKSksIHRoaXMsIFNMT1QodXBkYXRl
RGVjbGFyYXRpdmVXZWJWaWV3U2l6ZSgpKSk7CiAgICAgY29ubmVjdChkLT52aWV3LCBTSUdOQUwo
ZG91YmxlQ2xpY2soaW50LCBpbnQpKSwgdGhpcywgU0lHTkFMKGRvdWJsZUNsaWNrKGludCwgaW50
KSkpOwogICAgIGNvbm5lY3QoZC0+dmlldywgU0lHTkFMKHNjYWxlQ2hhbmdlZCgpKSwgdGhpcywg
U0lHTkFMKGNvbnRlbnRzU2NhbGVDaGFuZ2VkKCkpKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQv
dGVzdHMvdGVzdHMucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvdGVz
dHMucHJpCShyZXZpc2lvbiA3OTAxMykKKysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvdGVzdHMu
cHJpCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBAIElOQ0xVREVQQVRIICs9IFwKICAg
ICAkJFBXRC8uLi9BcGkKIAogaW5jbHVkZSguLi8uLi8uLi9XZWJLaXQucHJpKQotUVQgKz0gdGVz
dGxpYiBuZXR3b3JrCitRVCArPSB0ZXN0bGliIG5ldHdvcmsgZGVjbGFyYXRpdmUKIAogUU1BS0Vf
UlBBVEhESVIgPSAkJE9VVFBVVF9ESVIvbGliICQkUU1BS0VfUlBBVEhESVIKIApJbmRleDogU291
cmNlL1dlYktpdC9xdC90ZXN0cy90ZXN0cy5wcm8KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9xdC90ZXN0cy90ZXN0cy5wcm8JKHJldmlzaW9uIDc5MDEzKQorKysgU291cmNlL1dlYktpdC9x
dC90ZXN0cy90ZXN0cy5wcm8JKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACiAKIFRFTVBM
QVRFID0gc3ViZGlycwotU1VCRElSUyA9IHF3ZWJmcmFtZSBxd2VicGFnZSBxd2ViZWxlbWVudCBx
Z3JhcGhpY3N3ZWJ2aWV3IHF3ZWJoaXN0b3J5aW50ZXJmYWNlIHF3ZWJ2aWV3IHF3ZWJoaXN0b3J5
IHF3ZWJpbnNwZWN0b3IgaHlicmlkUGl4bWFwCitTVUJESVJTID0gcXdlYmZyYW1lIHF3ZWJwYWdl
IHF3ZWJlbGVtZW50IHFncmFwaGljc3dlYnZpZXcgcXdlYmhpc3RvcnlpbnRlcmZhY2UgcXdlYnZp
ZXcgcXdlYmhpc3RvcnkgcWRlY2xhcmF0aXZld2VidmlldyBxd2ViaW5zcGVjdG9yIGh5YnJpZFBp
eG1hcAogU1VCRElSUyArPSBiZW5jaG1hcmtzL3BhaW50aW5nIGJlbmNobWFya3MvbG9hZGluZwpJ
bmRleDogU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNsYXJh
dGl2ZXdlYnZpZXcucHJvCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRl
Y2xhcmF0aXZld2Vidmlldy9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnBybwkocmV2aXNpb24gMCkKKysr
IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9xZGVjbGFyYXRpdmV3
ZWJ2aWV3LnBybwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitpc0VtcHR5KE9VVFBVVF9E
SVIpOiBPVVRQVVRfRElSID0gLi4vLi4vLi4vLi4KK2luY2x1ZGUoLi4vdGVzdHMucHJpKQorZXhp
c3RzKCQke1RBUkdFVH0ucXJjKTpSRVNPVVJDRVMgKz0gJCR7VEFSR0VUfS5xcmMKK0lOQ0xVREVQ
QVRIICs9IFwKKyAgICAkJFBXRC8uLi8uLi9kZWNsYXJhdGl2ZQorCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdlYnZpZXcu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vi
dmlldy90c3RfcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDApCisrKyBTb3VyY2Uv
V2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdlYnZp
ZXcuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE0MyBAQAorI2luY2x1ZGUgPGNvbmZpZy5o
PgorCisjaW5jbHVkZSA8UURlYnVnPgorI2luY2x1ZGUgPFFEZWNsYXJhdGl2ZVByb3BlcnR5Pgor
I2luY2x1ZGUgPFFEZWNsYXJhdGl2ZVZpZXc+CisjaW5jbHVkZSA8UURpcj4KKyNpbmNsdWRlIDxR
dERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWNvbXBvbmVudC5oPgorI2luY2x1ZGUgPFF0RGVjbGFy
YXRpdmUvcWRlY2xhcmF0aXZlZW5naW5lLmg+CisjaW5jbHVkZSA8cXRlc3QuaD4KKworUVRfQkVH
SU5fTkFNRVNQQUNFCisKK2NsYXNzIHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3IDogcHVibGljIFFP
YmplY3QgeworICAgIFFfT0JKRUNUCisKK3B1YmxpYyBzbG90czoKKyAgICB2b2lkIGluaXRUZXN0
Q2FzZSgpOworICAgIHZvaWQgY2xlYW51cFRlc3RDYXNlKCk7CisgICAgdm9pZCBpbml0KCk7Cisg
ICAgdm9pZCBjbGVhbnVwKCk7CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBwcmVmZXJyZWRX
aWR0aFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZEhlaWdodFRlc3QoKTsKKyAgICB2b2lkIHBy
ZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZEhlaWdodERlZmF1
bHRUZXN0KCk7CisKK3ByaXZhdGU6CisgICAgdm9pZCBjaGVja05vRXJyb3JzKGNvbnN0IFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCYpOworfTsKKworLy8gV2lsbCB0cnkgdG8gd2FpdCBmb3IgdGhlIGNv
bmRpdGlvbiB3aGlsZSBhbGxvd2luZyBldmVudCBwcm9jZXNzaW5nCisjZGVmaW5lIFFUUllfVkVS
SUZZKF9fZXhwcikgXAorICAgIGRvIHsgXAorICAgICAgICBjb25zdCBpbnQgX19zdGVwID0gNTA7
IFwKKyAgICAgICAgY29uc3QgaW50IF9fdGltZW91dCA9IDkwMDAwOyBcCisgICAgICAgIGlmICgh
KF9fZXhwcikpIHsgXAorICAgICAgICAgICAgUVRlc3Q6OnFXYWl0KDApOyBcCisgICAgICAgIH0g
XAorICAgICAgICBmb3IgKGludCBfX2kgPSAwOyBfX2kgPCBfX3RpbWVvdXQgJiYgIShfX2V4cHIp
OyBfX2kgKz0gX19zdGVwKSB7IFwKKyAgICAgICAgICAgIFFUZXN0OjpxV2FpdChfX3N0ZXApOyBc
CisgICAgICAgIH0gXAorICAgICAgICBRVkVSSUZZKF9fZXhwcik7IFwKKyAgICB9IHdoaWxlICgw
KQorCisvLyBUaGlzIHdpbGwgYmUgY2FsbGVkIGJlZm9yZSB0aGUgZmlyc3QgdGVzdCBmdW5jdGlv
biBpcyBleGVjdXRlZC4KKy8vIEl0IGlzIG9ubHkgY2FsbGVkIG9uY2UuCit2b2lkIHRzdF9RRGVj
bGFyYXRpdmVXZWJWaWV3Ojppbml0VGVzdENhc2UoKQoreworfQorCisvLyBUaGlzIHdpbGwgYmUg
Y2FsbGVkIGFmdGVyIHRoZSBsYXN0IHRlc3QgZnVuY3Rpb24gaXMgZXhlY3V0ZWQuCisvLyBJdCBp
cyBvbmx5IGNhbGxlZCBvbmNlLgordm9pZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6Y2xlYW51
cFRlc3RDYXNlKCkKK3sKK30KKworLy8gVGhpcyB3aWxsIGJlIGNhbGxlZCBiZWZvcmUgZWFjaCB0
ZXN0IGZ1bmN0aW9uIGlzIGV4ZWN1dGVkLgordm9pZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6
aW5pdCgpCit7Cit9CisKKy8vIFRoaXMgd2lsbCBiZSBjYWxsZWQgYWZ0ZXIgZXZlcnkgdGVzdCBm
dW5jdGlvbi4KK3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNsZWFudXAoKQoreworfQor
Cit2b2lkIHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QoKQorewor
ICAgIGlmICghUURpcihURVNUU19TT1VSQ0VfRElSKS5leGlzdHMoKSkKKyAgICAgICAgUVNLSVAo
UVN0cmluZygiVGhpcyB0ZXN0IHJlcXVpcmVzIGFjY2VzcyB0byByZXNvdXJjZXMgZm91bmQgaW4g
JyUxJyIpLmFyZyhURVNUU19TT1VSQ0VfRElSKS50b0xhdGluMSgpLmNvbnN0RGF0YSgpLCBTa2lw
QWxsKTsKKworICAgIFFEZWNsYXJhdGl2ZUVuZ2luZSBlbmdpbmU7CisgICAgUURlY2xhcmF0aXZl
Q29tcG9uZW50IGNvbXBvbmVudCgmZW5naW5lLCBRVXJsOjpmcm9tTG9jYWxGaWxlKFRFU1RTX1NP
VVJDRV9ESVIiL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbCIp
KTsKKyAgICBjaGVja05vRXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3YgPSBjb21w
b25lbnQuY3JlYXRlKCk7CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3YtPnByb3Bl
cnR5KCJwcmVmV2lkdGgiKS50b0ludCgpLCA2MDApOworICAgIGRlbGV0ZSB3djsKK30KKwordm9p
ZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0VGVzdCgpCit7CisgICAg
aWYgKCFRRGlyKFRFU1RTX1NPVVJDRV9ESVIpLmV4aXN0cygpKQorICAgICAgICBRU0tJUChRU3Ry
aW5nKCJUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHJlc291cmNlcyBmb3VuZCBpbiAnJTEn
IikuYXJnKFRFU1RTX1NPVVJDRV9ESVIpLnRvTGF0aW4xKCkuY29uc3REYXRhKCksIFNraXBBbGwp
OworCisgICAgUURlY2xhcmF0aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVDb21w
b25lbnQgY29tcG9uZW50KCZlbmdpbmUsIFFVcmw6OmZyb21Mb2NhbEZpbGUoVEVTVFNfU09VUkNF
X0RJUiIvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sIikpOwor
ICAgIGNoZWNrTm9FcnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNvbXBvbmVu
dC5jcmVhdGUoKTsKKyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJvcGVydHko
InByZWZIZWlnaHQiKS50b0ludCgpLCA1MDApOworICAgIGRlbGV0ZSB3djsKK30KKwordm9pZCB0
c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkV2lkdGhEZWZhdWx0VGVzdCgpCit7Cisg
ICAgaWYgKCFRRGlyKFRFU1RTX1NPVVJDRV9ESVIpLmV4aXN0cygpKQorICAgICAgICBRU0tJUChR
U3RyaW5nKCJUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHJlc291cmNlcyBmb3VuZCBpbiAn
JTEnIikuYXJnKFRFU1RTX1NPVVJDRV9ESVIpLnRvTGF0aW4xKCkuY29uc3REYXRhKCksIFNraXBB
bGwpOworCisgICAgUURlY2xhcmF0aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVD
b21wb25lbnQgY29tcG9uZW50KCZlbmdpbmUsIFFVcmw6OmZyb21Mb2NhbEZpbGUoVEVTVFNfU09V
UkNFX0RJUiIvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0
LnFtbCIpKTsKKyAgICBjaGVja05vRXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3Yg
PSBjb21wb25lbnQuY3JlYXRlKCk7CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3Yt
PnByb3BlcnR5KCJwcmVmV2lkdGgiKS50b0ludCgpLCAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisK
K3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodERlZmF1bHRUZXN0
KCkKK3sKKyAgICBRRGVjbGFyYXRpdmVFbmdpbmUgZW5naW5lOworICAgIFFEZWNsYXJhdGl2ZUNv
bXBvbmVudCBjb21wb25lbnQoJmVuZ2luZSwgUVVybDo6ZnJvbUxvY2FsRmlsZShURVNUU19TT1VS
Q0VfRElSIi9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRlZmF1bHQu
cW1sIikpOworICAgIGNoZWNrTm9FcnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9
IGNvbXBvbmVudC5jcmVhdGUoKTsKKyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+
cHJvcGVydHkoInByZWZIZWlnaHQiKS50b0ludCgpLCAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisK
K3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNoZWNrTm9FcnJvcnMoY29uc3QgUURlY2xh
cmF0aXZlQ29tcG9uZW50JiBjb21wb25lbnQpCit7CisgICAgLy8gV2FpdCB1bnRpbCB0aGUgY29t
cG9uZW50IGlzIHJlYWR5CisgICAgUVRSWV9WRVJJRlkoY29tcG9uZW50LmlzUmVhZHkoKSB8fCBj
b21wb25lbnQuaXNFcnJvcigpKTsKKworICAgIGlmIChjb21wb25lbnQuaXNFcnJvcigpKSB7Cisg
ICAgICAgIFFMaXN0PFFEZWNsYXJhdGl2ZUVycm9yPiBlcnJvcnMgPSBjb21wb25lbnQuZXJyb3Jz
KCk7CisgICAgICAgIGZvciAoaW50IGlpID0gMDsgaWkgPCBlcnJvcnMuY291bnQoKTsgKytpaSkg
eworICAgICAgICAgICAgY29uc3QgUURlY2xhcmF0aXZlRXJyb3IgJmVycm9yID0gZXJyb3JzLmF0
KGlpKTsKKyAgICAgICAgICAgIFFCeXRlQXJyYXkgZXJyb3JTdHIgPSBRQnl0ZUFycmF5OjpudW1i
ZXIoZXJyb3IubGluZSgpKSArICI6IiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgUUJ5dGVBcnJheTo6bnVtYmVyKGVycm9yLmNvbHVtbigpKSArICI6IiArCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IuZGVzY3JpcHRpb24oKS50b1V0ZjgoKTsKKyAg
ICAgICAgICAgIHFXYXJuaW5nKCkgPDwgZXJyb3JTdHI7CisgICAgICAgIH0KKyAgICB9CisgICAg
UVZFUklGWSghY29tcG9uZW50LmlzRXJyb3IoKSk7Cit9CisKKworUVRFU1RfTUFJTih0c3RfUURl
Y2xhcmF0aXZlV2ViVmlldykKKyNpbmNsdWRlICJ0c3RfcWRlY2xhcmF0aXZld2Vidmlldy5tb2Mi
CisKK1FUX0VORF9OQU1FU1BBQ0UKSW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xh
cmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmll
d3Rlc3QucW1sCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFy
YXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdC5xbWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMjYgQEAKK2ltcG9ydCBRdCA0LjcKK2ltcG9ydCBRdFdlYktpdCAxLjAKKworRmxpY2th
YmxlIHsKKyAgICBpZDogZmxpY2sKKyAgICB3aWR0aDogNjQwCisgICAgaGVpZ2h0OiA0MDAKKyAg
ICBjbGlwOiB0cnVlCisgICAgY29udGVudFdpZHRoOiBteXdlYi53aWR0aDsgY29udGVudEhlaWdo
dDogbXl3ZWIuaGVpZ2h0CisgICAgcHJvcGVydHkgYWxpYXMgbXl1cmw6IG15d2ViLnVybAorICAg
IHByb3BlcnR5IGFsaWFzIHByZWZIZWlnaHQ6IG15d2ViLnByZWZlcnJlZEhlaWdodAorICAgIHBy
b3BlcnR5IGFsaWFzIHByZWZXaWR0aDogbXl3ZWIucHJlZmVycmVkV2lkdGgKKworCisgICAgV2Vi
VmlldyB7CisgICAgICAgIGlkOiBteXdlYgorCXVybDogImh0dHA6Ly9xdC5ub2tpYS5jb20iCisg
ICAgICAgIHNtb290aDogZmFsc2UKKyAgICAgICAgc2NhbGU6IDEuMAorICAgICAgICBwcmVmZXJy
ZWRIZWlnaHQ6IDUwMAorICAgICAgICBwcmVmZXJyZWRXaWR0aDogNjAwCisgICAgICAgIHByZXNz
R3JhYlRpbWU6IDEwMDAKKyAgICAgICAgZm9jdXM6IHRydWUKKyAgICB9CisKK30KSW5kZXg6IFNv
dXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmll
d3Rlc3RkZWZhdWx0LnFtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3Fk
ZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwJKHJldmlz
aW9uIDApCisrKyBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVz
b3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQg
QEAKK2ltcG9ydCBRdCA0LjcKK2ltcG9ydCBRdFdlYktpdCAxLjAKKworRmxpY2thYmxlIHsKKyAg
ICBpZDogZmxpY2sKKyAgICB3aWR0aDogNjQwCisgICAgaGVpZ2h0OiA0MDAKKyAgICBjbGlwOiB0
cnVlCisgICAgY29udGVudFdpZHRoOiBteXdlYi53aWR0aDsgY29udGVudEhlaWdodDogbXl3ZWIu
aGVpZ2h0CisgICAgcHJvcGVydHkgYWxpYXMgbXl1cmw6IG15d2ViLnVybAorICAgIHByb3BlcnR5
IGFsaWFzIHByZWZIZWlnaHQ6IG15d2ViLnByZWZlcnJlZEhlaWdodAorICAgIHByb3BlcnR5IGFs
aWFzIHByZWZXaWR0aDogbXl3ZWIucHJlZmVycmVkV2lkdGgKKworCisgICAgV2ViVmlldyB7Cisg
ICAgICAgIGlkOiBteXdlYgorCXVybDogImh0dHA6Ly9xdC5ub2tpYS5jb20iCisgICAgICAgIHNt
b290aDogZmFsc2UKKyAgICAgICAgc2NhbGU6IDEuMAorICAgICAgICBwcmVzc0dyYWJUaW1lOiAx
MDAwCisgICAgICAgIGZvY3VzOiB0cnVlCisgICAgfQorCit9CkluZGV4OiBUb29scy9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTI1OSkKKysrIFRv
b2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDExIEBACisyMDExLTAyLTIx
ICBHb3BhbCBSYWdoYXZhbiAgPGdvcGFsLjEucmFnaGF2YW5Abm9raWEuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGNoZWNrLXdlYmtpdC1zdHls
ZSB3YXMgY29tcGxhaW5pbmcgYWJvdXQgbWlzc2luZyBjb25maWcuaCBpbiBXZWJLaXQvcXQvdGVz
dC9xZGVjbGFyYXRpdmV3ZWJ2aWV3CisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3N0eWxl
L2NoZWNrZXIucHk6CisKIDIwMTEtMDItMjEgIERpcmsgUHJhbmtlICA8ZHByYW5rZUBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgpJbmRleDogVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9jaGVja2VyLnB5Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlci5weQkocmV2aXNpb24gNzkwMTMpCisrKyBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL2NoZWNrZXIucHkJKHdvcmtpbmcgY29weSkKQEAg
LTEyMyw3ICsxMjMsOCBAQCBfUEFUSF9SVUxFU19TUEVDSUZJRVIgPSBbCiAgICAgICAjIFRoZSBB
UEkgdGVzdCBoYXJuZXNzZXMgaGF2ZSBubyBjb25maWcuaCBhbmQgdXNlIGZ1bm55IG1hY3JvcyBs
aWtlCiAgICAgICAjIFRFU1RfQ0xBU1NfTkFNRS4KICAgICAgICJUb29scy9XZWJLaXRBUElUZXN0
LyIsCi0gICAgICAiVG9vbHMvVGVzdFdlYktpdEFQSS8iXSwKKyAgICAgICJUb29scy9UZXN0V2Vi
S2l0QVBJLyIsCisgICAgICAiU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2
aWV3Il0sCiAgICAgIFsiLWJ1aWxkL2luY2x1ZGUiLAogICAgICAgIi1yZWFkYWJpbGl0eS9uYW1p
bmciXSksCiAgICAgKFsjIFRoZSBFRkwgQVBJcyB1c2UgRUZMIG5hbWluZyBzdHlsZSwgd2hpY2gg
aW5jbHVkZXMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83323</attachid>
            <date>2011-02-22 08:47:52 -0800</date>
            <delta_ts>2011-02-23 04:18:01 -0800</delta_ts>
            <desc>Fixed build issues</desc>
            <filename>50222d.patch</filename>
            <type>text/plain</type>
            <size>11821</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTMyNykKKysrIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTEtMDItMjIgIEdv
cGFsIFJhZ2hhdmFuICA8Z29wYWwuMS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNp
ZGUgYSBGbGlja2FibGUgc2hvd3MgY2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMi4gV2l0aCB0aGlz
IHBhdGNoIHlvdSB3aWxsCisgICAgICAgIG5vdCBzZWUgY2hlY2tlcmJvYXJkIGluIHdlYnZpZXcg
ZXZlbiBpZiBwcmVmZXJyZWRXaWR0aCBhbmQgCisgICAgICAgIHByZWZlcnJlZEhlaWdodCBhcmUg
bWlzc2luZy4KKworICAgICAgICAqIGRlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3Bw
OgorICAgICAgICAoUURlY2xhcmF0aXZlV2ViVmlldzo6aW5pdCk6CisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2VidmlldzogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnBybzogQWRkZWQuCisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL3Fk
ZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbDogQWRkZWQuCisgICAg
ICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZh
dWx0LnFtbDogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3Rf
cWRlY2xhcmF0aXZld2Vidmlldy5jcHA6IEFkZGVkLgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2
ZVdlYlZpZXc6OmluaXRUZXN0Q2FzZSk6CisgICAgICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmll
dzo6Y2xlYW51cFRlc3RDYXNlKToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3Ojpp
bml0KToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjbGVhbnVwKToKKyAgICAg
ICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QpOgorICAgICAg
ICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodFRlc3QpOgorICAgICAg
ICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QpOgor
ICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodERlZmF1bHRU
ZXN0KToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjaGVja05vRXJyb3JzKToK
KyAgICAgICAgKiB0ZXN0cy90ZXN0cy5wcmk6CisgICAgICAgICogdGVzdHMvdGVzdHMucHJvOgor
CiAyMDExLTAyLTIyICBBbmRyYXMgQmVjc2kgIDxhYmVjc2lAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBMYXN6bG8gR29tYm9zLgpJbmRleDogU291cmNlL1dlYktpdC9xdC9kZWNs
YXJhdGl2ZS9xZGVjbGFyYXRpdmV3ZWJ2aWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L3F0L2RlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCShyZXZpc2lvbiA3OTAx
MykKKysrIFNvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI3NSw2ICsyNzUsMTAgQEAgdm9pZCBRRGVjbGFyYXRpdmVX
ZWJWaWV3Ojppbml0KCkKICAgICBkLT52aWV3LT5zZXRGb2N1cygpOwogICAgIFFXZWJQYWdlKiB3
cCA9IG5ldyBRRGVjbGFyYXRpdmVXZWJQYWdlKHRoaXMpOwogICAgIHNldFBhZ2Uod3ApOworICAg
IGlmICghcHJlZmVycmVkV2lkdGgoKSkKKyAgICAgICAgc2V0UHJlZmVycmVkV2lkdGgoZC0+dmll
dy0+cHJlZmVycmVkV2lkdGgoKSk7CisgICAgaWYgKCFwcmVmZXJyZWRIZWlnaHQoKSkKKyAgICAg
ICAgc2V0UHJlZmVycmVkSGVpZ2h0KGQtPnZpZXctPnByZWZlcnJlZEhlaWdodCgpKTsKICAgICBj
b25uZWN0KGQtPnZpZXcsIFNJR05BTChnZW9tZXRyeUNoYW5nZWQoKSksIHRoaXMsIFNMT1QodXBk
YXRlRGVjbGFyYXRpdmVXZWJWaWV3U2l6ZSgpKSk7CiAgICAgY29ubmVjdChkLT52aWV3LCBTSUdO
QUwoZG91YmxlQ2xpY2soaW50LCBpbnQpKSwgdGhpcywgU0lHTkFMKGRvdWJsZUNsaWNrKGludCwg
aW50KSkpOwogICAgIGNvbm5lY3QoZC0+dmlldywgU0lHTkFMKHNjYWxlQ2hhbmdlZCgpKSwgdGhp
cywgU0lHTkFMKGNvbnRlbnRzU2NhbGVDaGFuZ2VkKCkpKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
cXQvdGVzdHMvdGVzdHMucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMv
dGVzdHMucHJpCShyZXZpc2lvbiA3OTAxMykKKysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvdGVz
dHMucHJpCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBAIElOQ0xVREVQQVRIICs9IFwK
ICAgICAkJFBXRC8uLi9BcGkKIAogaW5jbHVkZSguLi8uLi8uLi9XZWJLaXQucHJpKQotUVQgKz0g
dGVzdGxpYiBuZXR3b3JrCitRVCArPSB0ZXN0bGliIG5ldHdvcmsgZGVjbGFyYXRpdmUKIAogUU1B
S0VfUlBBVEhESVIgPSAkJE9VVFBVVF9ESVIvbGliICQkUU1BS0VfUlBBVEhESVIKIApJbmRleDog
U291cmNlL1dlYktpdC9xdC90ZXN0cy90ZXN0cy5wcm8KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9xdC90ZXN0cy90ZXN0cy5wcm8JKHJldmlzaW9uIDc5MDEzKQorKysgU291cmNlL1dlYktp
dC9xdC90ZXN0cy90ZXN0cy5wcm8JKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACiAKIFRF
TVBMQVRFID0gc3ViZGlycwotU1VCRElSUyA9IHF3ZWJmcmFtZSBxd2VicGFnZSBxd2ViZWxlbWVu
dCBxZ3JhcGhpY3N3ZWJ2aWV3IHF3ZWJoaXN0b3J5aW50ZXJmYWNlIHF3ZWJ2aWV3IHF3ZWJoaXN0
b3J5IHF3ZWJpbnNwZWN0b3IgaHlicmlkUGl4bWFwCitTVUJESVJTID0gcXdlYmZyYW1lIHF3ZWJw
YWdlIHF3ZWJlbGVtZW50IHFncmFwaGljc3dlYnZpZXcgcXdlYmhpc3RvcnlpbnRlcmZhY2UgcXdl
YnZpZXcgcXdlYmhpc3RvcnkgcWRlY2xhcmF0aXZld2VidmlldyBxd2ViaW5zcGVjdG9yIGh5YnJp
ZFBpeG1hcAogU1VCRElSUyArPSBiZW5jaG1hcmtzL3BhaW50aW5nIGJlbmNobWFya3MvbG9hZGlu
ZwpJbmRleDogU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNs
YXJhdGl2ZXdlYnZpZXcucHJvCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnBybwkocmV2aXNpb24gMCkK
KysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9xZGVjbGFyYXRp
dmV3ZWJ2aWV3LnBybwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitpc0VtcHR5KE9VVFBV
VF9ESVIpOiBPVVRQVVRfRElSID0gLi4vLi4vLi4vLi4KK2luY2x1ZGUoLi4vdGVzdHMucHJpKQor
ZXhpc3RzKCQke1RBUkdFVH0ucXJjKTpSRVNPVVJDRVMgKz0gJCR7VEFSR0VUfS5xcmMKK0lOQ0xV
REVQQVRIICs9IFwKKyAgICAkJFBXRC8uLi8uLi9kZWNsYXJhdGl2ZQorCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdlYnZp
ZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy90c3RfcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDApCisrKyBTb3Vy
Y2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdl
YnZpZXcuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE0MSBAQAorI2luY2x1ZGUgPFFEZWJ1
Zz4KKyNpbmNsdWRlIDxRRGVjbGFyYXRpdmVQcm9wZXJ0eT4KKyNpbmNsdWRlIDxRRGVjbGFyYXRp
dmVWaWV3PgorI2luY2x1ZGUgPFFEaXI+CisjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVjbGFy
YXRpdmVjb21wb25lbnQuaD4KKyNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWVu
Z2luZS5oPgorI2luY2x1ZGUgPHF0ZXN0Lmg+CisKK1FUX0JFR0lOX05BTUVTUEFDRQorCitjbGFz
cyB0c3RfUURlY2xhcmF0aXZlV2ViVmlldyA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVD
VAorCitwdWJsaWMgc2xvdHM6CisgICAgdm9pZCBpbml0VGVzdENhc2UoKTsKKyAgICB2b2lkIGNs
ZWFudXBUZXN0Q2FzZSgpOworICAgIHZvaWQgaW5pdCgpOworICAgIHZvaWQgY2xlYW51cCgpOwor
Citwcml2YXRlIHNsb3RzOgorICAgIHZvaWQgcHJlZmVycmVkV2lkdGhUZXN0KCk7CisgICAgdm9p
ZCBwcmVmZXJyZWRIZWlnaHRUZXN0KCk7CisgICAgdm9pZCBwcmVmZXJyZWRXaWR0aERlZmF1bHRU
ZXN0KCk7CisgICAgdm9pZCBwcmVmZXJyZWRIZWlnaHREZWZhdWx0VGVzdCgpOworCitwcml2YXRl
OgorICAgIHZvaWQgY2hlY2tOb0Vycm9ycyhjb25zdCBRRGVjbGFyYXRpdmVDb21wb25lbnQmKTsK
K307CisKKy8vIFdpbGwgdHJ5IHRvIHdhaXQgZm9yIHRoZSBjb25kaXRpb24gd2hpbGUgYWxsb3dp
bmcgZXZlbnQgcHJvY2Vzc2luZworI2RlZmluZSBRVFJZX1ZFUklGWShfX2V4cHIpIFwKKyAgICBk
byB7IFwKKyAgICAgICAgY29uc3QgaW50IF9fc3RlcCA9IDUwOyBcCisgICAgICAgIGNvbnN0IGlu
dCBfX3RpbWVvdXQgPSA5MDAwMDsgXAorICAgICAgICBpZiAoIShfX2V4cHIpKSB7IFwKKyAgICAg
ICAgICAgIFFUZXN0OjpxV2FpdCgwKTsgXAorICAgICAgICB9IFwKKyAgICAgICAgZm9yIChpbnQg
X19pID0gMDsgX19pIDwgX190aW1lb3V0ICYmICEoX19leHByKTsgX19pICs9IF9fc3RlcCkgeyBc
CisgICAgICAgICAgICBRVGVzdDo6cVdhaXQoX19zdGVwKTsgXAorICAgICAgICB9IFwKKyAgICAg
ICAgUVZFUklGWShfX2V4cHIpOyBcCisgICAgfSB3aGlsZSAoMCkKKworLy8gVGhpcyB3aWxsIGJl
IGNhbGxlZCBiZWZvcmUgdGhlIGZpcnN0IHRlc3QgZnVuY3Rpb24gaXMgZXhlY3V0ZWQuCisvLyBJ
dCBpcyBvbmx5IGNhbGxlZCBvbmNlLgordm9pZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6aW5p
dFRlc3RDYXNlKCkKK3sKK30KKworLy8gVGhpcyB3aWxsIGJlIGNhbGxlZCBhZnRlciB0aGUgbGFz
dCB0ZXN0IGZ1bmN0aW9uIGlzIGV4ZWN1dGVkLgorLy8gSXQgaXMgb25seSBjYWxsZWQgb25jZS4K
K3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNsZWFudXBUZXN0Q2FzZSgpCit7Cit9CisK
Ky8vIFRoaXMgd2lsbCBiZSBjYWxsZWQgYmVmb3JlIGVhY2ggdGVzdCBmdW5jdGlvbiBpcyBleGVj
dXRlZC4KK3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmluaXQoKQoreworfQorCisvLyBU
aGlzIHdpbGwgYmUgY2FsbGVkIGFmdGVyIGV2ZXJ5IHRlc3QgZnVuY3Rpb24uCit2b2lkIHRzdF9R
RGVjbGFyYXRpdmVXZWJWaWV3OjpjbGVhbnVwKCkKK3sKK30KKwordm9pZCB0c3RfUURlY2xhcmF0
aXZlV2ViVmlldzo6cHJlZmVycmVkV2lkdGhUZXN0KCkKK3sKKyAgICBpZiAoIVFEaXIoVEVTVFNf
U09VUkNFX0RJUikuZXhpc3RzKCkpCisgICAgICAgIFFTS0lQKFFTdHJpbmcoIlRoaXMgdGVzdCBy
ZXF1aXJlcyBhY2Nlc3MgdG8gcmVzb3VyY2VzIGZvdW5kIGluICclMSciKS5hcmcoVEVTVFNfU09V
UkNFX0RJUikudG9MYXRpbjEoKS5jb25zdERhdGEoKSwgU2tpcEFsbCk7CisKKyAgICBRRGVjbGFy
YXRpdmVFbmdpbmUgZW5naW5lOworICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCBjb21wb25lbnQo
JmVuZ2luZSwgUVVybDo6ZnJvbUxvY2FsRmlsZShURVNUU19TT1VSQ0VfRElSIi9xZGVjbGFyYXRp
dmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdC5xbWwiKSk7CisgICAgY2hlY2tOb0Vycm9y
cyhjb21wb25lbnQpOworICAgIFFPYmplY3QqIHd2ID0gY29tcG9uZW50LmNyZWF0ZSgpOworICAg
IFFWRVJJRlkod3YpOworICAgIFFDT01QQVJFKHd2LT5wcm9wZXJ0eSgicHJlZldpZHRoIikudG9J
bnQoKSwgNjAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisKK3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdl
YlZpZXc6OnByZWZlcnJlZEhlaWdodFRlc3QoKQoreworICAgIGlmICghUURpcihURVNUU19TT1VS
Q0VfRElSKS5leGlzdHMoKSkKKyAgICAgICAgUVNLSVAoUVN0cmluZygiVGhpcyB0ZXN0IHJlcXVp
cmVzIGFjY2VzcyB0byByZXNvdXJjZXMgZm91bmQgaW4gJyUxJyIpLmFyZyhURVNUU19TT1VSQ0Vf
RElSKS50b0xhdGluMSgpLmNvbnN0RGF0YSgpLCBTa2lwQWxsKTsKKworICAgIFFEZWNsYXJhdGl2
ZUVuZ2luZSBlbmdpbmU7CisgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50IGNvbXBvbmVudCgmZW5n
aW5lLCBRVXJsOjpmcm9tTG9jYWxGaWxlKFRFU1RTX1NPVVJDRV9ESVIiL3FkZWNsYXJhdGl2ZXdl
YnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbCIpKTsKKyAgICBjaGVja05vRXJyb3JzKGNv
bXBvbmVudCk7CisgICAgUU9iamVjdCogd3YgPSBjb21wb25lbnQuY3JlYXRlKCk7CisgICAgUVZF
UklGWSh3dik7CisgICAgUUNPTVBBUkUod3YtPnByb3BlcnR5KCJwcmVmSGVpZ2h0IikudG9JbnQo
KSwgNTAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisKK3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZp
ZXc6OnByZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QoKQoreworICAgIGlmICghUURpcihURVNUU19T
T1VSQ0VfRElSKS5leGlzdHMoKSkKKyAgICAgICAgUVNLSVAoUVN0cmluZygiVGhpcyB0ZXN0IHJl
cXVpcmVzIGFjY2VzcyB0byByZXNvdXJjZXMgZm91bmQgaW4gJyUxJyIpLmFyZyhURVNUU19TT1VS
Q0VfRElSKS50b0xhdGluMSgpLmNvbnN0RGF0YSgpLCBTa2lwQWxsKTsKKworICAgIFFEZWNsYXJh
dGl2ZUVuZ2luZSBlbmdpbmU7CisgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50IGNvbXBvbmVudCgm
ZW5naW5lLCBRVXJsOjpmcm9tTG9jYWxGaWxlKFRFU1RTX1NPVVJDRV9ESVIiL3FkZWNsYXJhdGl2
ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwiKSk7CisgICAgY2hlY2tO
b0Vycm9ycyhjb21wb25lbnQpOworICAgIFFPYmplY3QqIHd2ID0gY29tcG9uZW50LmNyZWF0ZSgp
OworICAgIFFWRVJJRlkod3YpOworICAgIFFDT01QQVJFKHd2LT5wcm9wZXJ0eSgicHJlZldpZHRo
IikudG9JbnQoKSwgMCk7CisgICAgZGVsZXRlIHd2OworfQorCit2b2lkIHRzdF9RRGVjbGFyYXRp
dmVXZWJWaWV3OjpwcmVmZXJyZWRIZWlnaHREZWZhdWx0VGVzdCgpCit7CisgICAgUURlY2xhcmF0
aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQgY29tcG9uZW50KCZl
bmdpbmUsIFFVcmw6OmZyb21Mb2NhbEZpbGUoVEVTVFNfU09VUkNFX0RJUiIvcWRlY2xhcmF0aXZl
d2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFtbCIpKTsKKyAgICBjaGVja05v
RXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3YgPSBjb21wb25lbnQuY3JlYXRlKCk7
CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3YtPnByb3BlcnR5KCJwcmVmSGVpZ2h0
IikudG9JbnQoKSwgMCk7CisgICAgZGVsZXRlIHd2OworfQorCit2b2lkIHRzdF9RRGVjbGFyYXRp
dmVXZWJWaWV3OjpjaGVja05vRXJyb3JzKGNvbnN0IFFEZWNsYXJhdGl2ZUNvbXBvbmVudCYgY29t
cG9uZW50KQoreworICAgIC8vIFdhaXQgdW50aWwgdGhlIGNvbXBvbmVudCBpcyByZWFkeQorICAg
IFFUUllfVkVSSUZZKGNvbXBvbmVudC5pc1JlYWR5KCkgfHwgY29tcG9uZW50LmlzRXJyb3IoKSk7
CisKKyAgICBpZiAoY29tcG9uZW50LmlzRXJyb3IoKSkgeworICAgICAgICBRTGlzdDxRRGVjbGFy
YXRpdmVFcnJvcj4gZXJyb3JzID0gY29tcG9uZW50LmVycm9ycygpOworICAgICAgICBmb3IgKGlu
dCBpaSA9IDA7IGlpIDwgZXJyb3JzLmNvdW50KCk7ICsraWkpIHsKKyAgICAgICAgICAgIGNvbnN0
IFFEZWNsYXJhdGl2ZUVycm9yICZlcnJvciA9IGVycm9ycy5hdChpaSk7CisgICAgICAgICAgICBR
Qnl0ZUFycmF5IGVycm9yU3RyID0gUUJ5dGVBcnJheTo6bnVtYmVyKGVycm9yLmxpbmUoKSkgKyAi
OiIgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFCeXRlQXJyYXk6Om51bWJl
cihlcnJvci5jb2x1bW4oKSkgKyAiOiIgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGVycm9yLmRlc2NyaXB0aW9uKCkudG9VdGY4KCk7CisgICAgICAgICAgICBxV2FybmluZygp
IDw8IGVycm9yU3RyOworICAgICAgICB9CisgICAgfQorICAgIFFWRVJJRlkoIWNvbXBvbmVudC5p
c0Vycm9yKCkpOworfQorCisKK1FURVNUX01BSU4odHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXcpCisj
aW5jbHVkZSAidHN0X3FkZWNsYXJhdGl2ZXdlYnZpZXcubW9jIgorCitRVF9FTkRfTkFNRVNQQUNF
CkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3Vy
Y2VzL3dlYnZpZXd0ZXN0LnFtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3F0L3Rlc3Rz
L3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbAkocmV2aXNpb24g
MCkKKysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJj
ZXMvd2Vidmlld3Rlc3QucW1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACitpbXBvcnQg
UXQgNC43CitpbXBvcnQgUXRXZWJLaXQgMS4wCisKK0ZsaWNrYWJsZSB7CisgICAgaWQ6IGZsaWNr
CisgICAgd2lkdGg6IDY0MAorICAgIGhlaWdodDogNDAwCisgICAgY2xpcDogdHJ1ZQorICAgIGNv
bnRlbnRXaWR0aDogbXl3ZWIud2lkdGg7IGNvbnRlbnRIZWlnaHQ6IG15d2ViLmhlaWdodAorICAg
IHByb3BlcnR5IGFsaWFzIG15dXJsOiBteXdlYi51cmwKKyAgICBwcm9wZXJ0eSBhbGlhcyBwcmVm
SGVpZ2h0OiBteXdlYi5wcmVmZXJyZWRIZWlnaHQKKyAgICBwcm9wZXJ0eSBhbGlhcyBwcmVmV2lk
dGg6IG15d2ViLnByZWZlcnJlZFdpZHRoCisKKworICAgIFdlYlZpZXcgeworICAgICAgICBpZDog
bXl3ZWIKKwl1cmw6ICJodHRwOi8vcXQubm9raWEuY29tIgorICAgICAgICBzbW9vdGg6IGZhbHNl
CisgICAgICAgIHNjYWxlOiAxLjAKKyAgICAgICAgcHJlZmVycmVkSGVpZ2h0OiA1MDAKKyAgICAg
ICAgcHJlZmVycmVkV2lkdGg6IDYwMAorICAgICAgICBwcmVzc0dyYWJUaW1lOiAxMDAwCisgICAg
ICAgIGZvY3VzOiB0cnVlCisgICAgfQorCit9CkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3Rz
L3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jl
c291cmNlcy93ZWJ2aWV3dGVzdGRlZmF1bHQucW1sCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dl
YktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRl
ZmF1bHQucW1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACitpbXBvcnQgUXQgNC43Citp
bXBvcnQgUXRXZWJLaXQgMS4wCisKK0ZsaWNrYWJsZSB7CisgICAgaWQ6IGZsaWNrCisgICAgd2lk
dGg6IDY0MAorICAgIGhlaWdodDogNDAwCisgICAgY2xpcDogdHJ1ZQorICAgIGNvbnRlbnRXaWR0
aDogbXl3ZWIud2lkdGg7IGNvbnRlbnRIZWlnaHQ6IG15d2ViLmhlaWdodAorICAgIHByb3BlcnR5
IGFsaWFzIG15dXJsOiBteXdlYi51cmwKKyAgICBwcm9wZXJ0eSBhbGlhcyBwcmVmSGVpZ2h0OiBt
eXdlYi5wcmVmZXJyZWRIZWlnaHQKKyAgICBwcm9wZXJ0eSBhbGlhcyBwcmVmV2lkdGg6IG15d2Vi
LnByZWZlcnJlZFdpZHRoCisKKworICAgIFdlYlZpZXcgeworICAgICAgICBpZDogbXl3ZWIKKwl1
cmw6ICJodHRwOi8vcXQubm9raWEuY29tIgorICAgICAgICBzbW9vdGg6IGZhbHNlCisgICAgICAg
IHNjYWxlOiAxLjAKKyAgICAgICAgcHJlc3NHcmFiVGltZTogMTAwMAorICAgICAgICBmb2N1czog
dHJ1ZQorICAgIH0KKworfQpJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNzkzMjcpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtp
bmcgY29weSkKQEAgLTEsMyArMSwxMSBAQAorMjAxMS0wMi0yMiAgR29wYWwgUmFnaGF2YW4gIDxn
b3BhbC4xLnJhZ2hhdmFuQG5va2lhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBjaGVjay13ZWJraXQtc3R5bGUgd2FzIGNvbXBsYWluaW5nIGFi
b3V0IG1pc3NpbmcgY29uZmlnLmggaW4gV2ViS2l0L3F0L3Rlc3QvcWRlY2xhcmF0aXZld2Vidmll
dworCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9zdHlsZS9jaGVja2VyLnB5OgorCiAyMDEx
LTAyLTIyICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBEb24ndCB0
cmlnZ2VyIGEgV2luZG93cyBidWlsZCB3aGVuIHRoZSB0b3AtbGV2ZWwgQ2hhbmdlTG9nIGNoYW5n
ZXMKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlci5weQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL2NoZWNrZXIucHkJKHJldmlzaW9u
IDc5MDEzKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9jaGVja2VyLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMjMsNyArMTIzLDggQEAgX1BBVEhfUlVMRVNfU1BFQ0lGSUVSID0gWwog
ICAgICAgIyBUaGUgQVBJIHRlc3QgaGFybmVzc2VzIGhhdmUgbm8gY29uZmlnLmggYW5kIHVzZSBm
dW5ueSBtYWNyb3MgbGlrZQogICAgICAgIyBURVNUX0NMQVNTX05BTUUuCiAgICAgICAiVG9vbHMv
V2ViS2l0QVBJVGVzdC8iLAotICAgICAgIlRvb2xzL1Rlc3RXZWJLaXRBUEkvIl0sCisgICAgICAi
VG9vbHMvVGVzdFdlYktpdEFQSS8iLAorICAgICAgIlNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRl
Y2xhcmF0aXZld2VidmlldyJdLAogICAgICBbIi1idWlsZC9pbmNsdWRlIiwKICAgICAgICItcmVh
ZGFiaWxpdHkvbmFtaW5nIl0pLAogICAgIChbIyBUaGUgRUZMIEFQSXMgdXNlIEVGTCBuYW1pbmcg
c3R5bGUsIHdoaWNoIGluY2x1ZGVzCg==
</data>
<flag name="review"
          id="75111"
          type_id="1"
          status="-"
          setter="kenneth"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83470</attachid>
            <date>2011-02-23 04:18:01 -0800</date>
            <delta_ts>2011-02-24 11:44:26 -0800</delta_ts>
            <desc>Updated patch based on suggestion from reviewer</desc>
            <filename>50222e.patch</filename>
            <type>text/plain</type>
            <size>10065</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTMyNykKKysrIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMDItMjIgIEdv
cGFsIFJhZ2hhdmFuICA8Z29wYWwuMS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNp
ZGUgYSBGbGlja2FibGUgc2hvd3MgY2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMi4KKworICAgICAg
ICBXaXRoIHRoaXMgcGF0Y2ggeW91IHdpbGwgbm90IHNlZSBjaGVja2VyYm9hcmQgaW4gd2Vidmll
dyBldmVuIGlmIAorICAgICAgICBwcmVmZXJyZWRXaWR0aCBhbmQgcHJlZmVycmVkSGVpZ2h0IGFy
ZSBtaXNzaW5nLgorCisgICAgICAgICogZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5j
cHA6CisgICAgICAgIChRRGVjbGFyYXRpdmVXZWJWaWV3Ojppbml0KToKKyAgICAgICAgKiB0ZXN0
cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9xZGVjbGFyYXRp
dmV3ZWJ2aWV3L3FkZWNsYXJhdGl2ZXdlYnZpZXcucHJvOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlczogQWRkZWQuCisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRl
ZmF1bHQucW1sOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Rz
dF9xZGVjbGFyYXRpdmV3ZWJ2aWV3LmNwcDogQWRkZWQuCisgICAgICAgICh0c3RfUURlY2xhcmF0
aXZlV2ViVmlldzo6aW5pdFRlc3RDYXNlKToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJW
aWV3OjpjbGVhbnVwVGVzdENhc2UpOgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6
OmluaXQpOgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNsZWFudXApOgorICAg
ICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZFdpZHRoVGVzdCk6CisgICAg
ICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0VGVzdCk6CisgICAg
ICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkV2lkdGhEZWZhdWx0VGVzdCk6
CisgICAgICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0RGVmYXVs
dFRlc3QpOgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNoZWNrTm9FcnJvcnMp
OgorICAgICAgICAqIHRlc3RzL3Rlc3RzLnByaToKKyAgICAgICAgKiB0ZXN0cy90ZXN0cy5wcm86
CisKIDIwMTEtMDItMjIgIEFuZHJhcyBCZWNzaSAgPGFiZWNzaUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IExhc3psbyBHb21ib3MuCkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L2Rl
Y2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDc5
MDEzKQorKysgU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmV3ZWJ2aWV3
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjc1LDYgKzI3NSwxMCBAQCB2b2lkIFFEZWNsYXJhdGl2
ZVdlYlZpZXc6OmluaXQoKQogICAgIGQtPnZpZXctPnNldEZvY3VzKCk7CiAgICAgUVdlYlBhZ2Uq
IHdwID0gbmV3IFFEZWNsYXJhdGl2ZVdlYlBhZ2UodGhpcyk7CiAgICAgc2V0UGFnZSh3cCk7Cisg
ICAgaWYgKCFwcmVmZXJyZWRXaWR0aCgpKQorICAgICAgICBzZXRQcmVmZXJyZWRXaWR0aChkLT52
aWV3LT5wcmVmZXJyZWRXaWR0aCgpKTsKKyAgICBpZiAoIXByZWZlcnJlZEhlaWdodCgpKQorICAg
ICAgICBzZXRQcmVmZXJyZWRIZWlnaHQoZC0+dmlldy0+cHJlZmVycmVkSGVpZ2h0KCkpOwogICAg
IGNvbm5lY3QoZC0+dmlldywgU0lHTkFMKGdlb21ldHJ5Q2hhbmdlZCgpKSwgdGhpcywgU0xPVCh1
cGRhdGVEZWNsYXJhdGl2ZVdlYlZpZXdTaXplKCkpKTsKICAgICBjb25uZWN0KGQtPnZpZXcsIFNJ
R05BTChkb3VibGVDbGljayhpbnQsIGludCkpLCB0aGlzLCBTSUdOQUwoZG91YmxlQ2xpY2soaW50
LCBpbnQpKSk7CiAgICAgY29ubmVjdChkLT52aWV3LCBTSUdOQUwoc2NhbGVDaGFuZ2VkKCkpLCB0
aGlzLCBTSUdOQUwoY29udGVudHNTY2FsZUNoYW5nZWQoKSkpOwpJbmRleDogU291cmNlL1dlYktp
dC9xdC90ZXN0cy90ZXN0cy5wcmkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0
cy90ZXN0cy5wcmkJKHJldmlzaW9uIDc5MDEzKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy90
ZXN0cy5wcmkJKHdvcmtpbmcgY29weSkKQEAgLTIwLDcgKzIwLDcgQEAgSU5DTFVERVBBVEggKz0g
XAogICAgICQkUFdELy4uL0FwaQogCiBpbmNsdWRlKC4uLy4uLy4uL1dlYktpdC5wcmkpCi1RVCAr
PSB0ZXN0bGliIG5ldHdvcmsKK1FUICs9IHRlc3RsaWIgbmV0d29yayBkZWNsYXJhdGl2ZQogCiBR
TUFLRV9SUEFUSERJUiA9ICQkT1VUUFVUX0RJUi9saWIgJCRRTUFLRV9SUEFUSERJUgogCkluZGV4
OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwkocmV2aXNpb24gNzkwMTMpCisrKyBTb3VyY2UvV2Vi
S2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKIAog
VEVNUExBVEUgPSBzdWJkaXJzCi1TVUJESVJTID0gcXdlYmZyYW1lIHF3ZWJwYWdlIHF3ZWJlbGVt
ZW50IHFncmFwaGljc3dlYnZpZXcgcXdlYmhpc3RvcnlpbnRlcmZhY2UgcXdlYnZpZXcgcXdlYmhp
c3RvcnkgcXdlYmluc3BlY3RvciBoeWJyaWRQaXhtYXAKK1NVQkRJUlMgPSBxd2ViZnJhbWUgcXdl
YnBhZ2UgcXdlYmVsZW1lbnQgcWdyYXBoaWNzd2VidmlldyBxd2ViaGlzdG9yeWludGVyZmFjZSBx
d2VidmlldyBxd2ViaGlzdG9yeSBxZGVjbGFyYXRpdmV3ZWJ2aWV3IHF3ZWJpbnNwZWN0b3IgaHli
cmlkUGl4bWFwCiBTVUJESVJTICs9IGJlbmNobWFya3MvcGFpbnRpbmcgYmVuY2htYXJrcy9sb2Fk
aW5nCkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcWRl
Y2xhcmF0aXZld2Vidmlldy5wcm8KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0
cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNsYXJhdGl2ZXdlYnZpZXcucHJvCShyZXZpc2lvbiAw
KQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNsYXJh
dGl2ZXdlYnZpZXcucHJvCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYgQEAKK2lzRW1wdHkoT1VU
UFVUX0RJUik6IE9VVFBVVF9ESVIgPSAuLi8uLi8uLi8uLgoraW5jbHVkZSguLi90ZXN0cy5wcmkp
CitleGlzdHMoJCR7VEFSR0VUfS5xcmMpOlJFU09VUkNFUyArPSAkJHtUQVJHRVR9LnFyYworSU5D
TFVERVBBVEggKz0gXAorICAgICQkUFdELy4uLy4uL2RlY2xhcmF0aXZlCisKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3RfcWRlY2xhcmF0aXZld2Vi
dmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRp
dmV3ZWJ2aWV3L3RzdF9xZGVjbGFyYXRpdmV3ZWJ2aWV3LmNwcAkocmV2aXNpb24gMCkKKysrIFNv
dXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3RfcWRlY2xhcmF0aXZl
d2Vidmlldy5jcHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTE1IEBACisjaW5jbHVkZSA8UURl
YnVnPgorI2luY2x1ZGUgPFFEZWNsYXJhdGl2ZVByb3BlcnR5PgorI2luY2x1ZGUgPFFEZWNsYXJh
dGl2ZVZpZXc+CisjaW5jbHVkZSA8UURpcj4KKyNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNs
YXJhdGl2ZWNvbXBvbmVudC5oPgorI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZl
ZW5naW5lLmg+CisjaW5jbHVkZSA8cXRlc3QuaD4KKworUVRfQkVHSU5fTkFNRVNQQUNFCisKK2Ns
YXNzIHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3IDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JK
RUNUCisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBwcmVmZXJyZWRXaWR0aFRlc3QoKTsKKyAg
ICB2b2lkIHByZWZlcnJlZEhlaWdodFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZFdpZHRoRGVm
YXVsdFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZEhlaWdodERlZmF1bHRUZXN0KCk7CisKK3By
aXZhdGU6CisgICAgdm9pZCBjaGVja05vRXJyb3JzKGNvbnN0IFFEZWNsYXJhdGl2ZUNvbXBvbmVu
dCYpOworICAgIHZvaWQgcVRyeVZlcmlmeShib29sKTsKK307CisKKy8vIFdpbGwgdHJ5IHRvIHdh
aXQgZm9yIHRoZSBjb25kaXRpb24gd2hpbGUgYWxsb3dpbmcgZXZlbnQgcHJvY2Vzc2luZwordm9p
ZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cVRyeVZlcmlmeShib29sIF9fZXhwcikKK3sKKyAg
ICBkbyB7IAorICAgICAgICBjb25zdCBpbnQgX19zdGVwID0gNTA7CisgICAgICAgIGNvbnN0IGlu
dCBfX3RpbWVvdXQgPSA5MDAwMDsKKyAgICAgICAgaWYgKCEoX19leHByKSkKKyAgICAgICAgICAg
IFFUZXN0OjpxV2FpdCgwKTsKKyAgICAgICAgZm9yIChpbnQgX19pID0gMDsgX19pIDwgX190aW1l
b3V0ICYmICEoX19leHByKTsgX19pICs9IF9fc3RlcCkKKyAgICAgICAgICAgIFFUZXN0OjpxV2Fp
dChfX3N0ZXApOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAKKyAgICAgICAgUVZFUklGWShfX2V4cHIpOworICAgIH0gd2hpbGUgKDApOworfQorCit2
b2lkIHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QoKQoreworICAg
IGlmICghUURpcihURVNUU19TT1VSQ0VfRElSKS5leGlzdHMoKSkKKyAgICAgICAgUVNLSVAoUVN0
cmluZygiVGhpcyB0ZXN0IHJlcXVpcmVzIGFjY2VzcyB0byByZXNvdXJjZXMgZm91bmQgaW4gJyUx
JyIpLmFyZyhURVNUU19TT1VSQ0VfRElSKS50b0xhdGluMSgpLmNvbnN0RGF0YSgpLCBTa2lwQWxs
KTsKKworICAgIFFEZWNsYXJhdGl2ZUVuZ2luZSBlbmdpbmU7CisgICAgUURlY2xhcmF0aXZlQ29t
cG9uZW50IGNvbXBvbmVudCgmZW5naW5lLCBRVXJsOjpmcm9tTG9jYWxGaWxlKFRFU1RTX1NPVVJD
RV9ESVIiL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbCIpKTsK
KyAgICBjaGVja05vRXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3YgPSBjb21wb25l
bnQuY3JlYXRlKCk7CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3YtPnByb3BlcnR5
KCJwcmVmV2lkdGgiKS50b0ludCgpLCA2MDApOworICAgIGRlbGV0ZSB3djsKK30KKwordm9pZCB0
c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0VGVzdCgpCit7CisgICAgaWYg
KCFRRGlyKFRFU1RTX1NPVVJDRV9ESVIpLmV4aXN0cygpKQorICAgICAgICBRU0tJUChRU3RyaW5n
KCJUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHJlc291cmNlcyBmb3VuZCBpbiAnJTEnIiku
YXJnKFRFU1RTX1NPVVJDRV9ESVIpLnRvTGF0aW4xKCkuY29uc3REYXRhKCksIFNraXBBbGwpOwor
CisgICAgUURlY2xhcmF0aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVDb21wb25l
bnQgY29tcG9uZW50KCZlbmdpbmUsIFFVcmw6OmZyb21Mb2NhbEZpbGUoVEVTVFNfU09VUkNFX0RJ
UiIvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sIikpOworICAg
IGNoZWNrTm9FcnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNvbXBvbmVudC5j
cmVhdGUoKTsKKyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJvcGVydHkoInBy
ZWZIZWlnaHQiKS50b0ludCgpLCA1MDApOworICAgIGRlbGV0ZSB3djsKK30KKwordm9pZCB0c3Rf
UURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkV2lkdGhEZWZhdWx0VGVzdCgpCit7CisgICAg
aWYgKCFRRGlyKFRFU1RTX1NPVVJDRV9ESVIpLmV4aXN0cygpKQorICAgICAgICBRU0tJUChRU3Ry
aW5nKCJUaGlzIHRlc3QgcmVxdWlyZXMgYWNjZXNzIHRvIHJlc291cmNlcyBmb3VuZCBpbiAnJTEn
IikuYXJnKFRFU1RTX1NPVVJDRV9ESVIpLnRvTGF0aW4xKCkuY29uc3REYXRhKCksIFNraXBBbGwp
OworCisgICAgUURlY2xhcmF0aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVDb21w
b25lbnQgY29tcG9uZW50KCZlbmdpbmUsIFFVcmw6OmZyb21Mb2NhbEZpbGUoVEVTVFNfU09VUkNF
X0RJUiIvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFt
bCIpKTsKKyAgICBjaGVja05vRXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3YgPSBj
b21wb25lbnQuY3JlYXRlKCk7CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3YtPnBy
b3BlcnR5KCJwcmVmV2lkdGgiKS50b0ludCgpLCAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisKK3Zv
aWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodERlZmF1bHRUZXN0KCkK
K3sKKyAgICBRRGVjbGFyYXRpdmVFbmdpbmUgZW5naW5lOworICAgIFFEZWNsYXJhdGl2ZUNvbXBv
bmVudCBjb21wb25lbnQoJmVuZ2luZSwgUVVybDo6ZnJvbUxvY2FsRmlsZShURVNUU19TT1VSQ0Vf
RElSIi9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRlZmF1bHQucW1s
IikpOworICAgIGNoZWNrTm9FcnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNv
bXBvbmVudC5jcmVhdGUoKTsKKyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJv
cGVydHkoInByZWZIZWlnaHQiKS50b0ludCgpLCAwKTsKKyAgICBkZWxldGUgd3Y7Cit9CisKK3Zv
aWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNoZWNrTm9FcnJvcnMoY29uc3QgUURlY2xhcmF0
aXZlQ29tcG9uZW50JiBjb21wb25lbnQpCit7CisgICAgLy8gV2FpdCB1bnRpbCB0aGUgY29tcG9u
ZW50IGlzIHJlYWR5CisgICAgcVRyeVZlcmlmeShjb21wb25lbnQuaXNSZWFkeSgpIHx8IGNvbXBv
bmVudC5pc0Vycm9yKCkpOworCisgICAgaWYgKGNvbXBvbmVudC5pc0Vycm9yKCkpIHsKKyAgICAg
ICAgUUxpc3Q8UURlY2xhcmF0aXZlRXJyb3I+IGVycm9ycyA9IGNvbXBvbmVudC5lcnJvcnMoKTsK
KyAgICAgICAgZm9yIChpbnQgaWkgPSAwOyBpaSA8IGVycm9ycy5jb3VudCgpOyArK2lpKSB7Cisg
ICAgICAgICAgICBjb25zdCBRRGVjbGFyYXRpdmVFcnJvciAmZXJyb3IgPSBlcnJvcnMuYXQoaWkp
OworICAgICAgICAgICAgUUJ5dGVBcnJheSBlcnJvclN0ciA9IFFCeXRlQXJyYXk6Om51bWJlcihl
cnJvci5saW5lKCkpICsgIjoiICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBR
Qnl0ZUFycmF5OjpudW1iZXIoZXJyb3IuY29sdW1uKCkpICsgIjoiICsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBlcnJvci5kZXNjcmlwdGlvbigpLnRvVXRmOCgpOworICAgICAg
ICAgICAgcVdhcm5pbmcoKSA8PCBlcnJvclN0cjsKKyAgICAgICAgfQorICAgIH0KKyAgICBRVkVS
SUZZKCFjb21wb25lbnQuaXNFcnJvcigpKTsKK30KKworCitRVEVTVF9NQUlOKHRzdF9RRGVjbGFy
YXRpdmVXZWJWaWV3KQorI2luY2x1ZGUgInRzdF9xZGVjbGFyYXRpdmV3ZWJ2aWV3Lm1vYyIKKwor
UVRfRU5EX05BTUVTUEFDRQpJbmRleDogU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRp
dmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdC5xbWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVz
dC5xbWwJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2
ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwyNiBAQAoraW1wb3J0IFF0IDQuNworaW1wb3J0IFF0V2ViS2l0IDEuMAorCitGbGlja2FibGUg
eworICAgIGlkOiBmbGljaworICAgIHdpZHRoOiA2NDAKKyAgICBoZWlnaHQ6IDQwMAorICAgIGNs
aXA6IHRydWUKKyAgICBjb250ZW50V2lkdGg6IG15d2ViLndpZHRoOyBjb250ZW50SGVpZ2h0OiBt
eXdlYi5oZWlnaHQKKyAgICBwcm9wZXJ0eSBhbGlhcyBteXVybDogbXl3ZWIudXJsCisgICAgcHJv
cGVydHkgYWxpYXMgcHJlZkhlaWdodDogbXl3ZWIucHJlZmVycmVkSGVpZ2h0CisgICAgcHJvcGVy
dHkgYWxpYXMgcHJlZldpZHRoOiBteXdlYi5wcmVmZXJyZWRXaWR0aAorCisKKyAgICBXZWJWaWV3
IHsKKyAgICAgICAgaWQ6IG15d2ViCisJdXJsOiAiaHR0cDovL3F0Lm5va2lhLmNvbSIKKyAgICAg
ICAgc21vb3RoOiBmYWxzZQorICAgICAgICBzY2FsZTogMS4wCisgICAgICAgIHByZWZlcnJlZEhl
aWdodDogNTAwCisgICAgICAgIHByZWZlcnJlZFdpZHRoOiA2MDAKKyAgICAgICAgcHJlc3NHcmFi
VGltZTogMTAwMAorICAgICAgICBmb2N1czogdHJ1ZQorICAgIH0KKworfQpJbmRleDogU291cmNl
L1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVz
dGRlZmF1bHQucW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xh
cmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFtbAkocmV2aXNpb24g
MCkKKysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJj
ZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNCBAQAor
aW1wb3J0IFF0IDQuNworaW1wb3J0IFF0V2ViS2l0IDEuMAorCitGbGlja2FibGUgeworICAgIGlk
OiBmbGljaworICAgIHdpZHRoOiA2NDAKKyAgICBoZWlnaHQ6IDQwMAorICAgIGNsaXA6IHRydWUK
KyAgICBjb250ZW50V2lkdGg6IG15d2ViLndpZHRoOyBjb250ZW50SGVpZ2h0OiBteXdlYi5oZWln
aHQKKyAgICBwcm9wZXJ0eSBhbGlhcyBteXVybDogbXl3ZWIudXJsCisgICAgcHJvcGVydHkgYWxp
YXMgcHJlZkhlaWdodDogbXl3ZWIucHJlZmVycmVkSGVpZ2h0CisgICAgcHJvcGVydHkgYWxpYXMg
cHJlZldpZHRoOiBteXdlYi5wcmVmZXJyZWRXaWR0aAorCisKKyAgICBXZWJWaWV3IHsKKyAgICAg
ICAgaWQ6IG15d2ViCisJdXJsOiAiaHR0cDovL3F0Lm5va2lhLmNvbSIKKyAgICAgICAgc21vb3Ro
OiBmYWxzZQorICAgICAgICBzY2FsZTogMS4wCisgICAgICAgIHByZXNzR3JhYlRpbWU6IDEwMDAK
KyAgICAgICAgZm9jdXM6IHRydWUKKyAgICB9CisKK30K
</data>
<flag name="review"
          id="75298"
          type_id="1"
          status="-"
          setter="menard"
    />
    <flag name="commit-queue"
          id="75299"
          type_id="3"
          status="-"
          setter="menard"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83691</attachid>
            <date>2011-02-24 11:44:26 -0800</date>
            <delta_ts>2011-02-24 12:28:15 -0800</delta_ts>
            <desc>Took care of comments from reviewer</desc>
            <filename>50222f.patch</filename>
            <type>text/plain</type>
            <size>9415</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTMyNykKKysrIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTEtMDItMjIgIEdv
cGFsIFJhZ2hhdmFuICA8Z29wYWwuMS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNp
ZGUgYSBGbGlja2FibGUgc2hvd3MgY2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMi4KKworICAgICAg
ICBXaXRoIHRoaXMgcGF0Y2ggeW91IHdpbGwgbm90IHNlZSBjaGVja2VyYm9hcmQgaW4gd2Vidmll
dyBldmVuIGlmIAorICAgICAgICBwcmVmZXJyZWRXaWR0aCBhbmQgcHJlZmVycmVkSGVpZ2h0IGFy
ZSBtaXNzaW5nLgorCisgICAgICAgICogZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5j
cHA6CisgICAgICAgIChRRGVjbGFyYXRpdmVXZWJWaWV3Ojppbml0KToKKyAgICAgICAgKiB0ZXN0
cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9xZGVjbGFyYXRp
dmV3ZWJ2aWV3L3FkZWNsYXJhdGl2ZXdlYnZpZXcucHJvOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlczogQWRkZWQuCisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRl
ZmF1bHQucW1sOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Rz
dF9xZGVjbGFyYXRpdmV3ZWJ2aWV3LmNwcDogQWRkZWQuCisgICAgICAgICh0c3RfUURlY2xhcmF0
aXZlV2ViVmlldzo6aW5pdFRlc3RDYXNlKToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJW
aWV3OjpjbGVhbnVwVGVzdENhc2UpOgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6
OmluaXQpOgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNsZWFudXApOgorICAg
ICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZFdpZHRoVGVzdCk6CisgICAg
ICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0VGVzdCk6CisgICAg
ICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkV2lkdGhEZWZhdWx0VGVzdCk6
CisgICAgICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0RGVmYXVs
dFRlc3QpOgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OmNoZWNrTm9FcnJvcnMp
OgorICAgICAgICAqIHRlc3RzL3Rlc3RzLnByaToKKyAgICAgICAgKiB0ZXN0cy90ZXN0cy5wcm86
CisKIDIwMTEtMDItMjIgIEFuZHJhcyBCZWNzaSAgPGFiZWNzaUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IExhc3psbyBHb21ib3MuCkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L2Rl
Y2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDc5
MDEzKQorKysgU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9xZGVjbGFyYXRpdmV3ZWJ2aWV3
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjc1LDYgKzI3NSwxMCBAQCB2b2lkIFFEZWNsYXJhdGl2
ZVdlYlZpZXc6OmluaXQoKQogICAgIGQtPnZpZXctPnNldEZvY3VzKCk7CiAgICAgUVdlYlBhZ2Uq
IHdwID0gbmV3IFFEZWNsYXJhdGl2ZVdlYlBhZ2UodGhpcyk7CiAgICAgc2V0UGFnZSh3cCk7Cisg
ICAgaWYgKCFwcmVmZXJyZWRXaWR0aCgpKQorICAgICAgICBzZXRQcmVmZXJyZWRXaWR0aChkLT52
aWV3LT5wcmVmZXJyZWRXaWR0aCgpKTsKKyAgICBpZiAoIXByZWZlcnJlZEhlaWdodCgpKQorICAg
ICAgICBzZXRQcmVmZXJyZWRIZWlnaHQoZC0+dmlldy0+cHJlZmVycmVkSGVpZ2h0KCkpOwogICAg
IGNvbm5lY3QoZC0+dmlldywgU0lHTkFMKGdlb21ldHJ5Q2hhbmdlZCgpKSwgdGhpcywgU0xPVCh1
cGRhdGVEZWNsYXJhdGl2ZVdlYlZpZXdTaXplKCkpKTsKICAgICBjb25uZWN0KGQtPnZpZXcsIFNJ
R05BTChkb3VibGVDbGljayhpbnQsIGludCkpLCB0aGlzLCBTSUdOQUwoZG91YmxlQ2xpY2soaW50
LCBpbnQpKSk7CiAgICAgY29ubmVjdChkLT52aWV3LCBTSUdOQUwoc2NhbGVDaGFuZ2VkKCkpLCB0
aGlzLCBTSUdOQUwoY29udGVudHNTY2FsZUNoYW5nZWQoKSkpOwpJbmRleDogU291cmNlL1dlYktp
dC9xdC90ZXN0cy90ZXN0cy5wcmkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0
cy90ZXN0cy5wcmkJKHJldmlzaW9uIDc5MDEzKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy90
ZXN0cy5wcmkJKHdvcmtpbmcgY29weSkKQEAgLTIwLDcgKzIwLDcgQEAgSU5DTFVERVBBVEggKz0g
XAogICAgICQkUFdELy4uL0FwaQogCiBpbmNsdWRlKC4uLy4uLy4uL1dlYktpdC5wcmkpCi1RVCAr
PSB0ZXN0bGliIG5ldHdvcmsKK1FUICs9IHRlc3RsaWIgbmV0d29yayBkZWNsYXJhdGl2ZQogCiBR
TUFLRV9SUEFUSERJUiA9ICQkT1VUUFVUX0RJUi9saWIgJCRRTUFLRV9SUEFUSERJUgogCkluZGV4
OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwkocmV2aXNpb24gNzkwMTMpCisrKyBTb3VyY2UvV2Vi
S2l0L3F0L3Rlc3RzL3Rlc3RzLnBybwkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKIAog
VEVNUExBVEUgPSBzdWJkaXJzCi1TVUJESVJTID0gcXdlYmZyYW1lIHF3ZWJwYWdlIHF3ZWJlbGVt
ZW50IHFncmFwaGljc3dlYnZpZXcgcXdlYmhpc3RvcnlpbnRlcmZhY2UgcXdlYnZpZXcgcXdlYmhp
c3RvcnkgcXdlYmluc3BlY3RvciBoeWJyaWRQaXhtYXAKK1NVQkRJUlMgPSBxd2ViZnJhbWUgcXdl
YnBhZ2UgcXdlYmVsZW1lbnQgcWdyYXBoaWNzd2VidmlldyBxd2ViaGlzdG9yeWludGVyZmFjZSBx
d2VidmlldyBxd2ViaGlzdG9yeSBxZGVjbGFyYXRpdmV3ZWJ2aWV3IHF3ZWJpbnNwZWN0b3IgaHli
cmlkUGl4bWFwCiBTVUJESVJTICs9IGJlbmNobWFya3MvcGFpbnRpbmcgYmVuY2htYXJrcy9sb2Fk
aW5nCkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3V0aWwuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3V0aWwuaAkocmV2aXNpb24gNzkwMTMpCisrKyBTb3VyY2Uv
V2ViS2l0L3F0L3Rlc3RzL3V0aWwuaAkod29ya2luZyBjb3B5KQpAQCAtMzQsNiArMzQsNyBAQAog
ICogXHJldHVybiBccCB0cnVlIGlmIHRoZSByZXF1ZXN0ZWQgc2lnbmFsIHdhcyByZWNlaXZlZAog
ICogICAgICAgICBccCBmYWxzZSBvbiB0aW1lb3V0CiAgKi8KKwogc3RhdGljIGJvb2wgd2FpdEZv
clNpZ25hbChRT2JqZWN0KiBvYmosIGNvbnN0IGNoYXIqIHNpZ25hbCwgaW50IHRpbWVvdXQgPSAx
MDAwMCkKIHsKICAgICBRRXZlbnRMb29wIGxvb3A7CkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rl
c3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcWRlY2xhcmF0aXZld2Vidmlldy5wcm8KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNsYXJh
dGl2ZXdlYnZpZXcucHJvCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9x
ZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNsYXJhdGl2ZXdlYnZpZXcucHJvCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDYgQEAKK2lzRW1wdHkoT1VUUFVUX0RJUik6IE9VVFBVVF9ESVIgPSAuLi8uLi8u
Li8uLgoraW5jbHVkZSguLi90ZXN0cy5wcmkpCitleGlzdHMoJCR7VEFSR0VUfS5xcmMpOlJFU09V
UkNFUyArPSAkJHtUQVJHRVR9LnFyYworSU5DTFVERVBBVEggKz0gXAorICAgICQkUFdELy4uLy4u
L2RlY2xhcmF0aXZlCisKSW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy90c3RfcWRlY2xhcmF0aXZld2Vidmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3RzdF9xZGVjbGFyYXRpdmV3ZWJ2
aWV3LmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0
aXZld2Vidmlldy90c3RfcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsODcgQEAKKyNpbmNsdWRlICIuLi91dGlsLmgiCisjaW5jbHVkZSA8UURlYnVnPgorI2lu
Y2x1ZGUgPFFEZWNsYXJhdGl2ZUNvbXBvbmVudD4KKyNpbmNsdWRlIDxRRGVjbGFyYXRpdmVFbmdp
bmU+CisjaW5jbHVkZSA8UURlY2xhcmF0aXZlUHJvcGVydHk+CisjaW5jbHVkZSA8UURlY2xhcmF0
aXZlVmlldz4KKyNpbmNsdWRlIDxRRGlyPgorI2luY2x1ZGUgPHF0ZXN0Lmg+CisKK1FUX0JFR0lO
X05BTUVTUEFDRQorCitjbGFzcyB0c3RfUURlY2xhcmF0aXZlV2ViVmlldyA6IHB1YmxpYyBRT2Jq
ZWN0IHsKKyAgICBRX09CSkVDVAorCitwdWJsaWM6CisgICAgdHN0X1FEZWNsYXJhdGl2ZVdlYlZp
ZXcoKTsKKworcHJpdmF0ZSBzbG90czoKKyAgICB2b2lkIHByZWZlcnJlZFdpZHRoVGVzdCgpOwor
ICAgIHZvaWQgcHJlZmVycmVkSGVpZ2h0VGVzdCgpOworICAgIHZvaWQgcHJlZmVycmVkV2lkdGhE
ZWZhdWx0VGVzdCgpOworICAgIHZvaWQgcHJlZmVycmVkSGVpZ2h0RGVmYXVsdFRlc3QoKTsKKwor
cHJpdmF0ZToKKyAgICB2b2lkIGNoZWNrTm9FcnJvcnMoY29uc3QgUURlY2xhcmF0aXZlQ29tcG9u
ZW50Jik7Cit9OworCit0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6dHN0X1FEZWNsYXJhdGl2ZVdl
YlZpZXcoKQoreworICAgIFFfVU5VU0VEKHdhaXRGb3JTaWduYWwpCit9CisKK3ZvaWQgdHN0X1FE
ZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZFdpZHRoVGVzdCgpCit7CisgICAgUURlY2xhcmF0
aXZlRW5naW5lIGVuZ2luZTsKKyAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQgY29tcG9uZW50KCZl
bmdpbmUsIFFVcmwoInFyYzovLy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sIikpOworICAgIGNo
ZWNrTm9FcnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNvbXBvbmVudC5jcmVh
dGUoKTsKKyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJvcGVydHkoInByZWZX
aWR0aCIpLnRvSW50KCksIDYwMCk7CisgICAgZGVsZXRlIHd2OworfQorCit2b2lkIHRzdF9RRGVj
bGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRIZWlnaHRUZXN0KCkKK3sKKyAgICBRRGVjbGFyYXRp
dmVFbmdpbmUgZW5naW5lOworICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCBjb21wb25lbnQoJmVu
Z2luZSwgUVVybCgicXJjOi8vL3Jlc291cmNlcy93ZWJ2aWV3dGVzdC5xbWwiKSk7CisgICAgY2hl
Y2tOb0Vycm9ycyhjb21wb25lbnQpOworICAgIFFPYmplY3QqIHd2ID0gY29tcG9uZW50LmNyZWF0
ZSgpOworICAgIFFWRVJJRlkod3YpOworICAgIFFDT01QQVJFKHd2LT5wcm9wZXJ0eSgicHJlZkhl
aWdodCIpLnRvSW50KCksIDUwMCk7CisgICAgZGVsZXRlIHd2OworfQorCit2b2lkIHRzdF9RRGVj
bGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aERlZmF1bHRUZXN0KCkKK3sKKyAgICBRRGVj
bGFyYXRpdmVFbmdpbmUgZW5naW5lOworICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCBjb21wb25l
bnQoJmVuZ2luZSwgUVVybCgicXJjOi8vL3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRlZmF1bHQucW1s
IikpOworICAgIGNoZWNrTm9FcnJvcnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNv
bXBvbmVudC5jcmVhdGUoKTsKKyAgICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJv
cGVydHkoInByZWZXaWR0aCIpLnRvSW50KCksIDApOworICAgIGRlbGV0ZSB3djsKK30KKwordm9p
ZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6cHJlZmVycmVkSGVpZ2h0RGVmYXVsdFRlc3QoKQor
eworICAgIFFEZWNsYXJhdGl2ZUVuZ2luZSBlbmdpbmU7CisgICAgUURlY2xhcmF0aXZlQ29tcG9u
ZW50IGNvbXBvbmVudCgmZW5naW5lLCBRVXJsKCJxcmM6Ly8vcmVzb3VyY2VzL3dlYnZpZXd0ZXN0
ZGVmYXVsdC5xbWwiKSk7CisgICAgY2hlY2tOb0Vycm9ycyhjb21wb25lbnQpOworICAgIFFPYmpl
Y3QqIHd2ID0gY29tcG9uZW50LmNyZWF0ZSgpOworICAgIFFWRVJJRlkod3YpOworICAgIFFDT01Q
QVJFKHd2LT5wcm9wZXJ0eSgicHJlZkhlaWdodCIpLnRvSW50KCksIDApOworICAgIGRlbGV0ZSB3
djsKK30KKwordm9pZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6Y2hlY2tOb0Vycm9ycyhjb25z
dCBRRGVjbGFyYXRpdmVDb21wb25lbnQmIGNvbXBvbmVudCkKK3sKKyAgICAvLyBXYWl0IHVudGls
IHRoZSBjb21wb25lbnQgaXMgcmVhZHkKKyAgICBRVFJZX1ZFUklGWShjb21wb25lbnQuaXNSZWFk
eSgpIHx8IGNvbXBvbmVudC5pc0Vycm9yKCkpOworICAgIFFWRVJJRlkoIWNvbXBvbmVudC5pc0Vy
cm9yKCkpOworfQorCitRVEVTVF9NQUlOKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3KQorI2luY2x1
ZGUgInRzdF9xZGVjbGFyYXRpdmV3ZWJ2aWV3Lm1vYyIKKworUVRfRU5EX05BTUVTUEFDRQpJbmRl
eDogU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3RzdF9xZGVjbGFy
YXRpdmV3ZWJ2aWV3LnFyYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3Fk
ZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdlYnZpZXcucXJjCShyZXZpc2lvbiAw
KQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3RzdF9xZGVj
bGFyYXRpdmV3ZWJ2aWV3LnFyYwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBACis8IURPQ1RZ
UEUgUkNDPjxSQ0MgdmVyc2lvbj0iMS4wIj4KKzxxcmVzb3VyY2U+CisgICAgPGZpbGU+cmVzb3Vy
Y2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWw8L2ZpbGU+CisgICAgPGZpbGU+cmVzb3VyY2VzL3dl
YnZpZXd0ZXN0LnFtbDwvZmlsZT4KKzwvcXJlc291cmNlPgorPC9SQ0M+CisKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rl
c3QucW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sCShyZXZpc2lvbiAwKQorKysgU291cmNl
L1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93ZWJ2aWV3dGVz
dC5xbWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQgQEAKK2ltcG9ydCBRdCA0LjcKK2ltcG9y
dCBRdFdlYktpdCAxLjAKKworRmxpY2thYmxlIHsKKyAgICBpZDogZmxpY2sKKyAgICB3aWR0aDog
NjQwCisgICAgaGVpZ2h0OiA0MDAKKyAgICBjbGlwOiB0cnVlCisgICAgY29udGVudFdpZHRoOiBt
eXdlYi53aWR0aDsgY29udGVudEhlaWdodDogbXl3ZWIuaGVpZ2h0CisgICAgcHJvcGVydHkgYWxp
YXMgbXl1cmw6IG15d2ViLnVybAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZIZWlnaHQ6IG15d2Vi
LnByZWZlcnJlZEhlaWdodAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZXaWR0aDogbXl3ZWIucHJl
ZmVycmVkV2lkdGgKKworICAgIFdlYlZpZXcgeworICAgICAgICBpZDogbXl3ZWIKKyAgICAgICAg
dXJsOiAiaHR0cDovL3F0Lm5va2lhLmNvbSIKKyAgICAgICAgc21vb3RoOiBmYWxzZQorICAgICAg
ICBzY2FsZTogMS4wCisgICAgICAgIHByZWZlcnJlZEhlaWdodDogNTAwCisgICAgICAgIHByZWZl
cnJlZFdpZHRoOiA2MDAKKyAgICAgICAgcHJlc3NHcmFiVGltZTogMTAwMAorICAgICAgICBmb2N1
czogdHJ1ZQorICAgIH0KK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0
aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dl
YnZpZXd0ZXN0ZGVmYXVsdC5xbWwJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViS2l0L3F0L3Rl
c3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjIgQEAKK2ltcG9ydCBRdCA0LjcKK2ltcG9ydCBRdFdl
YktpdCAxLjAKKworRmxpY2thYmxlIHsKKyAgICBpZDogZmxpY2sKKyAgICB3aWR0aDogNjQwCisg
ICAgaGVpZ2h0OiA0MDAKKyAgICBjbGlwOiB0cnVlCisgICAgY29udGVudFdpZHRoOiBteXdlYi53
aWR0aDsgY29udGVudEhlaWdodDogbXl3ZWIuaGVpZ2h0CisgICAgcHJvcGVydHkgYWxpYXMgbXl1
cmw6IG15d2ViLnVybAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZIZWlnaHQ6IG15d2ViLnByZWZl
cnJlZEhlaWdodAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZXaWR0aDogbXl3ZWIucHJlZmVycmVk
V2lkdGgKKworICAgIFdlYlZpZXcgeworICAgICAgICBpZDogbXl3ZWIKKyAgICAgICAgdXJsOiAi
aHR0cDovL3F0Lm5va2lhLmNvbSIKKyAgICAgICAgc21vb3RoOiBmYWxzZQorICAgICAgICBzY2Fs
ZTogMS4wCisgICAgICAgIHByZXNzR3JhYlRpbWU6IDEwMDAKKyAgICAgICAgZm9jdXM6IHRydWUK
KyAgICB9Cit9Cg==
</data>
<flag name="review"
          id="75554"
          type_id="1"
          status="-"
          setter="menard"
    />
    <flag name="commit-queue"
          id="75555"
          type_id="3"
          status="-"
          setter="menard"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83699</attachid>
            <date>2011-02-24 12:28:15 -0800</date>
            <delta_ts>2011-02-25 04:48:19 -0800</delta_ts>
            <desc>Update as per suggestions</desc>
            <filename>50222g.patch</filename>
            <type>text/plain</type>
            <size>8911</size>
            <attacher name="Gopal Raghavan">gopal.1.raghavan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTMyNykKKysrIFNvdXJjZS9XZWJLaXQvcXQv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTEtMDItMjIgIEdv
cGFsIFJhZ2hhdmFuICA8Z29wYWwuMS5yYWdoYXZhbkBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBRTUwgV2ViVmlldyBpbnNp
ZGUgYSBGbGlja2FibGUgc2hvd3MgY2hlY2tlcnMgcGF0dGVybiBhdCBzdGFydHVwCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDIyMi4KKworICAgICAg
ICBUaGlzIHBhdGNoIGZpeGVzIHRoZSBjaGVja2VyYm9hcmQgdmlzaWJsZSBhdCBzdGFydHVwIGV2
ZW4gaWYgcHJlZmVycmVkV2lkdGggYW5kIHByZWZlcnJlZEhlaWdodCBhcmUgbm90IHNldC4KKwor
ICAgICAgICAqIGRlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwOgorICAgICAgICAo
UURlY2xhcmF0aXZlV2ViVmlldzo6aW5pdCk6CisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZl
d2VidmlldzogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9xZGVj
bGFyYXRpdmV3ZWJ2aWV3LnBybzogQWRkZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy9yZXNvdXJjZXM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL3FkZWNsYXJhdGl2ZXdl
YnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0LnFtbDogQWRkZWQuCisgICAgICAgICogdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFtbDogQWRk
ZWQuCisgICAgICAgICogdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3RfcWRlY2xhcmF0aXZl
d2Vidmlldy5jcHA6IEFkZGVkLgorICAgICAgICAodHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6Omlu
aXRUZXN0Q2FzZSk6CisgICAgICAgICh0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6Y2xlYW51cFRl
c3RDYXNlKToKKyAgICAgICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3Ojppbml0KToKKyAgICAg
ICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjbGVhbnVwKToKKyAgICAgICAgKHRzdF9RRGVj
bGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QpOgorICAgICAgICAodHN0X1FEZWNs
YXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodFRlc3QpOgorICAgICAgICAodHN0X1FEZWNs
YXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QpOgorICAgICAgICAodHN0
X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZlcnJlZEhlaWdodERlZmF1bHRUZXN0KToKKyAgICAg
ICAgKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpjaGVja05vRXJyb3JzKToKKyAgICAgICAgKiB0
ZXN0cy90ZXN0cy5wcmk6CisgICAgICAgICogdGVzdHMvdGVzdHMucHJvOgorCiAyMDExLTAyLTIy
ICBBbmRyYXMgQmVjc2kgIDxhYmVjc2lAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBMYXN6bG8gR29tYm9zLgpJbmRleDogU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9xZGVj
bGFyYXRpdmV3ZWJ2aWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3F0L2RlY2xh
cmF0aXZlL3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCShyZXZpc2lvbiA3OTAxMykKKysrIFNvdXJj
ZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI3NSw2ICsyNzUsMTAgQEAgdm9pZCBRRGVjbGFyYXRpdmVXZWJWaWV3Ojppbml0
KCkKICAgICBkLT52aWV3LT5zZXRGb2N1cygpOwogICAgIFFXZWJQYWdlKiB3cCA9IG5ldyBRRGVj
bGFyYXRpdmVXZWJQYWdlKHRoaXMpOwogICAgIHNldFBhZ2Uod3ApOworICAgIGlmICghcHJlZmVy
cmVkV2lkdGgoKSkKKyAgICAgICAgc2V0UHJlZmVycmVkV2lkdGgoZC0+dmlldy0+cHJlZmVycmVk
V2lkdGgoKSk7CisgICAgaWYgKCFwcmVmZXJyZWRIZWlnaHQoKSkKKyAgICAgICAgc2V0UHJlZmVy
cmVkSGVpZ2h0KGQtPnZpZXctPnByZWZlcnJlZEhlaWdodCgpKTsKICAgICBjb25uZWN0KGQtPnZp
ZXcsIFNJR05BTChnZW9tZXRyeUNoYW5nZWQoKSksIHRoaXMsIFNMT1QodXBkYXRlRGVjbGFyYXRp
dmVXZWJWaWV3U2l6ZSgpKSk7CiAgICAgY29ubmVjdChkLT52aWV3LCBTSUdOQUwoZG91YmxlQ2xp
Y2soaW50LCBpbnQpKSwgdGhpcywgU0lHTkFMKGRvdWJsZUNsaWNrKGludCwgaW50KSkpOwogICAg
IGNvbm5lY3QoZC0+dmlldywgU0lHTkFMKHNjYWxlQ2hhbmdlZCgpKSwgdGhpcywgU0lHTkFMKGNv
bnRlbnRzU2NhbGVDaGFuZ2VkKCkpKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvdGVz
dHMucHJpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvdGVzdHMucHJpCShy
ZXZpc2lvbiA3OTAxMykKKysrIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvdGVzdHMucHJpCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw3IEBAIElOQ0xVREVQQVRIICs9IFwKICAgICAkJFBXRC8u
Li9BcGkKIAogaW5jbHVkZSguLi8uLi8uLi9XZWJLaXQucHJpKQotUVQgKz0gdGVzdGxpYiBuZXR3
b3JrCitRVCArPSB0ZXN0bGliIG5ldHdvcmsgZGVjbGFyYXRpdmUKIAogUU1BS0VfUlBBVEhESVIg
PSAkJE9VVFBVVF9ESVIvbGliICQkUU1BS0VfUlBBVEhESVIKIApJbmRleDogU291cmNlL1dlYktp
dC9xdC90ZXN0cy90ZXN0cy5wcm8KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9xdC90ZXN0
cy90ZXN0cy5wcm8JKHJldmlzaW9uIDc5MDEzKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy90
ZXN0cy5wcm8JKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACiAKIFRFTVBMQVRFID0gc3Vi
ZGlycwotU1VCRElSUyA9IHF3ZWJmcmFtZSBxd2VicGFnZSBxd2ViZWxlbWVudCBxZ3JhcGhpY3N3
ZWJ2aWV3IHF3ZWJoaXN0b3J5aW50ZXJmYWNlIHF3ZWJ2aWV3IHF3ZWJoaXN0b3J5IHF3ZWJpbnNw
ZWN0b3IgaHlicmlkUGl4bWFwCitTVUJESVJTID0gcXdlYmZyYW1lIHF3ZWJwYWdlIHF3ZWJlbGVt
ZW50IHFncmFwaGljc3dlYnZpZXcgcXdlYmhpc3RvcnlpbnRlcmZhY2UgcXdlYnZpZXcgcXdlYmhp
c3RvcnkgcWRlY2xhcmF0aXZld2VidmlldyBxd2ViaW5zcGVjdG9yIGh5YnJpZFBpeG1hcAogU1VC
RElSUyArPSBiZW5jaG1hcmtzL3BhaW50aW5nIGJlbmNobWFya3MvbG9hZGluZwpJbmRleDogU291
cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3FkZWNsYXJhdGl2ZXdlYnZp
ZXcucHJvCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZl
d2Vidmlldy9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnBybwkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9X
ZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnBy
bwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitpc0VtcHR5KE9VVFBVVF9ESVIpOiBPVVRQ
VVRfRElSID0gLi4vLi4vLi4vLi4KK2luY2x1ZGUoLi4vdGVzdHMucHJpKQorZXhpc3RzKCQke1RB
UkdFVH0ucXJjKTpSRVNPVVJDRVMgKz0gJCR7VEFSR0VUfS5xcmMKK0lOQ0xVREVQQVRIICs9IFwK
KyAgICAkJFBXRC8uLi8uLi9kZWNsYXJhdGl2ZQorCkluZGV4OiBTb3VyY2UvV2ViS2l0L3F0L3Rl
c3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy90c3Rf
cWRlY2xhcmF0aXZld2Vidmlldy5jcHAJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViS2l0L3F0
L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdlYnZpZXcuY3BwCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDgzIEBACisjaW5jbHVkZSAiLi4vdXRpbC5oIgorI2luY2x1
ZGUgPFFEZWJ1Zz4KKyNpbmNsdWRlIDxRRGVjbGFyYXRpdmVDb21wb25lbnQ+CisjaW5jbHVkZSA8
UURlY2xhcmF0aXZlRW5naW5lPgorI2luY2x1ZGUgPFFEZWNsYXJhdGl2ZVByb3BlcnR5PgorI2lu
Y2x1ZGUgPFFEZWNsYXJhdGl2ZVZpZXc+CisjaW5jbHVkZSA8UURpcj4KKyNpbmNsdWRlIDxxdGVz
dC5oPgorCitRVF9CRUdJTl9OQU1FU1BBQ0UKKworY2xhc3MgdHN0X1FEZWNsYXJhdGl2ZVdlYlZp
ZXcgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKKworcHVibGljOgorICAgIHRzdF9R
RGVjbGFyYXRpdmVXZWJWaWV3KCk7CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCBwcmVmZXJy
ZWRXaWR0aFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZEhlaWdodFRlc3QoKTsKKyAgICB2b2lk
IHByZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QoKTsKKyAgICB2b2lkIHByZWZlcnJlZEhlaWdodERl
ZmF1bHRUZXN0KCk7CisKK3ByaXZhdGU6CisgICAgdm9pZCBjaGVja05vRXJyb3JzKGNvbnN0IFFE
ZWNsYXJhdGl2ZUNvbXBvbmVudCYpOworfTsKKwordHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnRz
dF9RRGVjbGFyYXRpdmVXZWJWaWV3KCkKK3sKKyAgICBRX1VOVVNFRCh3YWl0Rm9yU2lnbmFsKQor
fQorCit2b2lkIHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRXaWR0aFRlc3QoKQor
eworICAgIFFEZWNsYXJhdGl2ZUVuZ2luZSBlbmdpbmU7CisgICAgUURlY2xhcmF0aXZlQ29tcG9u
ZW50IGNvbXBvbmVudCgmZW5naW5lLCBRVXJsKCJxcmM6Ly8vcmVzb3VyY2VzL3dlYnZpZXd0ZXN0
LnFtbCIpKTsKKyAgICBjaGVja05vRXJyb3JzKGNvbXBvbmVudCk7CisgICAgUU9iamVjdCogd3Yg
PSBjb21wb25lbnQuY3JlYXRlKCk7CisgICAgUVZFUklGWSh3dik7CisgICAgUUNPTVBBUkUod3Yt
PnByb3BlcnR5KCJwcmVmV2lkdGgiKS50b0ludCgpLCA2MDApOworfQorCit2b2lkIHRzdF9RRGVj
bGFyYXRpdmVXZWJWaWV3OjpwcmVmZXJyZWRIZWlnaHRUZXN0KCkKK3sKKyAgICBRRGVjbGFyYXRp
dmVFbmdpbmUgZW5naW5lOworICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCBjb21wb25lbnQoJmVu
Z2luZSwgUVVybCgicXJjOi8vL3Jlc291cmNlcy93ZWJ2aWV3dGVzdC5xbWwiKSk7CisgICAgY2hl
Y2tOb0Vycm9ycyhjb21wb25lbnQpOworICAgIFFPYmplY3QqIHd2ID0gY29tcG9uZW50LmNyZWF0
ZSgpOworICAgIFFWRVJJRlkod3YpOworICAgIFFDT01QQVJFKHd2LT5wcm9wZXJ0eSgicHJlZkhl
aWdodCIpLnRvSW50KCksIDUwMCk7Cit9CisKK3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6
OnByZWZlcnJlZFdpZHRoRGVmYXVsdFRlc3QoKQoreworICAgIFFEZWNsYXJhdGl2ZUVuZ2luZSBl
bmdpbmU7CisgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50IGNvbXBvbmVudCgmZW5naW5lLCBRVXJs
KCJxcmM6Ly8vcmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwiKSk7CisgICAgY2hlY2tO
b0Vycm9ycyhjb21wb25lbnQpOworICAgIFFPYmplY3QqIHd2ID0gY29tcG9uZW50LmNyZWF0ZSgp
OworICAgIFFWRVJJRlkod3YpOworICAgIFFDT01QQVJFKHd2LT5wcm9wZXJ0eSgicHJlZldpZHRo
IikudG9JbnQoKSwgMCk7Cit9CisKK3ZvaWQgdHN0X1FEZWNsYXJhdGl2ZVdlYlZpZXc6OnByZWZl
cnJlZEhlaWdodERlZmF1bHRUZXN0KCkKK3sKKyAgICBRRGVjbGFyYXRpdmVFbmdpbmUgZW5naW5l
OworICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCBjb21wb25lbnQoJmVuZ2luZSwgUVVybCgicXJj
Oi8vL3Jlc291cmNlcy93ZWJ2aWV3dGVzdGRlZmF1bHQucW1sIikpOworICAgIGNoZWNrTm9FcnJv
cnMoY29tcG9uZW50KTsKKyAgICBRT2JqZWN0KiB3diA9IGNvbXBvbmVudC5jcmVhdGUoKTsKKyAg
ICBRVkVSSUZZKHd2KTsKKyAgICBRQ09NUEFSRSh3di0+cHJvcGVydHkoInByZWZIZWlnaHQiKS50
b0ludCgpLCAwKTsKK30KKwordm9pZCB0c3RfUURlY2xhcmF0aXZlV2ViVmlldzo6Y2hlY2tOb0Vy
cm9ycyhjb25zdCBRRGVjbGFyYXRpdmVDb21wb25lbnQmIGNvbXBvbmVudCkKK3sKKyAgICAvLyBX
YWl0IHVudGlsIHRoZSBjb21wb25lbnQgaXMgcmVhZHkKKyAgICBRVFJZX1ZFUklGWShjb21wb25l
bnQuaXNSZWFkeSgpIHx8IGNvbXBvbmVudC5pc0Vycm9yKCkpOworICAgIFFWRVJJRlkoIWNvbXBv
bmVudC5pc0Vycm9yKCkpOworfQorCitRVEVTVF9NQUlOKHRzdF9RRGVjbGFyYXRpdmVXZWJWaWV3
KQorI2luY2x1ZGUgInRzdF9xZGVjbGFyYXRpdmV3ZWJ2aWV3Lm1vYyIKKworUVRfRU5EX05BTUVT
UEFDRQpJbmRleDogU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Rz
dF9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnFyYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3F0
L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvdHN0X3FkZWNsYXJhdGl2ZXdlYnZpZXcucXJjCShy
ZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3
L3RzdF9xZGVjbGFyYXRpdmV3ZWJ2aWV3LnFyYwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3IEBA
Cis8IURPQ1RZUEUgUkNDPjxSQ0MgdmVyc2lvbj0iMS4wIj4KKzxxcmVzb3VyY2U+CisgICAgPGZp
bGU+cmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWw8L2ZpbGU+CisgICAgPGZpbGU+cmVz
b3VyY2VzL3dlYnZpZXd0ZXN0LnFtbDwvZmlsZT4KKzwvcXJlc291cmNlPgorPC9SQ0M+CisKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMv
d2Vidmlld3Rlc3QucW1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMvcWRl
Y2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3QucW1sCShyZXZpc2lvbiAwKQor
KysgU291cmNlL1dlYktpdC9xdC90ZXN0cy9xZGVjbGFyYXRpdmV3ZWJ2aWV3L3Jlc291cmNlcy93
ZWJ2aWV3dGVzdC5xbWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQgQEAKK2ltcG9ydCBRdCA0
LjcKK2ltcG9ydCBRdFdlYktpdCAxLjAKKworRmxpY2thYmxlIHsKKyAgICBpZDogZmxpY2sKKyAg
ICB3aWR0aDogNjQwCisgICAgaGVpZ2h0OiA0MDAKKyAgICBjbGlwOiB0cnVlCisgICAgY29udGVu
dFdpZHRoOiBteXdlYi53aWR0aDsgY29udGVudEhlaWdodDogbXl3ZWIuaGVpZ2h0CisgICAgcHJv
cGVydHkgYWxpYXMgbXl1cmw6IG15d2ViLnVybAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZIZWln
aHQ6IG15d2ViLnByZWZlcnJlZEhlaWdodAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZXaWR0aDog
bXl3ZWIucHJlZmVycmVkV2lkdGgKKworICAgIFdlYlZpZXcgeworICAgICAgICBpZDogbXl3ZWIK
KyAgICAgICAgdXJsOiAiaHR0cDovL3F0Lm5va2lhLmNvbSIKKyAgICAgICAgc21vb3RoOiBmYWxz
ZQorICAgICAgICBzY2FsZTogMS4wCisgICAgICAgIHByZWZlcnJlZEhlaWdodDogNTAwCisgICAg
ICAgIHByZWZlcnJlZFdpZHRoOiA2MDAKKyAgICAgICAgcHJlc3NHcmFiVGltZTogMTAwMAorICAg
ICAgICBmb2N1czogdHJ1ZQorICAgIH0KK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQvcXQvdGVzdHMv
cWRlY2xhcmF0aXZld2Vidmlldy9yZXNvdXJjZXMvd2Vidmlld3Rlc3RkZWZhdWx0LnFtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVz
b3VyY2VzL3dlYnZpZXd0ZXN0ZGVmYXVsdC5xbWwJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2Vi
S2l0L3F0L3Rlc3RzL3FkZWNsYXJhdGl2ZXdlYnZpZXcvcmVzb3VyY2VzL3dlYnZpZXd0ZXN0ZGVm
YXVsdC5xbWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjIgQEAKK2ltcG9ydCBRdCA0LjcKK2lt
cG9ydCBRdFdlYktpdCAxLjAKKworRmxpY2thYmxlIHsKKyAgICBpZDogZmxpY2sKKyAgICB3aWR0
aDogNjQwCisgICAgaGVpZ2h0OiA0MDAKKyAgICBjbGlwOiB0cnVlCisgICAgY29udGVudFdpZHRo
OiBteXdlYi53aWR0aDsgY29udGVudEhlaWdodDogbXl3ZWIuaGVpZ2h0CisgICAgcHJvcGVydHkg
YWxpYXMgbXl1cmw6IG15d2ViLnVybAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZIZWlnaHQ6IG15
d2ViLnByZWZlcnJlZEhlaWdodAorICAgIHByb3BlcnR5IGFsaWFzIHByZWZXaWR0aDogbXl3ZWIu
cHJlZmVycmVkV2lkdGgKKworICAgIFdlYlZpZXcgeworICAgICAgICBpZDogbXl3ZWIKKyAgICAg
ICAgdXJsOiAiaHR0cDovL3F0Lm5va2lhLmNvbSIKKyAgICAgICAgc21vb3RoOiBmYWxzZQorICAg
ICAgICBzY2FsZTogMS4wCisgICAgICAgIHByZXNzR3JhYlRpbWU6IDEwMDAKKyAgICAgICAgZm9j
dXM6IHRydWUKKyAgICB9Cit9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>