<?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>33300</bug_id>
          
          <creation_ts>2010-01-06 21:15:19 -0800</creation_ts>
          <short_desc>REGRESSION(52819?): AXLoadComplete and AXLayoutComplete causes 4 tests fail on Snow Leopard Debug bot</short_desc>
          <delta_ts>2010-01-21 16:23:50 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>33923</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cfleizach</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>177971</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-06 21:15:19 -0800</bug_when>
    <thetext>two ARIA tests fail on Snow Leopard Debug bot

They probably just need new baselines:
platform/mac/accessibility/aria-required.html
platform/mac/accessibility/aria-slider-value-change.html

--- layout-test-results/platform/mac/accessibility/aria-required-expected.txt	2010-01-06 20:45:07.000000000 -0800
+++ layout-test-results/platform/mac/accessibility/aria-required-actual.txt	2010-01-06 20:45:07.000000000 -0800
@@ -1,3 +1,5 @@
+AXLayoutComplete
+AXLoadComplete
   
 This tests that aria-required is a usable attribute.
 
--- layout-test-results/platform/mac/accessibility/aria-slider-value-change-expected.txt	2010-01-06 20:45:08.000000000 -0800
+++ layout-test-results/platform/mac/accessibility/aria-slider-value-change-actual.txt	2010-01-06 20:45:08.000000000 -0800
@@ -1,3 +1,14 @@
+AXLayoutComplete
+AXLayoutComplete
+AXLayoutComplete
+AXSelectedTextChanged
+AXLayoutComplete
+AXLayoutComplete
+AXLayoutComplete
+AXSelectedTextChanged
+AXLayoutComplete
+AXLoadComplete
+AXLayoutComplete
 slider
 This tests that its possible to increment and decrement an aria slider and have the value updated correctly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177973</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-06 21:17:40 -0800</bug_when>
    <thetext>Looks like two storage tests are also failing due to Aria logs:

storage/domstorage/localstorage/window-open.html
storage/domstorage/sessionstorage/delete-removal.html

I suspect the logs are occurring after the test as &quot;completed&quot; and are bleeding into later tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177974</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-06 21:22:43 -0800</bug_when>
    <thetext>The buildbot seems to think these failures started with http://trac.webkit.org/changeset/52896.  I suspect these failures are just intermittent as r52896 looks completely unrelated.

I suspect the actual catalyst of this regression is from http://trac.webkit.org/changeset/52819.  However the real culprit is probably that we aren&apos;t properly canceling all actions that might cause later logging between tests inside DRT.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177975</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-06 21:23:15 -0800</bug_when>
    <thetext>Unfortunately r52819 is too long ago for the buildbots to still have data about that release, so I&apos;m just guessing that that is related.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>177982</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-06 21:31:59 -0800</bug_when>
    <thetext>Yes, definitely intermittent.  52897 didn&apos;t fail, but 52898 did.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178006</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-06 22:35:57 -0800</bug_when>
    <thetext>The AXLoadComplete disease has struck Leopard as well!

http://build.webkit.org/results/Leopard%20Intel%20Debug%20(Tests)/r52899%20(8958)/results.html
svg/W3C-SVG-1.1/linking-a-04-t.svg
svg/W3C-SVG-1.1/linking-a-05-t.svg
svg/W3C-SVG-1.1/linking-a-07-t.svg
svg/W3C-SVG-1.1/linking-uri-01-b.svg
svg/W3C-SVG-1.1/linking-uri-02-b.svg

Those 5 all failed due to the same AXLoadComplete spew in their results.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178007</commentid>
    <comment_count>6</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-06 22:37:03 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; The AXLoadComplete disease has struck Leopard as well!


Did a NSLog get left in somewhere?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178008</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-06 22:38:41 -0800</bug_when>
    <thetext>I&apos;m not sure what these are from.  They seem to be intermittent, and only seem to happen on the slow bots (the Debug bots).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178401</commentid>
    <comment_count>8</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-01-07 15:13:23 -0800</bug_when>
    <thetext>AccessibilityUIElement::addNotificationListener is called to set a notification listener.  I don’t see anything that clears out the notification listener between tests.  I’m also not sure that the code is safe: it stores a reference to a JSObjectRef in to a global variable without first protecting it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178406</commentid>
    <comment_count>9</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-07 15:19:28 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; AccessibilityUIElement::addNotificationListener is called to set a notification
&gt; listener.  I don’t see anything that clears out the notification listener
&gt; between tests.  I’m also not sure that the code is safe: it stores a reference
&gt; to a JSObjectRef in to a global variable without first protecting it.

Mark, do you know what needs to be done to clear out the listener between tests. And how to protect the variable? if so, please file a bug for me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178418</commentid>
    <comment_count>10</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-01-07 15:46:07 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; AccessibilityUIElement::addNotificationListener is called to set a notification
&gt; listener.  I don’t see anything that clears out the notification listener
&gt; between tests.  I’m also not sure that the code is safe: it stores a reference
&gt; to a JSObjectRef in to a global variable without first protecting it.

I guess that doesn’t explain how it would show up in the test output, since the only place addNotificationListener is used is in platform/mac/accessibility/aria-liveregions-notifications.html where the notification is not displayed anywhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178497</commentid>
    <comment_count>11</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-07 20:08:17 -0800</bug_when>
    <thetext>Hit this again in another random test:
http://build.webkit.org/results/Leopard%20Intel%20Debug%20(Tests)/r52967%20(9012)/svg/W3C-SVG-1.1/animate-elem-78-t-pretty-diff.html

Need to figure out how those logs are happening in the first place.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178499</commentid>
    <comment_count>12</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-07 20:21:05 -0800</bug_when>
    <thetext>I was wrong, these are not ARIA* messages, they are AX* messages.  I don&apos;t see these anywhere in any layout test result.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178503</commentid>
    <comment_count>13</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-07 20:32:21 -0800</bug_when>
    <thetext>I expect that some test is registering an AX NotificationListener, and then it&apos;s never getting unset (just as Mark said above).

