<?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>26391</bug_id>
          
          <creation_ts>2009-06-14 15:18:59 -0700</creation_ts>
          <short_desc>Plug-ins don&apos;t always respect the cookie accept policy</short_desc>
          <delta_ts>2022-02-10 14:09:38 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>VERIFIED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.time.com/time/world/article/0,8599,1904577,00.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>35905</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeff Johnson">opendarwin</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>beidson</cc>
    
    <cc>eric</cc>
    
    <cc>lutzp</cc>
    
    <cc>rachael</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>125831</commentid>
    <comment_count>0</comment_count>
    <who name="Jeff Johnson">opendarwin</who>
    <bug_when>2009-06-14 15:18:59 -0700</bug_when>
    <thetext>Summary:
On my system, I have the HTTPCookieStorage cookieAcceptPolicy set to NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain (corresponding to the Safari preference &quot;Only from sites I visit&quot;). However, when I load the page http://www.time.com/time/world/article/0,8599,1904577,00.html with WebKit, I get a cookie from &quot;.clearspring.com&quot;, which is obviously not within the domain of &quot;time.com&quot;.

Steps to reproduce:
1) Launch Safari 4 on Mac OS X 10.5.7.
2) Open Safari preferences
3) Select Accept cookies: Only from sites I visit
4) Click &quot;Show Cookies&quot;
5) Click &quot;Remove All&quot; and &quot;Done&quot;
6) Load the page http://www.time.com/time/world/article/0,8599,1904577,00.html
7) Open preferences again
8) Click &quot;Show Cookies&quot; again

Expected results:
I only see cookies from &quot;time.com&quot;

Actual results:
In addition to cookies from &quot;time.com&quot;, I see one cookies from &quot;.clearspring.com&quot;

Regression:
This bug also occurred with the immediately preceding version of Safari on Mac OS X 10.5.7. Can&apos;t remember the exact version #, but it was 3.2.x. The bug also occurs if you use &quot;/Developer/Examples/WebKit/MiniBrowser&quot; to load the page rather than Safari.

Notes:
Running in the debugger, I set breakpoints at -[NSHTTPCookieStorage setCookie:], -[NSHTTPCookieStorage setCookieAcceptPolicy:], and -[NSHTTPCookieStorage setCookies:forURL:mainDocumentURL:], as well as at setCookies() in &quot;WebKit/WebCore/platform/mac/CookieJar.mm&quot; with git commit f8f4e69a4ceb5909eb64ea91fe1de7108710c552 (corresponding to svn r43960). The methods setCookie: and setCookieAcceptPolicy: never get called. The method setCookies:forURL:mainDocumentURL: does get called frequently, also from setCookies() in WebKit, but when printing the cookies I never see &quot;.clearspring.com&quot;. Thus, it&apos;s a mystery to me where that cookie is getting set. I guess it must be set somehow without NSHTTPCookieStorage, which may explain why it&apos;s not respecting the cookieAcceptPolicy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125832</commentid>
    <comment_count>1</comment_count>
    <who name="Jeff Johnson">opendarwin</who>
    <bug_when>2009-06-14 15:21:21 -0700</bug_when>
    <thetext>Typo in the notes: it should say &quot;The method
setCookies:forURL:mainDocumentURL: does get called frequently, ALWAYS from
setCookies() in WebKit&quot; rather than &quot;The method
setCookies:forURL:mainDocumentURL: does get called frequently, ALSO from
setCookies() in WebKit&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125841</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-06-14 15:56:33 -0700</bug_when>
    <thetext>&lt;rdar://problem/6971214&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126158</commentid>
    <comment_count>3</comment_count>
    <who name="Jeff Johnson">opendarwin</who>
    <bug_when>2009-06-16 00:13:02 -0700</bug_when>
    <thetext>In my testing, it seems that the cookie is set when the page loads the application/x-shockwave-flash URL http://widgets.clearspring.com/o/475db72337b302d4/-/-/-/

The URL request is created in -[WebNetscapePluginView loadStream]. The request by default has HTTPShouldHandleCookies YES. Then in ResourceRequest::doUpdatePlatformRequest() it calls [nsRequest setMainDocumentURL:firstPartyForCookies()], but firstPartyForCookies() returns nil.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126415</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-06-17 01:37:31 -0700</bug_when>
    <thetext>May be related to bug 9445.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197316</commentid>
    <comment_count>5</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-08 14:28:07 -0800</bug_when>
    <thetext>*** Bug 9445 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197320</commentid>
    <comment_count>6</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-08 14:30:45 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; &lt;rdar://problem/6971214&gt;

Using &lt;rdar://problem/7338359&gt; to track this now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197481</commentid>
    <comment_count>7</comment_count>
      <attachid>50280</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-08 23:50:37 -0800</bug_when>
    <thetext>Created attachment 50280
WIP fix

Work in progress.

Almost done, actually.  I&apos;m still thinking through the ResourceLoader level being the right place where the firstPartyForCookies url is set.

Currently FrameLoader handles this in ::addExtraFieldsToRequest() before handing the request off to SubresourceLoader and MainResourceLoader, which both then pipe down to ResourceLoader.  

It&apos;s kind of sad that the FrameLoader::addExtraFieldsToRequest() doesn&apos;t happen at the ResourceLoader level itself but I don&apos;t know that simply moving it is a great idea.

I&apos;ll decide something tomorrow and hopefully put it up for review in the morning.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197647</commentid>
    <comment_count>8</comment_count>
      <attachid>50321</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 10:16:56 -0800</bug_when>
    <thetext>Created attachment 50321
Don&apos;t start a ResourceLoader with a null firstPartyForCookies

After sleeping on it, I think this is the right way to go for now.  It&apos;s a shame that plugin code doesn&apos;t go through FrameLoader, and therefore doesn&apos;t automatically get the extra fields added.  

Since plug-in code is currently so strewn about and very platform specific, I think reworking it needs to be a task for that domain&apos;s expert.  I don&apos;t think there&apos;s any harm in this targeted fix for the hole in our cookie accept policy until that can happen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197648</commentid>
    <comment_count>9</comment_count>
      <attachid>50321</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 10:17:43 -0800</bug_when>
    <thetext>Comment on attachment 50321