Since 
static JSObjectRef AXNotificationFunctionCallback = 0;

is static in:
http://trac.webkit.org/browser/trunk/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm#L2662

we can just clear it in our &quot;reset state&quot; callback.

I can write that patch.  It will be a hack, but someone with more AX knowledge can also write a better patch which is less of a hack.  Either way, we need to make the bots green again asap.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178504</commentid>
    <comment_count>14</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-07 20:36:17 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; I expect that some test is registering an AX NotificationListener, and then
&gt; it&apos;s never getting unset (just as Mark said above).
&gt; 
&gt; Since 
&gt; static JSObjectRef AXNotificationFunctionCallback = 0;
&gt; 
&gt; is static in:
&gt; http://trac.webkit.org/browser/trunk/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm#L2662

there&apos;s only one test that registers
platform/mac/accessibility/aria-liveregions-notifications.html

&gt; 
&gt; we can just clear it in our &quot;reset state&quot; callback.
&gt; 
&gt; I can write that patch.  It will be a hack, but someone with more AX knowledge
&gt; can also write a better patch which is less of a hack.  Either way, we need to
&gt; make the bots green again asap.

I&apos;ll be looking into this some more tonite so that the notification callbacks are not so static and get cleared approriately</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178509</commentid>
    <comment_count>15</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-07 21:01:15 -0800</bug_when>
    <thetext>I just wrote a hack patch.  Testing it now.  If you jump on IRC we can discuss.  I&apos;m happy to leave this to you to fix. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178510</commentid>
    <comment_count>16</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-07 21:03:25 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; I just wrote a hack patch.  Testing it now.  If you jump on IRC we can discuss.
&gt;  I&apos;m happy to leave this to you to fix. :)

can&apos;t talk now. commit your patch and i&apos;ll work with it. it&apos;ll be helpful to see what you do. thanx</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178515</commentid>
    <comment_count>17</comment_count>
      <attachid>46110</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-07 21:13:37 -0800</bug_when>
    <thetext>Created attachment 46110
Speculative (hackish) fix, work in progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178520</commentid>
    <comment_count>18</comment_count>
      <attachid>46111</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-07 21:45:46 -0800</bug_when>
    <thetext>Created attachment 46111
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178521</commentid>
    <comment_count>19</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-07 21:47:28 -0800</bug_when>
    <thetext>Chris:  I&apos;ve posted a patch to skip the test for now.  I also posted my (untested) work in progress hackish fix.  This way you now have no real rush, and can fix this when you have time.  We&apos;ll leave this bug open after the Skipped patch lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178523</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-07 21:49:34 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 46111 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178537</commentid>
    <comment_count>21</comment_count>
      <attachid>46113</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-07 23:20:00 -0800</bug_when>
    <thetext>Created attachment 46113
patch

This is my attempt to address the problems in the first iteration of this

We no longer use a single static callback variable, and we clear out the value being kept in AccessibilityObjectWrapper</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178538</commentid>
    <comment_count>22</comment_count>
      <attachid>46113</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-07 23:20:38 -0800</bug_when>
    <thetext>Comment on attachment 46113
patch

wrong patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178539</commentid>
    <comment_count>23</comment_count>
      <attachid>46114</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-07 23:21:05 -0800</bug_when>
    <thetext>Created attachment 46114
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178540</commentid>
    <comment_count>24</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-07 23:29:05 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 46114 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178551</commentid>
    <comment_count>25</comment_count>
      <attachid>46114</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-08 00:40:29 -0800</bug_when>
    <thetext>Comment on attachment 46114
patch

I think this has a very strange API for this being static.  I think that the JS API needs to be reconsidered long term.  This should be a method on AccessibiltyController instead of ObjectWraper since it listens to all notifications, not just one.

But if this fixes the bug, then I&apos;m OK with this.  If you agree, please file a new bug about fixing the API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178578</commentid>
    <comment_count>26</comment_count>
      <attachid>46111</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-08 02:19:23 -0800</bug_when>
    <thetext>Comment on attachment 46111
Patch

I accidentally committed this patch:
Committed r52979: &lt;http://trac.webkit.org/changeset/52979&gt;

But I won&apos;t roll it out for now, because it will actually keep the tree greener for the next 12 hours before you wake and land yours. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178691</commentid>
    <comment_count>27</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-08 08:38:21 -0800</bug_when>
    <thetext>(In reply to comment #26)


https://bugs.webkit.org/show_bug.cgi?id=33388</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178695</commentid>
    <comment_count>28</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-01-08 09:24:32 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/52994</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>46110</attachid>
            <date>2010-01-07 21:13:37 -0800</date>
            <delta_ts>2010-01-07 21:45:41 -0800</delta_ts>
            <desc>Speculative (hackish) fix, work in progress</desc>
            <filename>bug-33300-20100107211336.patch</filename>
            <type>text/plain</type>
            <size>3851</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQuaCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnQuaAppbmRleCA3NDQxYWU3Li4xOTM2MjM5IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKKysrIGIvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCkBAIC0xNTksNyArMTU5LDggQEAg
cHVibGljOgogICAgIC8vIE5vdGlmaWNhdGlvbnMKICAgICAvLyBGdW5jdGlvbiBjYWxsYmFjayBz
aG91bGQgdGFrZSBvbmUgYXJndW1lbnQsIHRoZSBuYW1lIG9mIHRoZSBub3RpZmljYXRpb24uCiAg
ICAgYm9vbCBhZGROb3RpZmljYXRpb25MaXN0ZW5lcihKU09iamVjdFJlZiBmdW5jdGlvbkNhbGxi
YWNrKTsKLSAgICAKKyAgICBzdGF0aWMgdm9pZCBjbGVhckFsbE5vdGlmaWNhdGlvbkxpc3RlbmVy
cygpOworCiBwcml2YXRlOgogICAgIHN0YXRpYyBKU0NsYXNzUmVmIGdldEpTQ2xhc3MoKTsKIApk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlV
SUVsZW1lbnRNYWMubW0gYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJp
bGl0eVVJRWxlbWVudE1hYy5tbQppbmRleCBlNmRmYWY1Li5hODM4MTg1IDEwMDY0NAotLS0gYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5t
bQorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxl
bWVudE1hYy5tbQpAQCAtNzU1LDYgKzc1NSw4IEBAIEpTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OnVybCgpCiAKIC8vIFRoZSBKYXZhU2NyaXB0IGNhbGxiYWNrIHdlJ2xsIHVzZSB3
aGVuIHdlIGdldCBhIG5vdGlmaWNhdGlvbgogc3RhdGljIEpTT2JqZWN0UmVmIEFYTm90aWZpY2F0
aW9uRnVuY3Rpb25DYWxsYmFjayA9IDA7CisvLyBGSVhNRTogVGhpcyBpcyBhIGhhY2sgdG8gbGV0
IHVzIGFjY2VzcyB0aGUgQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgd2hlbiBjbGVhckFsbE5v
dGlmaWNhdGlvbkxpc3RlbmVycygpIGlzIGNhbGxlZC4KK3N0YXRpYyBOU09iamVjdCAqc2F2ZWRQ
bGF0Zm9ybVVJRWxlbWVudCA9IDA7CiAKIHN0YXRpYyB2b2lkIF9hY2Nlc3NpYmlsaXR5Tm90aWZp
Y2F0aW9uQ2FsbGJhY2soaWQgZWxlbWVudCwgTlNTdHJpbmcqIG5vdGlmaWNhdGlvbikKIHsKQEAg
LTc3Miw3ICs3NzQsMTkgQEAgYm9vbCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphZGROb3RpZmlj
YXRpb25MaXN0ZW5lcihKU09iamVjdFJlZiBmdW5jdGlvbkNhbGxiYWMKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogIAogICAgIEFYTm90aWZpY2F0aW9uRnVuY3Rpb25DYWxsYmFjayA9IGZ1bmN0aW9u
Q2FsbGJhY2s7Ci0gICAgW3BsYXRmb3JtVUlFbGVtZW50KCkgYWNjZXNzaWJpbGl0eVNldFBvc3Rl
ZE5vdGlmaWNhdGlvbkNhbGxiYWNrOl9hY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uQ2FsbGJhY2td
OworICAgIFtzYXZlZFBsYXRmb3JtVUlFbGVtZW50IHJlbGVhc2VdOworICAgIHNhdmVkUGxhdGZv
cm1VSUVsZW1lbnQgPSBbcGxhdGZvcm1VSUVsZW1lbnQoKSByZXRhaW5dCisgICAgW3NhdmVkUGxh
dGZvcm1VSUVsZW1lbnQgYWNjZXNzaWJpbGl0eVNldFBvc3RlZE5vdGlmaWNhdGlvbkNhbGxiYWNr
Ol9hY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uQ2FsbGJhY2tdOwogICAgIHJldHVybiB0cnVlOwog
fQogCitib29sIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmNsZWFyQWxsTm90aWZpY2F0aW9uTGlz
dGVuZXJzKCkKK3sKKyAgICAvLyBGSVhNRTogVGhpcyBoYWNrIGRlcGVuZHMgb24gdGhlIGZhY3Qg
dGhhdCB3ZSBrbm93CisgICAgLy8gW0FjY2Vzc2libGl0eU9iamVjdFdyYXBwZXIgYWNjZXNzaWJp
bGl0eVNldFBvc3RlZE5vdGlmaWNhdGlvbkNhbGxiYWNrXQorICAgIC8vIHVzZXMgYSBzdGF0aWMg
dG8gc3RvcmUgdGhlIGNhbGxiYWNrLgorICAgIC8vIFdlIGhhdmUgbm8gd2F5IHRvIGdldCB0byBh
IHBsYXRmb3JtVUlFbGVtZW50IChBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcikgZnJvbSB0aGlz
IGNhbGwsIHNvIHdlIHNhdmUgb25lIGZyb20gYmVmb3JlLgorICAgIFtzYXZlZFBsYXRmb3JtVUlF
bGVtZW50IGFjY2Vzc2liaWxpdHlTZXRQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFjazowXTsKKyAg
ICBbc2F2ZWRQbGF0Zm9ybVVJRWxlbWVudCByZWxlYXNlXTsKKyAgICBzYXZlZFBsYXRmb3JtVUlF
bGVtZW50ID0gMDsKK30KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9EdW1wUmVuZGVyVHJlZS5tbSBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1w
UmVuZGVyVHJlZS5tbQppbmRleCAxMmYyMTZlLi5jMWFkZWJmIDEwMDY0NAotLS0gYS9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KKysrIGIvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCkBAIC0xMDI5LDYgKzEwMjks
MTggQEAgc3RhdGljIHZvaWQgaW52YWxpZGF0ZUFueVByZXZpb3VzV2FpdFRvRHVtcFdhdGNoZG9n
KCkKICAgICB9CiB9CiAKKy8vIE1ha2Ugc3VyZSBpdCdzIGltcG9zc2libGUgZm9yIHRoaXMgdGVz
dCdzIG91dHB1dCB0byBibGVlZCBpbnRvIHRoZSBuZXh0IG9uZS4KK3N0YXRpYyB2b2lkIHN0b3BB
bGxMb2dzQmVmb3JlRW5kaW5nVGVzdCgpCit7CisgICAgLy8gU3RvcCB0aGUgd2F0Y2hkb2cgdGhy
ZWFkIGJlZm9yZSB3ZSBsZWF2ZSB0aGlzIHRlc3QgdG8gbWFrZSBzdXJlIGl0IGRvZXNuJ3QKKyAg
ICAvLyBmaXJlIGluIGJldHdlZW4gdGVzdHMgY2F1c2luZyB0aGUgbmV4dCB0ZXN0IHRvIGZhaWwu
CisgICAgLy8gVGhpcyBpcyBhIHNwZWN1bGF0aXZlIGZpeCBmb3I6IGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjMzOQorICAgIGludmFsaWRhdGVBbnlQcmV2aW91c1dh
aXRUb0R1bXBXYXRjaGRvZygpOworCisgICAgLy8gVW5yZWdpc3RlciBhbnkgQVggTm90aWZpY2F0
aW9uIGxpc3RlbmVycy4KKyAgICBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpjbGVhckFsbE5vdGlm
aWNhdGlvbkxpc3RlbmVycygpOyAgICAKK30KKwogdm9pZCBkdW1wKCkKIHsKICAgICBpbnZhbGlk
YXRlQW55UHJldmlvdXNXYWl0VG9EdW1wV2F0Y2hkb2coKTsKQEAgLTEwNzUsMTAgKzEwODcsNyBA
QCB2b2lkIGR1bXAoKQogICAgICAgICB9IGVsc2UKICAgICAgICAgICAgIHByaW50ZigiRVJST1I6
IG5pbCByZXN1bHQgZnJvbSAlcyIsIG1ldGhvZE5hbWVTdHJpbmdGb3JGYWlsZWRUZXN0KCkpOwog
Ci0gICAgICAgIC8vIFN0b3AgdGhlIHdhdGNoZG9nIHRocmVhZCBiZWZvcmUgd2UgbGVhdmUgdGhp
cyB0ZXN0IHRvIG1ha2Ugc3VyZSBpdCBkb2Vzbid0Ci0gICAgICAgIC8vIGZpcmUgaW4gYmV0d2Vl
biB0ZXN0cyBjYXVzaW5nIHRoZSBuZXh0IHRlc3QgdG8gZmFpbC4KLSAgICAgICAgLy8gVGhpcyBp
cyBhIHNwZWN1bGF0aXZlIGZpeCBmb3I6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zMjMzOQotICAgICAgICBpbnZhbGlkYXRlQW55UHJldmlvdXNXYWl0VG9EdW1wV2F0
Y2hkb2coKTsKKyAgICAgICAgc3RvcEFsbExvZ3NCZWZvcmVFbmRpbmdUZXN0KCkKIAogICAgICAg
ICBpZiAocHJpbnRTZXBhcmF0b3JzKSB7CiAgICAgICAgICAgICBwdXRzKCIjRU9GIik7ICAgICAg
IC8vIHRlcm1pbmF0ZSB0aGUgY29udGVudCBibG9jawo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>46111</attachid>
            <date>2010-01-07 21:45:46 -0800</date>
            <delta_ts>2010-01-08 02:19:22 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-33300-20100107214544.patch</filename>
            <type>text/plain</type>
            <size>1423</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA4ZWY1NDlmLi5iMTlmMDA1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDEt
MDcgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJFR1JFU1NJT04oNTI4MTk/KTogQVhMb2FkQ29t
cGxldGUgYW5kIEFYTGF5b3V0Q29tcGxldGUgY2F1c2VzIDQgdGVzdHMgZmFpbCBvbiBTbm93IExl
b3BhcmQgRGVidWcgYm90CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zMzMwMAorCisgICAgICAgIFNraXBwaW5nIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmls
aXR5L2FyaWEtbGl2ZXJlZ2lvbnMtbm90aWZpY2F0aW9ucy5odG1sCisgICAgICAgIHRvIG1ha2Ug
dGhlIGJvdHMgZ3JlZW4gdW50aWwgQ2hyaXMgRmxlaXphY2ggY2FuIGZpeCB0aGUgQVggTm90aWZp
Y2F0aW9uIHN5c3RlbQorICAgICAgICB0byBjb3JyZWN0bHkgdW5yZWdpc3RlciBsb2dnaW5nIGNh
bGxiYWNrcy4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy9Ta2lwcGVkOgorCiAyMDEwLTAxLTA3
ICBTdGVwaGFuaWUgTGV3aXMgIDxzbGV3aXNAYXBwbGUuY29tPgogCiAgICAgICAgIFJvbGxvdXQg
aHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNTI3NTYgZHVlIHRvIGEgbGFyZ2UgcGVy
Zm9ybWFuY2UgcmVncmVzc2lvbi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKaW5kZXggNDIxYjE3
ZC4uMWZlZGNkOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKQEAgLTk5LDMgKzk5LDcgQEAg
ZmFzdC9ldmVudHMvYmFzaWMtdG91Y2gtZXZlbnRzLmh0bWwKICMgVGhpcyB0ZXN0IGlzIGNhdXNp
bmcgYSBsb2cgbWVzc2FnZSB0byBvY2N1ciBhZnRlciB0aGUgdGVzdCwgdGh1cyBjYXVzaW5nIHRo
ZSBuZXh0IHRlc3QgYWZ0ZXIgaXQgdG8gZmFpbDoKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTMzMjU2CiBmYXN0L3dlYnNvY2tldHMvd2Vic29ja2V0LWV2ZW50LXRh
cmdldC5odG1sCisKKyMgVGhpcyB0ZXN0IGlzIGNhdXNpbmcgbGF0ZXIgdGVzdHMgdG8gZmFpbAor
IyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzMzMDAKK3BsYXRmb3Jt
L21hYy9hY2Nlc3NpYmlsaXR5L2FyaWEtbGl2ZXJlZ2lvbnMtbm90aWZpY2F0aW9ucy5odG1sCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>46113</attachid>
            <date>2010-01-07 23:20:00 -0800</date>
            <delta_ts>2010-01-07 23:20:37 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>5443</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MjkwMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTAtMDEtMDYgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFw
cGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBWDogQ1NTIGNvbnRlbnQgbm90IHJldHVybmVkIGNvcnJlY3RseSBpbiBBWAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzMzMDgKKworICAgICAgICBU
ZXN0OiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9jc3MtY29udGVudC1hdHRyaWJ1dGUuaHRt
bAorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnRleHRVbmRl
ckVsZW1lbnQpOgorCiAyMDEwLTAxLTA2ICBLaW51a28gWWFzdWRhICA8a2ludWtvQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAJKHJl
dmlzaW9uIDUyNzg2KQorKysgV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5k
ZXJPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NCw2ICs2NCw3IEBACiAjaW5jbHVkZSAi
UmVuZGVyTWVudUxpc3QuaCIKICNpbmNsdWRlICJSZW5kZXJUZXh0LmgiCiAjaW5jbHVkZSAiUmVu
ZGVyVGV4dENvbnRyb2wuaCIKKyNpbmNsdWRlICJSZW5kZXJUZXh0RnJhZ21lbnQuaCIKICNpbmNs
dWRlICJSZW5kZXJUaGVtZS5oIgogI2luY2x1ZGUgIlJlbmRlclZpZXcuaCIKICNpbmNsdWRlICJS
ZW5kZXJXaWRnZXQuaCIKQEAgLTc5MSw2ICs3OTIsMTQgQEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlS
ZW5kZXJPYmplY3Q6OnRleHRVbgogICAgICAgICB9CiAgICAgfQogICAgIAorICAgIC8vIFNvbWV0
aW1lcyB0ZXh0IGZyYWdtZW50cyBkb24ndCBoYXZlIE5vZGUncyBhc3NvY2lhdGVkIHdpdGggdGhl
bSAobGlrZSB3aGVuCisgICAgLy8gQ1NTIGNvbnRlbnQgaXMgdXNlZCB0byBpbnNlcnQgdGV4dCku
CisgICAgaWYgKG1fcmVuZGVyZXItPmlzVGV4dCgpKSB7CisgICAgICAgIFJlbmRlclRleHQqIHJl
bmRlclRleHRPYmplY3QgPSB0b1JlbmRlclRleHQobV9yZW5kZXJlcik7CisgICAgICAgIGlmIChy
ZW5kZXJUZXh0T2JqZWN0LT5pc1RleHRGcmFnbWVudCgpKQorICAgICAgICAgICAgcmV0dXJuIFN0
cmluZyhzdGF0aWNfY2FzdDxSZW5kZXJUZXh0RnJhZ21lbnQqPihtX3JlbmRlcmVyKS0+Y29udGVu
dFN0cmluZygpKTsKKyAgICB9CisgICAgCiAgICAgLy8gcmV0dXJuIHRoZSBudWxsIHN0cmluZyBm
b3IgYW5vbnltb3VzIHRleHQgYmVjYXVzZSBpdCBpcyBub24tdHJpdmlhbCB0byBnZXQKICAgICAv
LyB0aGUgYWN0dWFsIHRleHQgYW5kLCBzbyBmYXIsIHRoYXQgaXMgbm90IG5lZWRlZAogICAgIHJl
dHVybiBTdHJpbmcoKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyOTAyKQorKysgTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDEtMDYgIENo
cmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBWDogQ1NTIGNvbnRlbnQgbm90IHJldHVybmVk
IGNvcnJlY3RseSBpbiBBWAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzMzMDgKKworICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2Nz
cy1jb250ZW50LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRm
b3JtL21hYy9hY2Nlc3NpYmlsaXR5L2Nzcy1jb250ZW50LWF0dHJpYnV0ZS5odG1sOiBBZGRlZC4K
KwogMjAxMC0wMS0wNiAgS2ludWtvIFlhc3VkYSAgPGtpbnVrb0BjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvYWNjZXNzaWJpbGl0eS9jc3MtY29udGVudC1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2Nzcy1j
b250ZW50LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9jc3MtY29udGVudC1hdHRyaWJ1dGUtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE3IEBACitTQU1QTEUKKworVGhpcyB0ZXN0
cyB0aGF0IHdoZW4gdGhlIGNvbnRlbnQgYXR0cmlidXRlIGluIENTUyBpcyB1c2VkLCB0aGUgY29y
cmVjdCB2YWx1ZXMgYXJlIHJldHVybmVkLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworUEFTUyBib2R5LmNoaWxkQXRJbmRleCgwKS5jaGlsZEF0SW5kZXgoMCkucm9sZSBpcyAnQVhS
b2xlOiBBWFN0YXRpY1RleHQnCitQQVNTIGJvZHkuY2hpbGRBdEluZGV4KDApLmNoaWxkQXRJbmRl
eCgxKS5yb2xlIGlzICdBWFJvbGU6IEFYU3RhdGljVGV4dCcKK1BBU1MgYm9keS5jaGlsZEF0SW5k
ZXgoMCkuY2hpbGRBdEluZGV4KDIpLnJvbGUgaXMgJ0FYUm9sZTogQVhTdGF0aWNUZXh0JworUEFT
UyBib2R5LmNoaWxkQXRJbmRleCgwKS5jaGlsZEF0SW5kZXgoMCkuc3RyaW5nVmFsdWUgaXMgJ0FY
VmFsdWU6IFRoaXMgaXMgYScKK1BBU1MgYm9keS5jaGlsZEF0SW5kZXgoMCkuY2hpbGRBdEluZGV4
KDEpLnN0cmluZ1ZhbHVlIGlzICdBWFZhbHVlOiBTQU1QTEUnCitQQVNTIGJvZHkuY2hpbGRBdElu
ZGV4KDApLmNoaWxkQXRJbmRleCgyKS5zdHJpbmdWYWx1ZSBpcyAnQVhWYWx1ZTogSGVhZGxpbmUn
CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvY3NzLWNvbnRlbnQtYXR0
cmlidXRlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vz
c2liaWxpdHkvY3NzLWNvbnRlbnQtYXR0cmlidXRlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9jc3MtY29udGVudC1hdHRyaWJ1dGUu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw1MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5j
c3MiPgorPHNjcmlwdD4KK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSBmYWxzZTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKworICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgCisgICAgICAg
IGgxOmJlZm9yZSB7CisgICAgICAgICAgICBjb250ZW50OiAnVGhpcyBpcyBhJzsKKyAgICAgICAg
fQorICAgIAorICAgICAgICBoMTphZnRlciB7CisgICAgICAgICAgICBjb250ZW50OiAnSGVhZGxp
bmUnOworICAgICAgICB9CisgICAgICAgICAKKyAgICA8L3N0eWxlPgorCis8L2hlYWQ+Cis8Ym9k
eSBpZD0iYm9keSI+Cis8aDE+U0FNUExFPC9oMT4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKworICAgIGRlc2NyaXB0aW9u
KCJUaGlzIHRlc3RzIHRoYXQgd2hlbiB0aGUgY29udGVudCBhdHRyaWJ1dGUgaW4gQ1NTIGlzIHVz
ZWQsIHRoZSBjb3JyZWN0IHZhbHVlcyBhcmUgcmV0dXJuZWQuIik7CisKKyAgICBpZiAod2luZG93
LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7CisKKyAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiYm9keSIpLmZvY3VzKCk7CisgICAgICAgICAgdmFyIGJvZHkgPSBhY2Nlc3NpYmls
aXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudDsKKworICAgICAgICAgIC8vIFRlc3QgdGhhdCBh
bGwgdGhyZWUgY2hpbGRyZW4gaW4gdGhlIGhlYWRlciBhcHBlYXIgd2l0aCB0aGUgY29ycmVjdCB2
YWx1ZXMuCisgICAgICAgICAgc2hvdWxkQmUoImJvZHkuY2hpbGRBdEluZGV4KDApLmNoaWxkQXRJ
bmRleCgwKS5yb2xlIiwgIidBWFJvbGU6IEFYU3RhdGljVGV4dCciKTsKKyAgICAgICAgICBzaG91
bGRCZSgiYm9keS5jaGlsZEF0SW5kZXgoMCkuY2hpbGRBdEluZGV4KDEpLnJvbGUiLCAiJ0FYUm9s
ZTogQVhTdGF0aWNUZXh0JyIpOworICAgICAgICAgIHNob3VsZEJlKCJib2R5LmNoaWxkQXRJbmRl
eCgwKS5jaGlsZEF0SW5kZXgoMikucm9sZSIsICInQVhSb2xlOiBBWFN0YXRpY1RleHQnIik7CisK
KyAgICAgICAgICBzaG91bGRCZSgiYm9keS5jaGlsZEF0SW5kZXgoMCkuY2hpbGRBdEluZGV4KDAp
LnN0cmluZ1ZhbHVlIiwgIidBWFZhbHVlOiBUaGlzIGlzIGEnIik7CisgICAgICAgICAgc2hvdWxk
QmUoImJvZHkuY2hpbGRBdEluZGV4KDApLmNoaWxkQXRJbmRleCgxKS5zdHJpbmdWYWx1ZSIsICIn
QVhWYWx1ZTogU0FNUExFJyIpOworICAgICAgICAgIHNob3VsZEJlKCJib2R5LmNoaWxkQXRJbmRl
eCgwKS5jaGlsZEF0SW5kZXgoMikuc3RyaW5nVmFsdWUiLCAiJ0FYVmFsdWU6IEhlYWRsaW5lJyIp
OworICAgIH0KKworICAgIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKwor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>46114</attachid>
            <date>2010-01-07 23:21:05 -0800</date>
            <delta_ts>2010-01-08 00:40:28 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>6784</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1Mjk3NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMTAtMDEtMDcgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFw
cGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBSRUdSRVNTSU9OKDUyODE5Pyk6IEFYTG9hZENvbXBsZXRlIGFuZCBBWExheW91dENvbXBsZXRl
IGNhdXNlcyA0IHRlc3RzIGZhaWwgb24gU25vdyBMZW9wYXJkIERlYnVnIGJvdAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzMzMDAKKworICAgICAgICBO
byBuZXcgdGVzdHMuIChPT1BTISkKKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL0FjY2Vz
c2liaWxpdHlPYmplY3RXcmFwcGVyLm1tOgorICAgICAgICAoLVtBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlciBhY2Nlc3NpYmlsaXR5U2V0UG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2s6d2l0aENv
bnRleHQ6XSk6CisgICAgICAgICgtW0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2li
aWxpdHlQb3N0ZWROb3RpZmljYXRpb246XSk6CisKIDIwMTAtMDEtMDcgIE1pa2UgQmVsc2hlICA8
bWJlbHNoZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CkluZGV4OiBXZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXIubW0JKHJldmlzaW9uIDUyOTY3KQorKysgV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L21hYy9BY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlci5tbQkod29ya2luZyBjb3B5KQpA
QCAtMjY1OCwxOCArMjY1OCwyMSBAQCBzdGF0aWMgUmVuZGVyT2JqZWN0KiByZW5kZXJlckZvclZp
ZXcoTlNWCiB9CiAKIC8vIFRoZXNlIGFyZSB1c2VkIGJ5IERSVCBzbyB0aGF0IGl0IGNhbiBrbm93
IHdoZW4gbm90aWZpY2F0aW9ucyBhcmUgc2VudC4KLXR5cGVkZWYgdm9pZCAoKkFYUG9zdGVkTm90
aWZpY2F0aW9uQ2FsbGJhY2spKGlkIGVsZW1lbnQsIE5TU3RyaW5nKiBub3RpZmljYXRpb24pOwor
Ly8gU2luY2UgdGhleSBhcmUgc3RhdGljLCBvbmx5IG9uZSBjYWxsYmFjayBjYW4gYmUgaW5zdGFs
bGVkIGF0IGEgdGltZSAodGhhdCdzIGFsbCBEUlQgc2hvdWxkIG5lZWQpLgordHlwZWRlZiB2b2lk
ICgqQVhQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFjaykoaWQgZWxlbWVudCwgTlNTdHJpbmcqIG5v
dGlmaWNhdGlvbiwgdm9pZCogY29udGV4dCk7CiBzdGF0aWMgQVhQb3N0ZWROb3RpZmljYXRpb25D
YWxsYmFjayBBWE5vdGlmaWNhdGlvbkNhbGxiYWNrID0gMDsKK3N0YXRpYyB2b2lkKiBBWFBvc3Rl
ZE5vdGlmaWNhdGlvbkNvbnRleHQgPSAwOwogCi0tICh2b2lkKWFjY2Vzc2liaWxpdHlTZXRQb3N0
ZWROb3RpZmljYXRpb25DYWxsYmFjazooQVhQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFjaylmdW5j
dGlvbgorLSAodm9pZClhY2Nlc3NpYmlsaXR5U2V0UG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2s6
KEFYUG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2spZnVuY3Rpb24gd2l0aENvbnRleHQ6KHZvaWQq
KWNvbnRleHQKIHsKICAgICBBWE5vdGlmaWNhdGlvbkNhbGxiYWNrID0gZnVuY3Rpb247CisgICAg
QVhQb3N0ZWROb3RpZmljYXRpb25Db250ZXh0ID0gY29udGV4dDsKIH0KIAogLSAodm9pZClhY2Nl
c3NpYmlsaXR5UG9zdGVkTm90aWZpY2F0aW9uOihOU1N0cmluZyAqKW5vdGlmaWNhdGlvbgogewog
ICAgIGlmIChBWE5vdGlmaWNhdGlvbkNhbGxiYWNrKQotICAgICAgICBBWE5vdGlmaWNhdGlvbkNh
bGxiYWNrKHNlbGYsIG5vdGlmaWNhdGlvbik7CisgICAgICAgIEFYTm90aWZpY2F0aW9uQ2FsbGJh
Y2soc2VsZiwgbm90aWZpY2F0aW9uLCBBWFBvc3RlZE5vdGlmaWNhdGlvbkNvbnRleHQpOwogfQog
CiBAZW5kCkluZGV4OiBXZWJLaXRUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1Mjk3NCkKKysrIFdlYktpdFRvb2xzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDEwLTAxLTA3ICBDaHJpcyBGbGVp
emFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgUkVHUkVTU0lPTig1MjgxOT8pOiBBWExvYWRDb21wbGV0ZSBh
bmQgQVhMYXlvdXRDb21wbGV0ZSBjYXVzZXMgNCB0ZXN0cyBmYWlsIG9uIFNub3cgTGVvcGFyZCBE
ZWJ1ZyBib3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTMzMzAwCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50
Lmg6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRN
YWMubW06CisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50KToKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6On5BY2Nlc3NpYmlsaXR5
VUlFbGVtZW50KToKKyAgICAgICAgKF9hY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uQ2FsbGJhY2sp
OgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YWRkTm90aWZpY2F0aW9uTGlzdGVu
ZXIpOgorCiAyMDEwLTAxLTA3ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCShyZXZpc2lvbiA1Mjk2
NykKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtMTY0LDYgKzE2NCw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGlj
IEpTQ2xhc3NSZWYgZ2V0SlNDbGFzcygpOwogCiAgICAgUGxhdGZvcm1VSUVsZW1lbnQgbV9lbGVt
ZW50OworICAgIEpTT2JqZWN0UmVmIG1fbm90aWZpY2F0aW9uRnVuY3Rpb25DYWxsYmFjazsKIH07
CiAKICNlbmRpZiAvLyBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50X2gKSW5kZXg6IFdlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50TWFjLm1tCShyZXZpc2lvbiA1Mjk2NykKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC01Mywy
OCArNTMsMzMgQEAKICNkZWZpbmUgTlNBY2Nlc3NpYmlsaXR5RHJvcEVmZmVjdHNBdHRyaWJ1dGUg
QCJBWERyb3BFZmZlY3RzIgogI2VuZGlmCiAKLXR5cGVkZWYgdm9pZCAoKkFYUG9zdGVkTm90aWZp
Y2F0aW9uQ2FsbGJhY2spKGlkIGVsZW1lbnQsIE5TU3RyaW5nKiBub3RpZmljYXRpb24pOwordHlw
ZWRlZiB2b2lkICgqQVhQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFjaykoaWQgZWxlbWVudCwgTlNT
dHJpbmcqIG5vdGlmaWNhdGlvbiwgdm9pZCogY29udGV4dCk7CiAKIEBpbnRlcmZhY2UgTlNPYmpl
Y3QgKFdlYktpdEFjY2Vzc2liaWxpdHlBZGRpdGlvbnMpCiAtIChOU0FycmF5ICopYWNjZXNzaWJp
bGl0eUFycmF5QXR0cmlidXRlVmFsdWVzOihOU1N0cmluZyAqKWF0dHJpYnV0ZSBpbmRleDooTlNV
SW50ZWdlcilpbmRleCBtYXhDb3VudDooTlNVSW50ZWdlciltYXhDb3VudDsKLS0gKHZvaWQpYWNj
ZXNzaWJpbGl0eVNldFBvc3RlZE5vdGlmaWNhdGlvbkNhbGxiYWNrOihBWFBvc3RlZE5vdGlmaWNh
dGlvbkNhbGxiYWNrKWZ1bmN0aW9uOworLSAodm9pZClhY2Nlc3NpYmlsaXR5U2V0UG9zdGVkTm90
aWZpY2F0aW9uQ2FsbGJhY2s6KEFYUG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2spZnVuY3Rpb24g
d2l0aENvbnRleHQ6KHZvaWQqKWNvbnRleHQ7CiAtIChOU1VJbnRlZ2VyKWFjY2Vzc2liaWxpdHlJ
bmRleE9mQ2hpbGQ6KGlkKWNoaWxkOwogQGVuZAogCiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50KFBsYXRmb3JtVUlFbGVtZW50IGVsZW1lbnQpCiAgICAgOiBt
X2VsZW1lbnQoZWxlbWVudCkKKyAgICAsIG1fbm90aWZpY2F0aW9uRnVuY3Rpb25DYWxsYmFjaygw
KQogewogICAgIFttX2VsZW1lbnQgcmV0YWluXTsKIH0KIAogQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dDo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudChjb25zdCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50JiBv
dGhlcikKICAgICA6IG1fZWxlbWVudChvdGhlci5tX2VsZW1lbnQpCisgICAgLCBtX25vdGlmaWNh
dGlvbkZ1bmN0aW9uQ2FsbGJhY2soMCkKIHsKICAgICBbbV9lbGVtZW50IHJldGFpbl07CiB9CiAK
IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6On5BY2Nlc3NpYmlsaXR5VUlFbGVtZW50KCkKIHsKKyAg
ICAvLyBNYWtlIHN1cmUgdGhhdCBvdXIgbm90aWZpY2F0aW9uIGNhbGxiYWNrIGRvZXMgbm90IHN0
aWNrIGFyb3VuZC4KKyAgICBpZiAobV9ub3RpZmljYXRpb25GdW5jdGlvbkNhbGxiYWNrKQorICAg
ICAgICBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlTZXRQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFj
azowIHdpdGhDb250ZXh0OjBdOwogICAgIFttX2VsZW1lbnQgcmVsZWFzZV07CiB9CiAKQEAgLTc1
MywxNyArNzU4LDE2IEBAIEpTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVybCgK
ICAgICByZXR1cm4gW1t1cmwgYWJzb2x1dGVTdHJpbmddIGNyZWF0ZUpTU3RyaW5nUmVmXTsgICAg
CiB9CiAKLS8vIFRoZSBKYXZhU2NyaXB0IGNhbGxiYWNrIHdlJ2xsIHVzZSB3aGVuIHdlIGdldCBh
IG5vdGlmaWNhdGlvbgotc3RhdGljIEpTT2JqZWN0UmVmIEFYTm90aWZpY2F0aW9uRnVuY3Rpb25D
YWxsYmFjayA9IDA7Ci0KLXN0YXRpYyB2b2lkIF9hY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uQ2Fs
bGJhY2soaWQgZWxlbWVudCwgTlNTdHJpbmcqIG5vdGlmaWNhdGlvbikKK3N0YXRpYyB2b2lkIF9h
Y2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uQ2FsbGJhY2soaWQgZWxlbWVudCwgTlNTdHJpbmcqIG5v
dGlmaWNhdGlvbiwgdm9pZCogY29udGV4dCkKIHsKLSAgICBpZiAoIUFYTm90aWZpY2F0aW9uRnVu
Y3Rpb25DYWxsYmFjaykKKyAgICBpZiAoIWNvbnRleHQpCiAgICAgICAgIHJldHVybjsKIAorICAg
IEpTT2JqZWN0UmVmIGZ1bmN0aW9uQ2FsbGJhY2sgPSBzdGF0aWNfY2FzdDxKU09iamVjdFJlZj4o
Y29udGV4dCk7CisKICAgICBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4ganNOb3RpZmljYXRpb24o
QWRvcHQsIFtub3RpZmljYXRpb24gY3JlYXRlSlNTdHJpbmdSZWZdKTsKICAgICBKU1ZhbHVlUmVm
IGFyZ3VtZW50ID0gSlNWYWx1ZU1ha2VTdHJpbmcoW21haW5GcmFtZSBnbG9iYWxDb250ZXh0XSwg
anNOb3RpZmljYXRpb24uZ2V0KCkpOwotICAgIEpTT2JqZWN0Q2FsbEFzRnVuY3Rpb24oW21haW5G
cmFtZSBnbG9iYWxDb250ZXh0XSwgQVhOb3RpZmljYXRpb25GdW5jdGlvbkNhbGxiYWNrLCBOVUxM
LCAxLCAmYXJndW1lbnQsIE5VTEwpOworICAgIEpTT2JqZWN0Q2FsbEFzRnVuY3Rpb24oW21haW5G
cmFtZSBnbG9iYWxDb250ZXh0XSwgZnVuY3Rpb25DYWxsYmFjaywgTlVMTCwgMSwgJmFyZ3VtZW50
LCBOVUxMKTsKIH0KIAogYm9vbCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphZGROb3RpZmljYXRp
b25MaXN0ZW5lcihKU09iamVjdFJlZiBmdW5jdGlvbkNhbGxiYWNrKQpAQCAtNzcxLDggKzc3NSw4
IEBAIGJvb2wgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YWRkTm90aWZpY2EKICAgICBpZiAoIWZ1
bmN0aW9uQ2FsbGJhY2spCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAKLSAgICBBWE5vdGlmaWNh
dGlvbkZ1bmN0aW9uQ2FsbGJhY2sgPSBmdW5jdGlvbkNhbGxiYWNrOwotICAgIFtwbGF0Zm9ybVVJ
RWxlbWVudCgpIGFjY2Vzc2liaWxpdHlTZXRQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFjazpfYWNj
ZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkNhbGxiYWNrXTsKKyAgICBtX25vdGlmaWNhdGlvbkZ1bmN0
aW9uQ2FsbGJhY2sgPSBmdW5jdGlvbkNhbGxiYWNrOworICAgIFtwbGF0Zm9ybVVJRWxlbWVudCgp
IGFjY2Vzc2liaWxpdHlTZXRQb3N0ZWROb3RpZmljYXRpb25DYWxsYmFjazpfYWNjZXNzaWJpbGl0
eU5vdGlmaWNhdGlvbkNhbGxiYWNrIHdpdGhDb250ZXh0OnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+
KG1fbm90aWZpY2F0aW9uRnVuY3Rpb25DYWxsYmFjayldOwogICAgIHJldHVybiB0cnVlOwogfQog
Cg==
</data>
<flag name="review"
          id="28335"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>