Don&apos;t start a ResourceLoader with a null firstPartyForCookies

Better changelog coming</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197649</commentid>
    <comment_count>10</comment_count>
      <attachid>50322</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 10:22:15 -0800</bug_when>
    <thetext>Created attachment 50322
Better ChangeLog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197659</commentid>
    <comment_count>11</comment_count>
      <attachid>50322</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-03-09 10:31:37 -0800</bug_when>
    <thetext>Comment on attachment 50322
Better ChangeLog

This needs a &quot;why&quot; comment. The change log explains it well but the code needs something too.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197707</commentid>
    <comment_count>12</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 11:53:03 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/55738</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197728</commentid>
    <comment_count>13</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-03-09 12:57:55 -0800</bug_when>
    <thetext>http/tests/cookies/third-party-cookie-relaxing.html -&gt; failed
failed on the commit-bot when doing the &quot;does trunk actually build and test&quot; check before trying to commit.

I believe that failure is due to this checkin moments ago and that the bots will soon roll red. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197732</commentid>
    <comment_count>14</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 13:03:32 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; http/tests/cookies/third-party-cookie-relaxing.html -&gt; failed
&gt; failed on the commit-bot when doing the &quot;does trunk actually build and test&quot;
&gt; check before trying to commit.
&gt; 
&gt; I believe that failure is due to this checkin moments ago and that the bots
&gt; will soon roll red. :(

Looking at the layouttest failures, it&apos;s apparently that the various cookie tests don&apos;t reset themselves to a consistent state.  Amazing we didn&apos;t have problems like this with cookie tests in the past.  I will try to fix the two tests I&apos;ve added recently that have gone red because of this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197736</commentid>
    <comment_count>15</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 13:15:41 -0800</bug_when>
    <thetext>
(In reply to comment #14)
&gt; (In reply to comment #13)
&gt; &gt; http/tests/cookies/third-party-cookie-relaxing.html -&gt; failed
&gt; &gt; failed on the commit-bot when doing the &quot;does trunk actually build and test&quot;
&gt; &gt; check before trying to commit.
&gt; &gt; 
&gt; &gt; I believe that failure is due to this checkin moments ago and that the bots
&gt; &gt; will soon roll red. :(
&gt; 
&gt; Looking at the layouttest failures, it&apos;s apparently that the various cookie
&gt; tests don&apos;t reset themselves to a consistent state.  Amazing we didn&apos;t have
&gt; problems like this with cookie tests in the past.  I will try to fix the two
&gt; tests I&apos;ve added recently that have gone red because of this.

There were some cookie utility functions that were used by *SOME* cookie tests to clear the cookie state.  It doesn&apos;t seem to be used consistently.

I&apos;m using it before and after each of these two new tests to keep things in a consistent state.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197740</commentid>
    <comment_count>16</comment_count>
      <attachid>50341</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 13:21:13 -0800</bug_when>
    <thetext>Created attachment 50341
Quick review, perhaps?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197743</commentid>
    <comment_count>17</comment_count>
      <attachid>50341</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-09 13:23:59 -0800</bug_when>
    <thetext>Comment on attachment 50341
Quick review, perhaps?

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197746</commentid>
    <comment_count>18</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 13:26:20 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/55742</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197767</commentid>
    <comment_count>19</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 14:14:43 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; http://trac.webkit.org/changeset/55742

That fix apparently didn&apos;t work.  I still don&apos;t know why not.

Clearly these tests are leaking cookies, causing the failure.  I just don&apos;t know why the bots are seeing this and I can&apos;t reproduce here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>197831</commentid>
    <comment_count>20</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-09 16:09:18 -0800</bug_when>
    <thetext>SnowLeopard release bot and Leopard debug bots are clear.

I&apos;m still lost as to why Tiger and Leopard release are still failing these tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199066</commentid>
    <comment_count>21</comment_count>
    <who name="Jeff Johnson">opendarwin</who>
    <bug_when>2010-03-12 08:28:21 -0800</bug_when>
    <thetext>Verified as fixed with git commit 83853ec7af2cf0f4937a743fe99371b6592017b1 svn r55820.

The original time.com URL is no longer demonstrating the original bug with stock 10.6.2 WebKit, but I found another web site that does reproduce the original bug with 10.6.2 WebKit. Fixed in the trunk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199081</commentid>
    <comment_count>22</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-12 08:53:02 -0800</bug_when>
    <thetext>And for full closure on the failing test issue, we made changes to *really* keep the tests consistent and they seem to have stuck.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1839926</commentid>
    <comment_count>23</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-02-10 14:09:38 -0800</bug_when>
    <thetext>*** Bug 26880 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>50280</attachid>
            <date>2010-03-08 23:50:37 -0800</date>
            <delta_ts>2010-03-09 10:16:56 -0800</delta_ts>
            <desc>WIP fix</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>4239</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAJKHJldmlzaW9uIDU1NzA5KQorKysgV2Vi
Q29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTEsNiAr
MTExLDExIEBAIGJvb2wgUmVzb3VyY2VMb2FkZXI6OmxvYWQoY29uc3QgUmVzb3VyY2UKICAgICBB
U1NFUlQoIW1fZG9jdW1lbnRMb2FkZXItPmlzU3Vic3RpdHV0ZUxvYWRQZW5kaW5nKHRoaXMpKTsK
ICAgICAKICAgICBSZXNvdXJjZVJlcXVlc3QgY2xpZW50UmVxdWVzdChyKTsKKyAgICBpZiAoY2xp
ZW50UmVxdWVzdC5maXJzdFBhcnR5Rm9yQ29va2llcygpLmlzTnVsbCgpKSB7CisgICAgICAgIGlm
IChEb2N1bWVudCogZG9jdW1lbnQgPSBtX2ZyYW1lLT5kb2N1bWVudCgpKQorICAgICAgICAgICAg
Y2xpZW50UmVxdWVzdC5zZXRGaXJzdFBhcnR5Rm9yQ29va2llcyhkb2N1bWVudC0+Zmlyc3RQYXJ0
eUZvckNvb2tpZXMoKSk7CisgICAgfQorCiAgICAgd2lsbFNlbmRSZXF1ZXN0KGNsaWVudFJlcXVl
c3QsIFJlc291cmNlUmVzcG9uc2UoKSk7CiAgICAgaWYgKGNsaWVudFJlcXVlc3QuaXNOdWxsKCkp
IHsKICAgICAgICAgZGlkRmFpbChmcmFtZUxvYWRlcigpLT5jYW5jZWxsZWRFcnJvcihyKSk7Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvcmVzb3VyY2VzL2Nvb2tpZS11dGls
aXR5LnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvcmVz
b3VyY2VzL2Nvb2tpZS11dGlsaXR5LnBocAkocmV2aXNpb24gNTU3MDkpCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2Nvb2tpZXMvcmVzb3VyY2VzL2Nvb2tpZS11dGlsaXR5LnBocAkod29ya2lu
ZyBjb3B5KQpAQCAtMyw3ICszLDcgQEAgcGFyc2Vfc3RyKCRfU0VSVkVSWyJRVUVSWV9TVFJJTkci
XSk7CiAKIGZ1bmN0aW9uIGRlbGV0ZUNvb2tpZSgkdmFsdWUsICRuYW1lKQogewotICAgIHNldGNv
b2tpZSgkbmFtZSwgImRlbGV0ZWQiLCB0aW1lKCkgLSA4NjQwMCk7CisgICAgc2V0Y29va2llKCRu
YW1lLCAiZGVsZXRlZCIsIHRpbWUoKSAtIDg2NDAwLCAnLycpOwogfQogCiBpZiAoJHF1ZXJ5ZnVu
Y3Rpb24gPT0gImRlbGV0ZUNvb2tpZXMiKSB7CkBAIC0xMywxNCArMTMsMTQgQEAgaWYgKCRxdWVy
eWZ1bmN0aW9uID09ICJkZWxldGVDb29raWVzIikgewogfQogCiBpZiAoJHF1ZXJ5ZnVuY3Rpb24g
PT0gInNldEZvb0Nvb2tpZSIpIHsKLSAgICBzZXRjb29raWUoImZvbyIsICJhd2Vzb21ldmFsdWUi
LCB0aW1lKCkgKyA4NjQwMCk7CisgICAgc2V0Y29va2llKCJmb28iLCAiYXdlc29tZXZhbHVlIiwg
dGltZSgpICsgODY0MDAsICcvJyk7CiAgICAgZWNobyAiU2V0IHRoZSBmb28gY29va2llIjsKICAg
ICByZXR1cm47CiB9CiAKIGlmICgkcXVlcnlmdW5jdGlvbiA9PSAic2V0Rm9vQW5kQmFyQ29va2ll
IikgewotICAgIHNldGNvb2tpZSgiZm9vIiwgImF3ZXNvbWV2YWx1ZSIsIHRpbWUoKSArIDg2NDAw
KTsKLSAgICBzZXRjb29raWUoImJhciIsICJhbm90aGVyYXdlc29tZXZhbHVlIiwgdGltZSgpICsg
ODY0MDApOworICAgIHNldGNvb2tpZSgiZm9vIiwgImF3ZXNvbWV2YWx1ZSIsIHRpbWUoKSArIDg2
NDAwLCAnLycpOworICAgIHNldGNvb2tpZSgiYmFyIiwgImFub3RoZXJhd2Vzb21ldmFsdWUiLCB0
aW1lKCkgKyA4NjQwMCwgJy8nKTsKICAgICBlY2hvICJTZXQgdGhlIGZvbyBhbmQgYmFyIGNvb2tp
ZXMiOwogICAgIHJldHVybjsKIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvcGx1Z2lu
cy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcGx1Z2lucy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBv
bGljeS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wbHVnaW5z
L3RoaXJkLXBhcnR5LWNvb2tpZS1hY2NlcHQtcG9saWN5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTYgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorCitpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgp
OworICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKK30KKworPC9zY3Jp
cHQ+Cis8Ym9keT4KK1RoaXMgdGVzdHMgdGhhdCBwbHVnLWlucyBjYW5ub3Qgc2V0IGNvb2tpZXMg
aW4gdmlvbGF0aW9uIG9mIHRoZSAzcmQgcGFydHkgY29va2llIHBvbGljeS48YnI+Cis8aWZyYW1l
IHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL3BsdWdpbnMvcmVzb3VyY2VzL3RoaXJkLXBhcnR5
LWNvb2tpZS1hY2NlcHQtcG9saWN5LWlmcmFtZS5odG1sIj48L2lmcmFtZT4KKworPC9ib2R5Pgor
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wbHVnaW5zL3Jlc291cmNlcy90
aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS1pZnJhbWUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BsdWdpbnMvcmVzb3VyY2VzL3RoaXJkLXBhcnR5LWNv
b2tpZS1hY2NlcHQtcG9saWN5LWlmcmFtZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9wbHVnaW5zL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0
LXBvbGljeS1pZnJhbWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOSBAQAorPGh0bWw+
Cis8aGVhZD4KKzxzY3JpcHQ+CisKK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsK
KyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworfQorCis8L3NjcmlwdD4KKzxib2R5PgorPGVtYmVk
IGlkPSJwbHVnaW4iIHR5cGU9ImFwcGxpY2F0aW9uL3gtd2Via2l0LXRlc3QtbmV0c2NhcGUiPjwv
ZW1iZWQ+Cis8c2NyaXB0PgorCit2YXIgcGx1Z2luID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InBsdWdpbiIpOworCitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91
dFRlc3RDb250cm9sbGVyLnNldEFsd2F5c0FjY2VwdENvb2tpZXModHJ1ZSk7CitwbHVnaW4uZ2V0
VVJMTm90aWZ5KCJodHRwOi8vbG9jYWxob3N0OjgwMDAvY29va2llcy9yZXNvdXJjZXMvY29va2ll
LXV0aWxpdHkucGhwP3F1ZXJ5ZnVuY3Rpb249ZGVsZXRlQ29va2llcyIsIG51bGwsICJ0cnlTZXRD
b29raWUiKTsKKworZnVuY3Rpb24gdHJ5U2V0Q29va2llKCkKK3sKKyAgIGFsZXJ0KCJDb29raWVz
IHNob3VsZCBiZSBjbGVhciwgYW5kIGFyZTogJyIgKyBkb2N1bWVudC5jb29raWUgKyAiJyIpOwor
ICAgYWxlcnQoIkFib3V0IHRvIHNldCBhIGNvb2tpZSwgYnV0IG9uIGxvY2FsaG9zdCBpbnN0ZWFk
IG9mIDEyNy4wLjAuMSwgd2hpY2ggaXMgb3VyIG1haW4gZG9jdW1lbnQgZG9tYWluIC0gVGhpcyBz
aG91bGQgZmFpbC4iKTsKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAg
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2NlcHRDb29raWVzKGZhbHNlKTsK
KyAgIHBsdWdpbi5nZXRVUkxOb3RpZnkoImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9jb29raWVzL3Jl
c291cmNlcy9jb29raWUtdXRpbGl0eS5waHA/cXVlcnlmdW5jdGlvbj1zZXRGb29Db29raWUiLCBu
dWxsLCAiY29tcGxldGVUZXN0Iik7Cit9CisKK2Z1bmN0aW9uIGNvbXBsZXRlVGVzdCgpCit7Cisg
ICBhbGVydCgiQ29va2llcyBzaG91bGQgc3RpbGwgYmUgY2xlYXIsIGFuZCBhcmU6ICciICsgZG9j
dW1lbnQuY29va2llICsgIiciKTsKKyAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CisgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworfQorCis8L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="commit-queue"
          id="33379"
          type_id="3"
          status="-"
          setter="beidson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>50321</attachid>
            <date>2010-03-09 10:16:56 -0800</date>
            <delta_ts>2010-03-09 10:22:15 -0800</delta_ts>
            <desc>Don&apos;t start a ResourceLoader with a null firstPartyForCookies</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>5626</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NTcyOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTAtMDMtMDkgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS83MzM4MzU5PiBhbmQgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTI2MzkxCisKKyAgICAgICAgVGVzdDogaHR0cC90ZXN0cy9wbHVnaW5zL3RoaXJk
LXBhcnR5LWNvb2tpZS1hY2NlcHQtcG9saWN5Lmh0bWwKKworICAgICAgICAqIGxvYWRlci9SZXNv
dXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6bG9hZCk6
IERvbid0IGxvYWQgYSByZXNvdXJjZSB3aXRob3V0IGZpcnN0IGdpdmluZworICAgICAgICAgIHRo
ZSByZXF1ZXN0IGEgZmlyc3RQYXJ0eUZvckNvb2tpZXMgVVJMLgorCiAyMDEwLTAzLTA5ICBDaHJp
cyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCkluZGV4OiBXZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCShyZXZpc2lvbiA1
NTcyNSkKKysrIFdlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTExLDYgKzExMSwxMSBAQCBib29sIFJlc291cmNlTG9hZGVyOjpsb2FkKGNvbnN0IFJl
c291cmNlCiAgICAgQVNTRVJUKCFtX2RvY3VtZW50TG9hZGVyLT5pc1N1YnN0aXR1dGVMb2FkUGVu
ZGluZyh0aGlzKSk7CiAgICAgCiAgICAgUmVzb3VyY2VSZXF1ZXN0IGNsaWVudFJlcXVlc3Qocik7
CisgICAgaWYgKGNsaWVudFJlcXVlc3QuZmlyc3RQYXJ0eUZvckNvb2tpZXMoKS5pc051bGwoKSkg
eworICAgICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9mcmFtZS0+ZG9jdW1lbnQoKSkK
KyAgICAgICAgICAgIGNsaWVudFJlcXVlc3Quc2V0Rmlyc3RQYXJ0eUZvckNvb2tpZXMoZG9jdW1l
bnQtPmZpcnN0UGFydHlGb3JDb29raWVzKCkpOworICAgIH0KKwogICAgIHdpbGxTZW5kUmVxdWVz
dChjbGllbnRSZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCkpOwogICAgIGlmIChjbGllbnRSZXF1
ZXN0LmlzTnVsbCgpKSB7CiAgICAgICAgIGRpZEZhaWwoZnJhbWVMb2FkZXIoKS0+Y2FuY2VsbGVk
RXJyb3IocikpOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNTU3MjkpCisrKyBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wMy0wOSAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzczMzgzNTk+IGFuZCBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjYzOTEKKworICAgICAgICAqIGh0dHAv
dGVzdHMvY29va2llcy9yZXNvdXJjZXMvY29va2llLXV0aWxpdHkucGhwOgorICAgICAgICAqIGh0
dHAvdGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvdGhpcmQtcGFydHktY29va2llLWFjY2VwdC1wb2xp
Y3ktaWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvcGx1Z2lucy90aGly
ZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS5odG1sOiBBZGRlZC4KKwogMjAxMC0wMy0wOSAg
Q2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IERhcmluIEFkbGVyLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3Jl
c291cmNlcy9jb29raWUtdXRpbGl0eS5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9jb29raWVzL3Jlc291cmNlcy9jb29raWUtdXRpbGl0eS5waHAJKHJldmlzaW9uIDU1
NzI1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3Jlc291cmNlcy9jb29raWUt
dXRpbGl0eS5waHAJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBAIHBhcnNlX3N0cigkX1NF
UlZFUlsiUVVFUllfU1RSSU5HIl0pOwogCiBmdW5jdGlvbiBkZWxldGVDb29raWUoJHZhbHVlLCAk
bmFtZSkKIHsKLSAgICBzZXRjb29raWUoJG5hbWUsICJkZWxldGVkIiwgdGltZSgpIC0gODY0MDAp
OworICAgIHNldGNvb2tpZSgkbmFtZSwgImRlbGV0ZWQiLCB0aW1lKCkgLSA4NjQwMCwgJy8nKTsK
IH0KIAogaWYgKCRxdWVyeWZ1bmN0aW9uID09ICJkZWxldGVDb29raWVzIikgewpAQCAtMTMsMTQg
KzEzLDE0IEBAIGlmICgkcXVlcnlmdW5jdGlvbiA9PSAiZGVsZXRlQ29va2llcyIpIHsKIH0KIAog
aWYgKCRxdWVyeWZ1bmN0aW9uID09ICJzZXRGb29Db29raWUiKSB7Ci0gICAgc2V0Y29va2llKCJm
b28iLCAiYXdlc29tZXZhbHVlIiwgdGltZSgpICsgODY0MDApOworICAgIHNldGNvb2tpZSgiZm9v
IiwgImF3ZXNvbWV2YWx1ZSIsIHRpbWUoKSArIDg2NDAwLCAnLycpOwogICAgIGVjaG8gIlNldCB0
aGUgZm9vIGNvb2tpZSI7CiAgICAgcmV0dXJuOwogfQogCiBpZiAoJHF1ZXJ5ZnVuY3Rpb24gPT0g
InNldEZvb0FuZEJhckNvb2tpZSIpIHsKLSAgICBzZXRjb29raWUoImZvbyIsICJhd2Vzb21ldmFs
dWUiLCB0aW1lKCkgKyA4NjQwMCk7Ci0gICAgc2V0Y29va2llKCJiYXIiLCAiYW5vdGhlcmF3ZXNv
bWV2YWx1ZSIsIHRpbWUoKSArIDg2NDAwKTsKKyAgICBzZXRjb29raWUoImZvbyIsICJhd2Vzb21l
dmFsdWUiLCB0aW1lKCkgKyA4NjQwMCwgJy8nKTsKKyAgICBzZXRjb29raWUoImJhciIsICJhbm90
aGVyYXdlc29tZXZhbHVlIiwgdGltZSgpICsgODY0MDAsICcvJyk7CiAgICAgZWNobyAiU2V0IHRo
ZSBmb28gYW5kIGJhciBjb29raWVzIjsKICAgICByZXR1cm47CiB9CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3BsdWdpbnMvdGhpcmQtcGFydHktY29va2llLWFjY2VwdC1wb2xpY3kuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BsdWdpbnMvdGhpcmQtcGFy
dHktY29va2llLWFjY2VwdC1wb2xpY3kuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcGx1Z2lucy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE2IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4K
KworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RDb250
cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxE
b25lKCk7Cit9CisKKzwvc2NyaXB0PgorPGJvZHk+CitUaGlzIHRlc3RzIHRoYXQgcGx1Zy1pbnMg
Y2Fubm90IHNldCBjb29raWVzIGluIHZpb2xhdGlvbiBvZiB0aGUgM3JkIHBhcnR5IGNvb2tpZSBw
b2xpY3kuPGJyPgorPGlmcmFtZSBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9wbHVnaW5zL3Jl
c291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS1pZnJhbWUuaHRtbCI+PC9p
ZnJhbWU+CisKKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMv
cGx1Z2lucy9yZXNvdXJjZXMvdGhpcmQtcGFydHktY29va2llLWFjY2VwdC1wb2xpY3ktaWZyYW1l
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wbHVnaW5zL3Jlc291
cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS1pZnJhbWUuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvdGhpcmQt
cGFydHktY29va2llLWFjY2VwdC1wb2xpY3ktaWZyYW1lLmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMzkgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorCitpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgp
OworICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKK30KKworPC9zY3Jp
cHQ+Cis8Ym9keT4KKzxlbWJlZCBpZD0icGx1Z2luIiB0eXBlPSJhcHBsaWNhdGlvbi94LXdlYmtp
dC10ZXN0LW5ldHNjYXBlIj48L2VtYmVkPgorPHNjcmlwdD4KKwordmFyIHBsdWdpbiA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwbHVnaW4iKTsKKworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2NlcHRDb29raWVz
KHRydWUpOworcGx1Z2luLmdldFVSTE5vdGlmeSgiaHR0cDovL2xvY2FsaG9zdDo4MDAwL2Nvb2tp
ZXMvcmVzb3VyY2VzL2Nvb2tpZS11dGlsaXR5LnBocD9xdWVyeWZ1bmN0aW9uPWRlbGV0ZUNvb2tp
ZXMiLCBudWxsLCAidHJ5U2V0Q29va2llIik7CisKK2Z1bmN0aW9uIHRyeVNldENvb2tpZSgpCit7
CisgICBhbGVydCgiQ29va2llcyBzaG91bGQgYmUgY2xlYXIsIGFuZCBhcmU6ICciICsgZG9jdW1l
bnQuY29va2llICsgIiciKTsKKyAgIGFsZXJ0KCJBYm91dCB0byBzZXQgYSBjb29raWUsIGJ1dCBv
biBsb2NhbGhvc3QgaW5zdGVhZCBvZiAxMjcuMC4wLjEsIHdoaWNoIGlzIG91ciBtYWluIGRvY3Vt
ZW50IGRvbWFpbiAtIFRoaXMgc2hvdWxkIGZhaWwuIik7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0QWx3YXlzQWNj
ZXB0Q29va2llcyhmYWxzZSk7CisgICBwbHVnaW4uZ2V0VVJMTm90aWZ5KCJodHRwOi8vbG9jYWxo
b3N0OjgwMDAvY29va2llcy9yZXNvdXJjZXMvY29va2llLXV0aWxpdHkucGhwP3F1ZXJ5ZnVuY3Rp
b249c2V0Rm9vQ29va2llIiwgbnVsbCwgImNvbXBsZXRlVGVzdCIpOworfQorCitmdW5jdGlvbiBj
b21wbGV0ZVRlc3QoKQoreworICAgYWxlcnQoIkNvb2tpZXMgc2hvdWxkIHN0aWxsIGJlIGNsZWFy
LCBhbmQgYXJlOiAnIiArIGRvY3VtZW50LmNvb2tpZSArICInIik7CisgICBpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKQorICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURv
bmUoKTsKK30KKworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="33428"
          type_id="1"
          status="-"
          setter="beidson"
    />
    <flag name="commit-queue"
          id="33429"
          type_id="3"
          status="-"
          setter="beidson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>50322</attachid>
            <date>2010-03-09 10:22:15 -0800</date>
            <delta_ts>2010-03-09 10:31:37 -0800</delta_ts>
            <desc>Better ChangeLog</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>6439</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NTcyOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMTAtMDMtMDkgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBs
dWctaW5zIGRvbid0IGFsd2F5cyByZXNwZWN0IHRoZSBjb29raWUgYWNjZXB0IHBvbGljeS4KKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzczMzgzNTk+IGFuZCBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjYzOTEKKworICAgICAgICBUaGUgcHJvYmxlbSBpcyB0aGF0IHRo
ZSB2YXJpb3VzIHBsdWctaW4gaW1wbGVtZW50YXRpb25zIGNhbGwgaW50byBhIFJlc291cmNlTG9h
ZGVyCisgICAgICAgIGRpcmVjdGx5IGluc3RlYWQgb2YgZmlsdGVyaW5nIHRoZSByZXF1ZXN0IHRo
cm91Z2ggRnJhbWVMb2FkZXIuIFRoaXMgYnlwYXNzZWQgdGhlIHN0ZXAKKyAgICAgICAgb2YgYWRk
aW5nIGV4dHJhIGZpZWxkcyB0byB0aGUgcmVxdWVzdHMsIHN1Y2ggYXMgdGhlIGZpcnN0UGFydHlG
b3JDb29raWVzIFVSTC4KKworICAgICAgICBTaW5jZSBwbHVnLWluIGNvZGUgaXMgY3VycmVudGx5
IHNvIHN0cmV3biBhYm91dCBhbmQgdmVyeSBwbGF0Zm9ybSBzcGVjaWZpYywgSQorICAgICAgICB0
aGluayByZXdvcmtpbmcgaXQgbmVlZHMgdG8gYmUgYSB0YXNrIGZvciBkb21haW4gZXhwZXJ0cy4g
SSBkb24ndCBrbm93IHRoZSBpbXBsaWNhdGlvbnMKKyAgICAgICAgb2YgYWRkaW5nICphbGwqIHRo
ZSBleHRyYSBmaWVsZHMgdG8gcGx1Zy1pbiByZXF1ZXN0cywgZm9yIGV4YW1wbGUuCisKKyAgICAg
ICAgVGhlcmUncyBubyBoYXJtIGluIHRoaXMgdGFyZ2V0ZWQgZml4IGZvciB0aGUgaG9sZSBpbiBv
dXIgY29va2llIGFjY2VwdCBwb2xpY3kgdW50aWwKKyAgICAgICAgcGx1Zy1pbnMgY2FuIG1vcmUg
ZnVuZGFtZW50YWxseSBjaGFuZ2UuCisKKyAgICAgICAgVGVzdDogaHR0cC90ZXN0cy9wbHVnaW5z
L3RoaXJkLXBhcnR5LWNvb2tpZS1hY2NlcHQtcG9saWN5Lmh0bWwKKworICAgICAgICAqIGxvYWRl
ci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6
bG9hZCk6IERvbid0IGxvYWQgYSByZXNvdXJjZSB3aXRob3V0IGZpcnN0IGdpdmluZyB0aGUgcmVx
dWVzdCAKKyAgICAgICAgICBhIGZpcnN0UGFydHlGb3JDb29raWVzIFVSTC4KKwogMjAxMC0wMy0w
OSAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAkocmV2
aXNpb24gNTU3MjUpCisrKyBXZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTExMSw2ICsxMTEsMTEgQEAgYm9vbCBSZXNvdXJjZUxvYWRlcjo6bG9hZChj
b25zdCBSZXNvdXJjZQogICAgIEFTU0VSVCghbV9kb2N1bWVudExvYWRlci0+aXNTdWJzdGl0dXRl
TG9hZFBlbmRpbmcodGhpcykpOwogICAgIAogICAgIFJlc291cmNlUmVxdWVzdCBjbGllbnRSZXF1
ZXN0KHIpOworICAgIGlmIChjbGllbnRSZXF1ZXN0LmZpcnN0UGFydHlGb3JDb29raWVzKCkuaXNO
dWxsKCkpIHsKKyAgICAgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1fZnJhbWUtPmRvY3Vt
ZW50KCkpCisgICAgICAgICAgICBjbGllbnRSZXF1ZXN0LnNldEZpcnN0UGFydHlGb3JDb29raWVz
KGRvY3VtZW50LT5maXJzdFBhcnR5Rm9yQ29va2llcygpKTsKKyAgICB9CisKICAgICB3aWxsU2Vu
ZFJlcXVlc3QoY2xpZW50UmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSgpKTsKICAgICBpZiAoY2xp
ZW50UmVxdWVzdC5pc051bGwoKSkgewogICAgICAgICBkaWRGYWlsKGZyYW1lTG9hZGVyKCktPmNh
bmNlbGxlZEVycm9yKHIpKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU1NzI5KQorKysgTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDMtMDkg
IEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBsdWctaW5zIGRvbid0IGFsd2F5cyByZXNwZWN0
IHRoZSBjb29raWUgYWNjZXB0IHBvbGljeS4KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzczMzgz
NTk+IGFuZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjYzOTEKKwor
ICAgICAgICAqIGh0dHAvdGVzdHMvY29va2llcy9yZXNvdXJjZXMvY29va2llLXV0aWxpdHkucGhw
OgorICAgICAgICAqIGh0dHAvdGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvdGhpcmQtcGFydHktY29v
a2llLWFjY2VwdC1wb2xpY3ktaWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvcGx1Z2lucy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS5odG1sOiBBZGRlZC4K
KwogMjAxMC0wMy0wOSAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9jb29raWVzL3Jlc291cmNlcy9jb29raWUtdXRpbGl0eS5waHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3Jlc291cmNlcy9jb29raWUtdXRpbGl0eS5w
aHAJKHJldmlzaW9uIDU1NzI1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29raWVzL3Jl
c291cmNlcy9jb29raWUtdXRpbGl0eS5waHAJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBA
IHBhcnNlX3N0cigkX1NFUlZFUlsiUVVFUllfU1RSSU5HIl0pOwogCiBmdW5jdGlvbiBkZWxldGVD
b29raWUoJHZhbHVlLCAkbmFtZSkKIHsKLSAgICBzZXRjb29raWUoJG5hbWUsICJkZWxldGVkIiwg
dGltZSgpIC0gODY0MDApOworICAgIHNldGNvb2tpZSgkbmFtZSwgImRlbGV0ZWQiLCB0aW1lKCkg
LSA4NjQwMCwgJy8nKTsKIH0KIAogaWYgKCRxdWVyeWZ1bmN0aW9uID09ICJkZWxldGVDb29raWVz
IikgewpAQCAtMTMsMTQgKzEzLDE0IEBAIGlmICgkcXVlcnlmdW5jdGlvbiA9PSAiZGVsZXRlQ29v
a2llcyIpIHsKIH0KIAogaWYgKCRxdWVyeWZ1bmN0aW9uID09ICJzZXRGb29Db29raWUiKSB7Ci0g
ICAgc2V0Y29va2llKCJmb28iLCAiYXdlc29tZXZhbHVlIiwgdGltZSgpICsgODY0MDApOworICAg
IHNldGNvb2tpZSgiZm9vIiwgImF3ZXNvbWV2YWx1ZSIsIHRpbWUoKSArIDg2NDAwLCAnLycpOwog
ICAgIGVjaG8gIlNldCB0aGUgZm9vIGNvb2tpZSI7CiAgICAgcmV0dXJuOwogfQogCiBpZiAoJHF1
ZXJ5ZnVuY3Rpb24gPT0gInNldEZvb0FuZEJhckNvb2tpZSIpIHsKLSAgICBzZXRjb29raWUoImZv
byIsICJhd2Vzb21ldmFsdWUiLCB0aW1lKCkgKyA4NjQwMCk7Ci0gICAgc2V0Y29va2llKCJiYXIi
LCAiYW5vdGhlcmF3ZXNvbWV2YWx1ZSIsIHRpbWUoKSArIDg2NDAwKTsKKyAgICBzZXRjb29raWUo
ImZvbyIsICJhd2Vzb21ldmFsdWUiLCB0aW1lKCkgKyA4NjQwMCwgJy8nKTsKKyAgICBzZXRjb29r
aWUoImJhciIsICJhbm90aGVyYXdlc29tZXZhbHVlIiwgdGltZSgpICsgODY0MDAsICcvJyk7CiAg
ICAgZWNobyAiU2V0IHRoZSBmb28gYW5kIGJhciBjb29raWVzIjsKICAgICByZXR1cm47CiB9Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3BsdWdpbnMvdGhpcmQtcGFydHktY29va2llLWFj
Y2VwdC1wb2xpY3kuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Bs
dWdpbnMvdGhpcmQtcGFydHktY29va2llLWFjY2VwdC1wb2xpY3kuaHRtbAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcGx1Z2lucy90aGlyZC1wYXJ0eS1jb29raWUtYWNj
ZXB0LXBvbGljeS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE2IEBACis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdD4KKworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci53YWl0VW50aWxEb25lKCk7Cit9CisKKzwvc2NyaXB0PgorPGJvZHk+CitUaGlzIHRlc3Rz
IHRoYXQgcGx1Zy1pbnMgY2Fubm90IHNldCBjb29raWVzIGluIHZpb2xhdGlvbiBvZiB0aGUgM3Jk
IHBhcnR5IGNvb2tpZSBwb2xpY3kuPGJyPgorPGlmcmFtZSBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6
ODAwMC9wbHVnaW5zL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS1p
ZnJhbWUuaHRtbCI+PC9pZnJhbWU+CisKKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvdGhpcmQtcGFydHktY29va2llLWFjY2Vw
dC1wb2xpY3ktaWZyYW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9wbHVnaW5zL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS1pZnJh
bWUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvcGx1Z2lucy9y
ZXNvdXJjZXMvdGhpcmQtcGFydHktY29va2llLWFjY2VwdC1wb2xpY3ktaWZyYW1lLmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMzkgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorCitp
ZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOworICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUo
KTsKK30KKworPC9zY3JpcHQ+Cis8Ym9keT4KKzxlbWJlZCBpZD0icGx1Z2luIiB0eXBlPSJhcHBs
aWNhdGlvbi94LXdlYmtpdC10ZXN0LW5ldHNjYXBlIj48L2VtYmVkPgorPHNjcmlwdD4KKwordmFy
IHBsdWdpbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbHVnaW4iKTsKKworaWYgKHdpbmRv
dy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdh
eXNBY2NlcHRDb29raWVzKHRydWUpOworcGx1Z2luLmdldFVSTE5vdGlmeSgiaHR0cDovL2xvY2Fs
aG9zdDo4MDAwL2Nvb2tpZXMvcmVzb3VyY2VzL2Nvb2tpZS11dGlsaXR5LnBocD9xdWVyeWZ1bmN0
aW9uPWRlbGV0ZUNvb2tpZXMiLCBudWxsLCAidHJ5U2V0Q29va2llIik7CisKK2Z1bmN0aW9uIHRy
eVNldENvb2tpZSgpCit7CisgICBhbGVydCgiQ29va2llcyBzaG91bGQgYmUgY2xlYXIsIGFuZCBh
cmU6ICciICsgZG9jdW1lbnQuY29va2llICsgIiciKTsKKyAgIGFsZXJ0KCJBYm91dCB0byBzZXQg
YSBjb29raWUsIGJ1dCBvbiBsb2NhbGhvc3QgaW5zdGVhZCBvZiAxMjcuMC4wLjEsIHdoaWNoIGlz
IG91ciBtYWluIGRvY3VtZW50IGRvbWFpbiAtIFRoaXMgc2hvdWxkIGZhaWwuIik7CisgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuc2V0QWx3YXlzQWNjZXB0Q29va2llcyhmYWxzZSk7CisgICBwbHVnaW4uZ2V0VVJMTm90aWZ5
KCJodHRwOi8vbG9jYWxob3N0OjgwMDAvY29va2llcy9yZXNvdXJjZXMvY29va2llLXV0aWxpdHku
cGhwP3F1ZXJ5ZnVuY3Rpb249c2V0Rm9vQ29va2llIiwgbnVsbCwgImNvbXBsZXRlVGVzdCIpOwor
fQorCitmdW5jdGlvbiBjb21wbGV0ZVRlc3QoKQoreworICAgYWxlcnQoIkNvb2tpZXMgc2hvdWxk
IHN0aWxsIGJlIGNsZWFyLCBhbmQgYXJlOiAnIiArIGRvY3VtZW50LmNvb2tpZSArICInIik7Cisg
ICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLm5vdGlmeURvbmUoKTsKK30KKworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="33430"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="33431"
          type_id="3"
          status="-"
          setter="beidson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>50341</attachid>
            <date>2010-03-09 13:21:13 -0800</date>
            <delta_ts>2010-03-09 13:23:58 -0800</delta_ts>
            <desc>Quick review, perhaps?</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>3422</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDU1NzQwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMDMtMDkgIEJyYWR5IEVpZHNvbiAgPGJl
aWRzb25AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEZpeCBteSBsYXlvdXR0ZXN0IGZhaWx1cmVzIGJ5IHJlc2V0dGluZyBjb29raWVz
IGJlZm9yZSBhbmQgYWZ0ZXIgdGhlc2UgbmV3IHRlc3RzLiAgICAKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2MzkxCisKKyAgICAgICAgKiBodHRwL3Rl
c3RzL2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2llLXJlbGF4aW5nLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9wbHVnaW5zL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBv
bGljeS1pZnJhbWUuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3BsdWdpbnMvdGhpcmQtcGFy
dHktY29va2llLWFjY2VwdC1wb2xpY3kuaHRtbDoKKwogMjAxMC0wMy0wOSAgQnJhZHkgRWlkc29u
ICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2Nvb2tpZXMvdGhpcmQtcGFydHktY29va2ll
LXJlbGF4aW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jb29r
aWVzL3RoaXJkLXBhcnR5LWNvb2tpZS1yZWxheGluZy5odG1sCShyZXZpc2lvbiA1NTczOSkKKysr
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY29va2llcy90aGlyZC1wYXJ0eS1jb29raWUtcmVsYXhp
bmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwxMCArMSwxNCBAQAogPGh0bWw+CiA8aGVhZD4K
KzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvY29va2llcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8
c2NyaXB0PgogCiBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CiAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwogICAgIGxheW91dFRlc3RDb250cm9sbGVyLndh
aXRVbnRpbERvbmUoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2NlcHRD
b29raWVzKHRydWUpOworICAgIGNsZWFyQ29va2llcygpOworICAgIGxheW91dFRlc3RDb250cm9s
bGVyLnNldEFsd2F5c0FjY2VwdENvb2tpZXMoZmFsc2UpOwogfQogCiB3aW5kb3cub25tZXNzYWdl
ID0gZnVuY3Rpb24oZXZ0KQpAQCAtNzUsOCArNzksMTIgQEAgdmFyIGZ1bmN0aW9ucyA9IG5ldyBB
cnJheSgKIGZ1bmN0aW9uIHJ1bk5leHRUZXN0T3JGaW5pc2goKQogewogICAgIGlmIChjdXJyZW50
RnVuY3Rpb24gPj0gZnVuY3Rpb25zLmxlbmd0aCkgewotICAgICAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KSB7CiAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAg
ICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRBbHdheXNBY2NlcHRDb29raWVzKHRydWUp
OworICAgICAgICAgICAgY2xlYXJDb29raWVzKCk7CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5zZXRBbHdheXNBY2NlcHRDb29raWVzKGZhbHNlKTsKKyAgICAgICAgfQogICAgICAg
ICByZXR1cm47CiAgICAgfQogICAgIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wbHVn
aW5zL3RoaXJkLXBhcnR5LWNvb2tpZS1hY2NlcHQtcG9saWN5Lmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wbHVnaW5zL3RoaXJkLXBhcnR5LWNvb2tpZS1hY2NlcHQt
cG9saWN5Lmh0bWwJKHJldmlzaW9uIDU1NzM5KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9w
bHVnaW5zL3RoaXJkLXBhcnR5LWNvb2tpZS1hY2NlcHQtcG9saWN5Lmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMTAgKzEsMTQgQEAKIDxodG1sPgogPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vY29v
a2llcy9yZXNvdXJjZXMvY29va2llcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+ICAgIAogPHNjcmlw
dD4KIAogaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewogICAgIGxheW91dFRlc3RD
b250cm9sbGVyLmR1bXBBc1RleHQoKTsKICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50
aWxEb25lKCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0QWx3YXlzQWNjZXB0Q29va2ll
cyh0cnVlKTsKKyAgICBjbGVhckNvb2tpZXMoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5z
ZXRBbHdheXNBY2NlcHRDb29raWVzKGZhbHNlKTsKIH0KIAogPC9zY3JpcHQ+CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3BsdWdpbnMvcmVzb3VyY2VzL3RoaXJkLXBhcnR5LWNvb2tpZS1h
Y2NlcHQtcG9saWN5LWlmcmFtZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvdGhpcmQtcGFydHktY29va2llLWFjY2VwdC1wb2xpY3kt
aWZyYW1lLmh0bWwJKHJldmlzaW9uIDU1NzM5KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9w
bHVnaW5zL3Jlc291cmNlcy90aGlyZC1wYXJ0eS1jb29raWUtYWNjZXB0LXBvbGljeS1pZnJhbWUu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMzAsOCArMzAsMTIgQEAgZnVuY3Rpb24gdHJ5U2V0Q29v
a2llKCkKIGZ1bmN0aW9uIGNvbXBsZXRlVGVzdCgpCiB7CiAgICBhbGVydCgiQ29va2llcyBzaG91
bGQgc3RpbGwgYmUgY2xlYXIsIGFuZCBhcmU6ICciICsgZG9jdW1lbnQuY29va2llICsgIiciKTsK
LSAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKSB7CiAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9u
ZSgpOworICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLnNldEFsd2F5c0FjY2VwdENvb2tpZXMo
dHJ1ZSk7CisgICAgICAgY2xlYXJDb29raWVzKCk7CisgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuc2V0QWx3YXlzQWNjZXB0Q29va2llcyhmYWxzZSk7ICAgCisgICB9CiB9CiAKIDwvc2NyaXB0
Pgo=
</data>
<flag name="review"
          id="33460"
          type_id="1"
          status="+"
          setter="ap"
    />
    <flag name="commit-queue"
          id="33461"
          type_id="3"
          status="-"
          setter="beidson"
    />
          </attachment>
      

    </bug>

</bugzilla>