<?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>36623</bug_id>
          
          <creation_ts>2010-03-25 14:50:42 -0700</creation_ts>
          <short_desc>Relative URLs don&apos;t work for notifications in Chromium</short_desc>
          <delta_ts>2010-04-14 13:52:02 -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>WebCore Misc.</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>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aaron Boodman">aa</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>brettw</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>johnnyg</cc>
    
    <cc>levin</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>204233</commentid>
    <comment_count>0</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-03-25 14:50:42 -0700</bug_when>
    <thetext>You can&apos;t do webkitNotifications.createHTMLNotification(&lt;relative url&gt;) in Chromium, because the implementation immediately stuffs the provided string into a KURL. Later, the KURL is resolved.

In Chromium, KURL is backed by GURL, which doesn&apos;t allow relative URLs, so the url becomes invalid and resolving it does nothing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204239</commentid>
    <comment_count>1</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-03-25 14:58:52 -0700</bug_when>
    <thetext>tkent@, this may be your opportunity to poke GURL::Resolve through to WebURL :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204386</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-03-25 20:01:20 -0700</bug_when>
    <thetext>Sounds like Document::completeURL should be used here.  We also have that exposed on WebDocument, but probably the resolution should occur within WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211056</commentid>
    <comment_count>3</comment_count>
      <attachid>53024</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-09 17:46:46 -0700</bug_when>
    <thetext>Created attachment 53024
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211059</commentid>
    <comment_count>4</comment_count>
      <attachid>53024</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-04-09 17:53:03 -0700</bug_when>
    <thetext>Comment on attachment 53024
Patch

&gt; diff --git a/LayoutTests/fast/notifications/notifications-with-permission.html-disabled b/LayoutTests/fast/notifications/notifications-with-permission.html-disabled
&gt; index a22717b..7ba887f 100644
&gt; --- a/LayoutTests/fast/notifications/notifications-with-permission.html-disabled
&gt; +++ b/LayoutTests/fast/notifications/notifications-with-permission.html-disabled
&gt; @@ -6,7 +6,7 @@
&gt;          {
&gt;              document.getElementById(&quot;result&quot;).innerHTML += message + &quot;&lt;br&gt;&quot;;
&gt;          }
&gt; -        
&gt; +
&gt;          function runTests()
&gt;          {
&gt;              if (window.layoutTestController) {
&gt; @@ -17,10 +17,13 @@
&gt;              if (!window.webkitNotifications) {
&gt;                  log(&quot;FAIL: No webkitNotifications interface!&quot;);
&gt;              }
&gt; -            
&gt; +
&gt;              var N = window.webkitNotifications.createHTMLNotification(&quot;http://localhost/my_notification.html&quot;);
&gt;              N.show();
&gt; -            
&gt; +
&gt; +            var N = window.webkitNotifications.createHTMLNotification(&quot;resources/notification.html&quot;);
&gt; +            N.show();

Even though this test is disabled you should change the corresponding expected.txt file.

&gt; +
&gt;              var M = window.webkitNotifications.createNotification(&quot;http://localhost/my_icon.png&quot;, &quot;New E-mail&quot;, &quot;Meet me tonight at 8!&quot;);
&gt;              M.show();
&gt;          }
&gt; @@ -28,8 +31,8 @@
&gt;  &lt;/head&gt;
&gt;  &lt;body&gt;
&gt;  &lt;p&gt;Sending notifications with permission...&lt;/p&gt;
&gt; -    
&gt; -    
&gt; +
&gt; +
&gt;  &lt;script type=&quot;text/javascript&quot;&gt;
&gt;  runTests();
&gt;  &lt;/script&gt;
&gt; diff --git a/LayoutTests/fast/notifications/resources/notification.html b/LayoutTests/fast/notifications/resources/notification.html
&gt; new file mode 100644
&gt; index 0000000..273f256
&gt; --- /dev/null
&gt; +++ b/LayoutTests/fast/notifications/resources/notification.html
&gt; @@ -0,0 +1 @@
&gt; +Hello there. I am a notification.
&gt; diff --git a/WebCore/notifications/Notification.cpp b/WebCore/notifications/Notification.cpp
&gt; index 0c44db6..182f713 100644
&gt; --- a/WebCore/notifications/Notification.cpp
&gt; +++ b/WebCore/notifications/Notification.cpp
&gt; @@ -42,7 +42,7 @@
&gt;  
&gt;  namespace WebCore {
&gt;  
&gt; -Notification::Notification(const String&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider)
&gt; +Notification::Notification(const KURL&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider)
&gt;      : ActiveDOMObject(context, this)
&gt;      , m_isHTML(true)
&gt;      , m_isShowing(false)
&gt; @@ -54,11 +54,12 @@ Notification::Notification(const String&amp; url, ScriptExecutionContext* context, E
&gt;          return;
&gt;      }
&gt;  
&gt; -    m_notificationURL = context-&gt;completeURL(url);
&gt; -    if (url.isEmpty() || !m_notificationURL.isValid()) {
&gt; +    if (url.isEmpty() || !url.isValid()) {
&gt;          ec = SYNTAX_ERR;
&gt;          return;
&gt;      }
&gt; +
&gt; +    m_notificationURL = url;
&gt;  }
&gt;  
&gt;  Notification::Notification(const NotificationContents&amp; contents, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider)
&gt; @@ -74,9 +75,7 @@ Notification::Notification(const NotificationContents&amp; contents, ScriptExecution
&gt;          return;
&gt;      }
&gt;  
&gt; -    if (!contents.icon().isEmpty())
&gt; -        m_iconURL = context-&gt;completeURL(contents.icon());
&gt; -    if (!m_iconURL.isEmpty() &amp;&amp; !m_iconURL.isValid()) {
&gt; +    if (!contents.icon().isEmpty() &amp;&amp; !contents.icon().isValid()) {
&gt;          ec = SYNTAX_ERR;
&gt;          return;
&gt;      }
&gt; diff --git a/WebCore/notifications/Notification.h b/WebCore/notifications/Notification.h
&gt; index c2ba5d9..ff56edc 100644
&gt; --- a/WebCore/notifications/Notification.h
&gt; +++ b/WebCore/notifications/Notification.h
&gt; @@ -55,7 +55,7 @@ namespace WebCore {
&gt;  
&gt;      class Notification : public RefCounted&lt;Notification&gt;, public ActiveDOMObject, public EventTarget { 
&gt;      public:
&gt; -        static Notification* create(const String&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider) { return new Notification(url, context, ec, provider); }
&gt; +        static Notification* create(const KURL&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider) { return new Notification(url, context, ec, provider); }
&gt;          static Notification* create(const NotificationContents&amp; contents, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider) { return new Notification(contents, context, ec, provider); }
&gt;          
&gt;          virtual ~Notification();
&gt; @@ -65,7 +65,7 @@ namespace WebCore {
&gt;      
&gt;          bool isHTML() { return m_isHTML; }
&gt;          KURL url() { return m_notificationURL; }
&gt; -        KURL iconURL() { return m_iconURL; }
&gt; +        KURL iconURL() { return m_contents.icon(); }
&gt;          NotificationContents&amp; contents() { return m_contents; }
&gt;  
&gt;          DEFINE_ATTRIBUTE_EVENT_LISTENER(display);
&gt; @@ -80,7 +80,7 @@ namespace WebCore {
&gt;          virtual Notification* toNotification() { return this; }
&gt;  
&gt;      private:
&gt; -        Notification(const String&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider);
&gt; +        Notification(const KURL&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider);
&gt;          Notification(const NotificationContents&amp; fields, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider);
&gt;  
&gt;          // EventTarget interface
&gt; diff --git a/WebCore/notifications/NotificationCenter.h b/WebCore/notifications/NotificationCenter.h
&gt; index ae3dc02..80ab6b7 100644
&gt; --- a/WebCore/notifications/NotificationCenter.h
&gt; +++ b/WebCore/notifications/NotificationCenter.h
&gt; @@ -55,7 +55,7 @@ namespace WebCore {
&gt;                  ec = INVALID_STATE_ERR;
&gt;                  return 0;
&gt;              }
&gt; -            return Notification::create(KURL(ParsedURLString, URI), context(), ec, presenter());
&gt; +            return Notification::create(m_scriptExecutionContext-&gt;completeURL(URI), context(), ec, presenter());
&gt;          }
&gt;  
&gt;          Notification* createNotification(const String&amp; iconURI, const String&amp; title, const String&amp; body, ExceptionCode&amp; ec)
&gt; @@ -64,7 +64,7 @@ namespace WebCore {
&gt;                  ec = INVALID_STATE_ERR;
&gt;                  return 0;
&gt;              }
&gt; -            NotificationContents contents(iconURI, title, body);
&gt; +            NotificationContents contents(m_scriptExecutionContext-&gt;completeURL(iconURI), title, body);

This is going to be a problem.  If iconURI the string is empty, we don&apos;t want to resolve it to the current script&apos;s URL, which is what will happen (I recently fixed this bug).  We need to make an empty URL.

&gt;              return Notification::create(contents, context(), ec, presenter());
&gt;          }
&gt;  
&gt; diff --git a/WebCore/notifications/NotificationContents.h b/WebCore/notifications/NotificationContents.h
&gt; index ebdc514..2319980 100644
&gt; --- a/WebCore/notifications/NotificationContents.h
&gt; +++ b/WebCore/notifications/NotificationContents.h
&gt; @@ -38,17 +38,17 @@ namespace WebCore {
&gt;      class NotificationContents { 
&gt;      public:
&gt;          NotificationContents() {}
&gt; -        NotificationContents(const String&amp; iconUrl, const String&amp; title, const String&amp; body) 
&gt; +        NotificationContents(const KURL&amp; iconUrl, const String&amp; title, const String&amp; body) 
&gt;              : m_icon(iconUrl)
&gt;              , m_title(title)
&gt;              , m_body(body) {}
&gt;  
&gt; -        String icon() const { return m_icon; }
&gt; +        KURL icon() const { return m_icon; }
&gt;          String title() const { return m_title; }
&gt;          String body() const { return m_body; }
&gt;  
&gt;      private:
&gt; -        String m_icon;
&gt; +        KURL m_icon;
&gt;          String m_title;
&gt;          String m_body;
&gt;      };
&gt; diff --git a/WebKit/chromium/public/WebNotification.h b/WebKit/chromium/public/WebNotification.h
&gt; index b63dd20..9d64e2a 100644
&gt; --- a/WebKit/chromium/public/WebNotification.h
&gt; +++ b/WebKit/chromium/public/WebNotification.h
&gt; @@ -71,9 +71,6 @@ public:
&gt;      // If HTML, the URL which contains the contents of the notification.
&gt;      WEBKIT_API WebURL url() const;
&gt;  
&gt; -    // If not HTML, the parameters for the icon-title-text notification.
&gt; -    // FIXME: Deprecated; use iconURL() instead.
&gt; -    WEBKIT_API WebString icon() const;
&gt;      WEBKIT_API WebURL iconURL() const;
&gt;      WEBKIT_API WebString title() const;
&gt;      WEBKIT_API WebString body() const;
&gt; diff --git a/WebKit/chromium/src/WebNotification.cpp b/WebKit/chromium/src/WebNotification.cpp
&gt; index 26fd4bc..5200d17 100644
&gt; --- a/WebKit/chromium/src/WebNotification.cpp
&gt; +++ b/WebKit/chromium/src/WebNotification.cpp
&gt; @@ -76,13 +76,6 @@ WebURL WebNotification::url() const
&gt;      return m_private-&gt;url();
&gt;  }
&gt;  
&gt; -// FIXME: remove this deprecated function once all callers use iconURL()
&gt; -WebString WebNotification::icon() const
&gt; -{
&gt; -    ASSERT(!isHTML());
&gt; -    return m_private-&gt;contents().icon();
&gt; -}
&gt; -
&gt;  WebURL WebNotification::iconURL() const
&gt;  {
&gt;      ASSERT(!isHTML());</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211064</commentid>
    <comment_count>5</comment_count>
      <attachid>53025</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-09 18:08:18 -0700</bug_when>
    <thetext>Created attachment 53025
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211071</commentid>
    <comment_count>6</comment_count>
      <attachid>53027</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-09 18:39:03 -0700</bug_when>
    <thetext>Created attachment 53027
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211078</commentid>
    <comment_count>7</comment_count>
      <attachid>53029</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-09 18:49:21 -0700</bug_when>
    <thetext>Created attachment 53029
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211638</commentid>
    <comment_count>8</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-12 09:23:13 -0700</bug_when>
    <thetext>ping</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211646</commentid>
    <comment_count>9</comment_count>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-04-12 10:05:21 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; ping

My comments have been addressed, but you&apos;ll need to find a reviewer to signoff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211655</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-04-12 10:49:17 -0700</bug_when>
    <thetext>I wanted to review your patch, but I don&apos;t understand this code.  Also, I noticed that your patch doesn&apos;t have any tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211674</commentid>
    <comment_count>11</comment_count>
      <attachid>53029</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-04-12 11:16:40 -0700</bug_when>
    <thetext>Comment on attachment 53029
Patch

&gt; diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
&gt; index 6f8e025..72aa8d5 100644
&gt; --- a/WebCore/ChangeLog
&gt; +++ b/WebCore/ChangeLog
&gt; @@ -1,3 +1,13 @@
&gt; +2010-04-09  Aaron Boodman  &lt;aa@chromium.org&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Support relative URLs for notifiications on Chromium.
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=36623

Please add a few more details of exactly what you&apos;re doing here.


All comments seem to have been addressed.  Looks fine to me.  And the domain expert on this did an informal review.  r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211676</commentid>
    <comment_count>12</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2010-04-12 11:20:51 -0700</bug_when>
    <thetext>It looks like jorlow r+&apos;ed this.

Anyway, I think the following items should be addressed.

&gt; diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
&gt; index 6f8e025..72aa8d5 100644
&gt; --- a/WebCore/ChangeLog
&gt; +++ b/WebCore/ChangeLog
&gt; @@ -1,3 +1,13 @@
&gt; +2010-04-09  Aaron Boodman  &lt;aa@chromium.org&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Support relative URLs for notifiications on Chromium.

notifiications sp

&gt; +        https://bugs.webkit.org/show_bug.cgi?id=36623
&gt; +
&gt; +        Adding tests for this is difficult because we don&apos;t currently have DRT support for notifications on Mac, only Windows.
&gt; +        John is going to add this soon and will add a test for this at that time.


There are no functions listed here as is typical in changelogs.

&gt; diff --git a/WebCore/notifications/Notification.cpp b/WebCore/notifications/Notification.cpp
&gt; diff --git a/WebCore/notifications/Notification.h b/WebCore/notifications/Notification.h

&gt; +        Notification(const KURL&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider);

(I know this isn&apos;t your fault but you&apos;re changing the line, so) I don&apos;t think any of these parameter names add anything except maybe &quot;provider&quot;, so you should remove them.

m_iconURL isn&apos;t used anymore as far as I can tell but you didn&apos;t remove it from the class.


&gt; diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
&gt; +2010-04-09  Aaron Boodman  &lt;aa@chromium.org&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Support relative URLs for notifiications on Chromium.

notifiications sp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212125</commentid>
    <comment_count>13</comment_count>
      <attachid>53292</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-13 15:54:43 -0700</bug_when>
    <thetext>Created attachment 53292
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212137</commentid>
    <comment_count>14</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-13 16:12:35 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; Please add a few more details of exactly what you&apos;re doing here.

Done.

(In reply to comment #12)
&gt; notifiications sp

Done.

&gt; There are no functions listed here as is typical in changelogs.

Fixed.

&gt; &gt; +        Notification(const KURL&amp; url, ScriptExecutionContext* context, ExceptionCode&amp; ec, NotificationPresenter* provider);
&gt; 
&gt; (I know this isn&apos;t your fault but you&apos;re changing the line, so) I don&apos;t think
&gt; any of these parameter names add anything except maybe &quot;provider&quot;, so you
&gt; should remove them.

Done.

&gt; m_iconURL isn&apos;t used anymore as far as I can tell but you didn&apos;t remove it from
&gt; the class.

Good catch, thanks. Done.

&gt; notifiications sp

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212149</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-13 16:35:36 -0700</bug_when>
    <thetext>Attachment 53292 did not build on chromium:
Build output: http://webkit-commit-queue.appspot.com/results/1581464</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212166</commentid>
    <comment_count>16</comment_count>
      <attachid>53292</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2010-04-13 17:07:50 -0700</bug_when>
    <thetext>Comment on attachment 53292
Patch

r- due t chromium build break (which is due to the removal of arg names for the &quot;static Notification* create&quot; methods).

r+ other than that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212184</commentid>
    <comment_count>17</comment_count>
      <attachid>53303</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-13 17:56:54 -0700</bug_when>
    <thetext>Created attachment 53303
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212187</commentid>
    <comment_count>18</comment_count>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2010-04-13 18:06:08 -0700</bug_when>
    <thetext>Attachment 53303 did not build on qt:
Build output: http://webkit-commit-queue.appspot.com/results/1584469</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212189</commentid>
    <comment_count>19</comment_count>
      <attachid>53305</attachid>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-13 18:21:56 -0700</bug_when>
    <thetext>Created attachment 53305
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212303</commentid>
    <comment_count>20</comment_count>
      <attachid>53305</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-04-14 02:32:23 -0700</bug_when>
    <thetext>Comment on attachment 53305
Patch

Rejecting patch 53305 from commit-queue.

Failed to run &quot;[&apos;git&apos;, &apos;svn&apos;, &apos;dcommit&apos;]&quot; exit_code: 1
Last 500 characters of output:
ebKit/chromium/src/WebNotification.cpp
	M	WebKit/qt/ChangeLog
	M	WebKit/qt/WebCoreSupport/NotificationPresenterClientQt.cpp
A repository hook failed: MERGE request failed on &apos;/repository/webkit/trunk&apos;: Commit blocked by pre-commit hook (exit code 1) with output:
svnlook: Can&apos;t write to stream: Broken pipe

    The following ChangeLog files contain OOPS:

        trunk/WebKit/qt/ChangeLog

    Please don&apos;t ever say &quot;OOPS&quot; in a ChangeLog file.
 at /usr/local/git/libexec/git-core/git-svn line 570


Full output: http://webkit-commit-queue.appspot.com/results/1633422</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212490</commentid>
    <comment_count>21</comment_count>
      <attachid>53305</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-14 12:24:37 -0700</bug_when>
    <thetext>Comment on attachment 53305
Patch

 5         Need a short description and bug URL (OOPS!)
in the Qt ChangeLOG caused the failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212548</commentid>
    <comment_count>22</comment_count>
    <who name="Aaron Boodman">aa</who>
    <bug_when>2010-04-14 13:52:02 -0700</bug_when>
    <thetext>Committed r57604: &lt;http://trac.webkit.org/changeset/57604&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53024</attachid>
            <date>2010-04-09 17:46:46 -0700</date>
            <delta_ts>2010-04-09 18:08:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36623-20100409174645.patch</filename>
            <type>text/plain</type>
            <size>8349</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25z
LXdpdGgtcGVybWlzc2lvbi5odG1sLWRpc2FibGVkIGIvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmlj
YXRpb25zL25vdGlmaWNhdGlvbnMtd2l0aC1wZXJtaXNzaW9uLmh0bWwtZGlzYWJsZWQKaW5kZXgg
YTIyNzE3Yi4uN2JhODg3ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRp
b25zL25vdGlmaWNhdGlvbnMtd2l0aC1wZXJtaXNzaW9uLmh0bWwtZGlzYWJsZWQKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtd2l0aC1wZXJtaXNzaW9u
Lmh0bWwtZGlzYWJsZWQKQEAgLTYsNyArNiw3IEBACiAgICAgICAgIHsKICAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICI8
YnI+IjsKICAgICAgICAgfQotICAgICAgICAKKwogICAgICAgICBmdW5jdGlvbiBydW5UZXN0cygp
CiAgICAgICAgIHsKICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
IHsKQEAgLTE3LDEwICsxNywxMyBAQAogICAgICAgICAgICAgaWYgKCF3aW5kb3cud2Via2l0Tm90
aWZpY2F0aW9ucykgewogICAgICAgICAgICAgICAgIGxvZygiRkFJTDogTm8gd2Via2l0Tm90aWZp
Y2F0aW9ucyBpbnRlcmZhY2UhIik7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAKKwogICAg
ICAgICAgICAgdmFyIE4gPSB3aW5kb3cud2Via2l0Tm90aWZpY2F0aW9ucy5jcmVhdGVIVE1MTm90
aWZpY2F0aW9uKCJodHRwOi8vbG9jYWxob3N0L215X25vdGlmaWNhdGlvbi5odG1sIik7CiAgICAg
ICAgICAgICBOLnNob3coKTsKLSAgICAgICAgICAgIAorCisgICAgICAgICAgICB2YXIgTiA9IHdp
bmRvdy53ZWJraXROb3RpZmljYXRpb25zLmNyZWF0ZUhUTUxOb3RpZmljYXRpb24oInJlc291cmNl
cy9ub3RpZmljYXRpb24uaHRtbCIpOworICAgICAgICAgICAgTi5zaG93KCk7CisKICAgICAgICAg
ICAgIHZhciBNID0gd2luZG93LndlYmtpdE5vdGlmaWNhdGlvbnMuY3JlYXRlTm90aWZpY2F0aW9u
KCJodHRwOi8vbG9jYWxob3N0L215X2ljb24ucG5nIiwgIk5ldyBFLW1haWwiLCAiTWVldCBtZSB0
b25pZ2h0IGF0IDghIik7CiAgICAgICAgICAgICBNLnNob3coKTsKICAgICAgICAgfQpAQCAtMjgs
OCArMzEsOCBAQAogPC9oZWFkPgogPGJvZHk+CiA8cD5TZW5kaW5nIG5vdGlmaWNhdGlvbnMgd2l0
aCBwZXJtaXNzaW9uLi4uPC9wPgotICAgIAotICAgIAorCisKIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KIHJ1blRlc3RzKCk7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3Qvbm90aWZpY2F0aW9ucy9yZXNvdXJjZXMvbm90aWZpY2F0aW9uLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvcmVzb3VyY2VzL25vdGlmaWNhdGlvbi5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3M2YyNTYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L25vdGlmaWNhdGlvbnMvcmVzb3VyY2VzL25vdGlmaWNhdGlv
bi5odG1sCkBAIC0wLDAgKzEgQEAKK0hlbGxvIHRoZXJlLiBJIGFtIGEgbm90aWZpY2F0aW9uLgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAgYi9XZWJD
b3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcAppbmRleCAwYzQ0ZGI2Li4xODJmNzEz
IDEwMDY0NAotLS0gYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcAorKysg
Yi9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcApAQCAtNDIsNyArNDIsNyBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLU5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNv
bnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRp
b25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikKK05vdGlmaWNhdGlv
bjo6Tm90aWZpY2F0aW9uKGNvbnN0IEtVUkwmIHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCog
Y29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlk
ZXIpCiAgICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykKICAgICAsIG1faXNIVE1M
KHRydWUpCiAgICAgLCBtX2lzU2hvd2luZyhmYWxzZSkKQEAgLTU0LDExICs1NCwxMiBAQCBOb3Rp
ZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIHVybCwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgRQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgbV9ub3Rp
ZmljYXRpb25VUkwgPSBjb250ZXh0LT5jb21wbGV0ZVVSTCh1cmwpOwotICAgIGlmICh1cmwuaXNF
bXB0eSgpIHx8ICFtX25vdGlmaWNhdGlvblVSTC5pc1ZhbGlkKCkpIHsKKyAgICBpZiAodXJsLmlz
RW1wdHkoKSB8fCAhdXJsLmlzVmFsaWQoKSkgewogICAgICAgICBlYyA9IFNZTlRBWF9FUlI7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CisKKyAgICBtX25vdGlmaWNhdGlvblVSTCA9IHVybDsKIH0K
IAogTm90aWZpY2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgTm90aWZpY2F0aW9uQ29udGVudHMm
IGNvbnRlbnRzLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2Rl
JiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikKQEAgLTc0LDkgKzc1LDcgQEAg
Tm90aWZpY2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgTm90aWZpY2F0aW9uQ29udGVudHMmIGNv
bnRlbnRzLCBTY3JpcHRFeGVjdXRpb24KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlm
ICghY29udGVudHMuaWNvbigpLmlzRW1wdHkoKSkKLSAgICAgICAgbV9pY29uVVJMID0gY29udGV4
dC0+Y29tcGxldGVVUkwoY29udGVudHMuaWNvbigpKTsKLSAgICBpZiAoIW1faWNvblVSTC5pc0Vt
cHR5KCkgJiYgIW1faWNvblVSTC5pc1ZhbGlkKCkpIHsKKyAgICBpZiAoIWNvbnRlbnRzLmljb24o
KS5pc0VtcHR5KCkgJiYgIWNvbnRlbnRzLmljb24oKS5pc1ZhbGlkKCkpIHsKICAgICAgICAgZWMg
PSBTWU5UQVhfRVJSOwogICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05v
dGlmaWNhdGlvbi5oCmluZGV4IGMyYmE1ZDkuLmZmNTZlZGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
bm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaAorKysgYi9XZWJDb3JlL25vdGlmaWNhdGlvbnMv
Tm90aWZpY2F0aW9uLmgKQEAgLTU1LDcgKzU1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAg
ICAgY2xhc3MgTm90aWZpY2F0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8Tm90aWZpY2F0aW9uPiwg
cHVibGljIEFjdGl2ZURPTU9iamVjdCwgcHVibGljIEV2ZW50VGFyZ2V0IHsgCiAgICAgcHVibGlj
OgotICAgICAgICBzdGF0aWMgTm90aWZpY2F0aW9uKiBjcmVhdGUoY29uc3QgU3RyaW5nJiB1cmws
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3Rp
ZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKSB7IHJldHVybiBuZXcgTm90aWZpY2F0aW9uKHVy
bCwgY29udGV4dCwgZWMsIHByb3ZpZGVyKTsgfQorICAgICAgICBzdGF0aWMgTm90aWZpY2F0aW9u
KiBjcmVhdGUoY29uc3QgS1VSTCYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikgeyBy
ZXR1cm4gbmV3IE5vdGlmaWNhdGlvbih1cmwsIGNvbnRleHQsIGVjLCBwcm92aWRlcik7IH0KICAg
ICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiogY3JlYXRlKGNvbnN0IE5vdGlmaWNhdGlvbkNvbnRl
bnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9u
Q29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpIHsgcmV0dXJuIG5ldyBO
b3RpZmljYXRpb24oY29udGVudHMsIGNvbnRleHQsIGVjLCBwcm92aWRlcik7IH0KICAgICAgICAg
CiAgICAgICAgIHZpcnR1YWwgfk5vdGlmaWNhdGlvbigpOwpAQCAtNjUsNyArNjUsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgCiAgICAgICAgIGJvb2wgaXNIVE1MKCkgeyByZXR1cm4gbV9p
c0hUTUw7IH0KICAgICAgICAgS1VSTCB1cmwoKSB7IHJldHVybiBtX25vdGlmaWNhdGlvblVSTDsg
fQotICAgICAgICBLVVJMIGljb25VUkwoKSB7IHJldHVybiBtX2ljb25VUkw7IH0KKyAgICAgICAg
S1VSTCBpY29uVVJMKCkgeyByZXR1cm4gbV9jb250ZW50cy5pY29uKCk7IH0KICAgICAgICAgTm90
aWZpY2F0aW9uQ29udGVudHMmIGNvbnRlbnRzKCkgeyByZXR1cm4gbV9jb250ZW50czsgfQogCiAg
ICAgICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIoZGlzcGxheSk7CkBAIC04MCw3
ICs4MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCBOb3RpZmljYXRp
b24qIHRvTm90aWZpY2F0aW9uKCkgeyByZXR1cm4gdGhpczsgfQogCiAgICAgcHJpdmF0ZToKLSAg
ICAgICAgTm90aWZpY2F0aW9uKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBw
cm92aWRlcik7CisgICAgICAgIE5vdGlmaWNhdGlvbihjb25zdCBLVVJMJiB1cmwsIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25Q
cmVzZW50ZXIqIHByb3ZpZGVyKTsKICAgICAgICAgTm90aWZpY2F0aW9uKGNvbnN0IE5vdGlmaWNh
dGlvbkNvbnRlbnRzJiBmaWVsZHMsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4
Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKTsKIAogICAg
ICAgICAvLyBFdmVudFRhcmdldCBpbnRlcmZhY2UKZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZp
Y2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaCBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3Rp
ZmljYXRpb25DZW50ZXIuaAppbmRleCBhZTNkYzAyLi44MGFiNmI3IDEwMDY0NAotLS0gYS9XZWJD
b3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKKysrIGIvV2ViQ29yZS9ub3Rp
ZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oCkBAIC01NSw3ICs1NSw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwogICAg
ICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJu
IE5vdGlmaWNhdGlvbjo6Y3JlYXRlKEtVUkwoUGFyc2VkVVJMU3RyaW5nLCBVUkkpLCBjb250ZXh0
KCksIGVjLCBwcmVzZW50ZXIoKSk7CisgICAgICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uOjpj
cmVhdGUobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5jb21wbGV0ZVVSTChVUkkpLCBjb250ZXh0
KCksIGVjLCBwcmVzZW50ZXIoKSk7CiAgICAgICAgIH0KIAogICAgICAgICBOb3RpZmljYXRpb24q
IGNyZWF0ZU5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIGljb25VUkksIGNvbnN0IFN0cmluZyYg
dGl0bGUsIGNvbnN0IFN0cmluZyYgYm9keSwgRXhjZXB0aW9uQ29kZSYgZWMpCkBAIC02NCw3ICs2
NCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAgICAgICBlYyA9IElOVkFMSURf
U1RBVEVfRVJSOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQotICAg
ICAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMgY29udGVudHMoaWNvblVSSSwgdGl0bGUsIGJv
ZHkpOworICAgICAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMgY29udGVudHMobV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0LT5jb21wbGV0ZVVSTChpY29uVVJJKSwgdGl0bGUsIGJvZHkpOwogICAg
ICAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjo6Y3JlYXRlKGNvbnRlbnRzLCBjb250ZXh0KCks
IGVjLCBwcmVzZW50ZXIoKSk7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9ub3Rp
ZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRlbnRzLmggYi9XZWJDb3JlL25vdGlmaWNhdGlvbnMv
Tm90aWZpY2F0aW9uQ29udGVudHMuaAppbmRleCBlYmRjNTE0Li4yMzE5OTgwIDEwMDY0NAotLS0g
YS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaAorKysgYi9XZWJD
b3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaApAQCAtMzgsMTcgKzM4LDE3
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBjbGFzcyBOb3RpZmljYXRpb25Db250ZW50cyB7
IAogICAgIHB1YmxpYzoKICAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMoKSB7fQotICAgICAg
ICBOb3RpZmljYXRpb25Db250ZW50cyhjb25zdCBTdHJpbmcmIGljb25VcmwsIGNvbnN0IFN0cmlu
ZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgYm9keSkgCisgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRl
bnRzKGNvbnN0IEtVUkwmIGljb25VcmwsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmlu
ZyYgYm9keSkgCiAgICAgICAgICAgICA6IG1faWNvbihpY29uVXJsKQogICAgICAgICAgICAgLCBt
X3RpdGxlKHRpdGxlKQogICAgICAgICAgICAgLCBtX2JvZHkoYm9keSkge30KIAotICAgICAgICBT
dHJpbmcgaWNvbigpIGNvbnN0IHsgcmV0dXJuIG1faWNvbjsgfQorICAgICAgICBLVVJMIGljb24o
KSBjb25zdCB7IHJldHVybiBtX2ljb247IH0KICAgICAgICAgU3RyaW5nIHRpdGxlKCkgY29uc3Qg
eyByZXR1cm4gbV90aXRsZTsgfQogICAgICAgICBTdHJpbmcgYm9keSgpIGNvbnN0IHsgcmV0dXJu
IG1fYm9keTsgfQogCiAgICAgcHJpdmF0ZToKLSAgICAgICAgU3RyaW5nIG1faWNvbjsKKyAgICAg
ICAgS1VSTCBtX2ljb247CiAgICAgICAgIFN0cmluZyBtX3RpdGxlOwogICAgICAgICBTdHJpbmcg
bV9ib2R5OwogICAgIH07CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYk5v
dGlmaWNhdGlvbi5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJOb3RpZmljYXRpb24uaApp
bmRleCBiNjNkZDIwLi45ZDY0ZTJhIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYk5vdGlmaWNhdGlvbi5oCisrKyBiL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViTm90aWZp
Y2F0aW9uLmgKQEAgLTcxLDkgKzcxLDYgQEAgcHVibGljOgogICAgIC8vIElmIEhUTUwsIHRoZSBV
Ukwgd2hpY2ggY29udGFpbnMgdGhlIGNvbnRlbnRzIG9mIHRoZSBub3RpZmljYXRpb24uCiAgICAg
V0VCS0lUX0FQSSBXZWJVUkwgdXJsKCkgY29uc3Q7CiAKLSAgICAvLyBJZiBub3QgSFRNTCwgdGhl
IHBhcmFtZXRlcnMgZm9yIHRoZSBpY29uLXRpdGxlLXRleHQgbm90aWZpY2F0aW9uLgotICAgIC8v
IEZJWE1FOiBEZXByZWNhdGVkOyB1c2UgaWNvblVSTCgpIGluc3RlYWQuCi0gICAgV0VCS0lUX0FQ
SSBXZWJTdHJpbmcgaWNvbigpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgV2ViVVJMIGljb25VUkwo
KSBjb25zdDsKICAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyB0aXRsZSgpIGNvbnN0OwogICAgIFdF
QktJVF9BUEkgV2ViU3RyaW5nIGJvZHkoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViTm90aWZpY2F0aW9uLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm90
aWZpY2F0aW9uLmNwcAppbmRleCAyNmZkNGJjLi41MjAwZDE3IDEwMDY0NAotLS0gYS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJOb3RpZmljYXRpb24uY3BwCkBAIC03NiwxMyArNzYsNiBAQCBXZWJVUkwgV2ViTm90aWZp
Y2F0aW9uOjp1cmwoKSBjb25zdAogICAgIHJldHVybiBtX3ByaXZhdGUtPnVybCgpOwogfQogCi0v
LyBGSVhNRTogcmVtb3ZlIHRoaXMgZGVwcmVjYXRlZCBmdW5jdGlvbiBvbmNlIGFsbCBjYWxsZXJz
IHVzZSBpY29uVVJMKCkKLVdlYlN0cmluZyBXZWJOb3RpZmljYXRpb246Omljb24oKSBjb25zdAot
ewotICAgIEFTU0VSVCghaXNIVE1MKCkpOwotICAgIHJldHVybiBtX3ByaXZhdGUtPmNvbnRlbnRz
KCkuaWNvbigpOwotfQotCiBXZWJVUkwgV2ViTm90aWZpY2F0aW9uOjppY29uVVJMKCkgY29uc3QK
IHsKICAgICBBU1NFUlQoIWlzSFRNTCgpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53025</attachid>
            <date>2010-04-09 18:08:18 -0700</date>
            <delta_ts>2010-04-09 18:38:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36623-20100409180817.patch</filename>
            <type>text/plain</type>
            <size>8035</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NmY4ZTAyNS4uNzJhYThkNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wNC0wOSAgQWFyb24gQm9vZG1h
biAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWljYXRpb25zIG9u
IENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzY2MjMKKworICAgICAgICBBZGRpbmcgdGVzdHMgZm9yIHRoaXMgaXMgZGlmZmljdWx0IGJl
Y2F1c2Ugd2UgZG9uJ3QgY3VycmVudGx5IGhhdmUgRFJUIHN1cHBvcnQgZm9yIG5vdGlmaWNhdGlv
bnMgb24gTWFjLCBvbmx5IFdpbmRvd3MuCisgICAgICAgIEpvaG4gaXMgZ29pbmcgdG8gYWRkIHRo
aXMgc29vbiBhbmQgd2lsbCBhZGQgYSB0ZXN0IGZvciB0aGlzIGF0IHRoYXQgdGltZS4KKwogMjAx
MC0wNC0wOSAgRG1pdHJ5IFRpdG92ICA8ZGltaWNoQGNocm9taXVtLm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9u
cy9Ob3RpZmljYXRpb24uY3BwIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5j
cHAKaW5kZXggMGM0NGRiNi4uMTgyZjcxMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbi5jcHAKKysrIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbi5jcHAKQEAgLTQyLDcgKzQyLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Ob3Rp
ZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIHVybCwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRl
ciogcHJvdmlkZXIpCitOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBLVVJMJiB1cmws
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3Rp
ZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRl
eHQsIHRoaXMpCiAgICAgLCBtX2lzSFRNTCh0cnVlKQogICAgICwgbV9pc1Nob3dpbmcoZmFsc2Up
CkBAIC01NCwxMSArNTQsMTIgQEAgTm90aWZpY2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgU3Ry
aW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEUKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIG1fbm90aWZpY2F0aW9uVVJMID0gY29udGV4dC0+Y29tcGxldGVV
UkwodXJsKTsKLSAgICBpZiAodXJsLmlzRW1wdHkoKSB8fCAhbV9ub3RpZmljYXRpb25VUkwuaXNW
YWxpZCgpKSB7CisgICAgaWYgKHVybC5pc0VtcHR5KCkgfHwgIXVybC5pc1ZhbGlkKCkpIHsKICAg
ICAgICAgZWMgPSBTWU5UQVhfRVJSOwogICAgICAgICByZXR1cm47CiAgICAgfQorCisgICAgbV9u
b3RpZmljYXRpb25VUkwgPSB1cmw7CiB9CiAKIE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNv
bnN0IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJv
dmlkZXIpCkBAIC03NCw5ICs3NSw3IEBAIE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0
IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0aW9uCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoIWNvbnRlbnRzLmljb24oKS5pc0VtcHR5KCkpCi0g
ICAgICAgIG1faWNvblVSTCA9IGNvbnRleHQtPmNvbXBsZXRlVVJMKGNvbnRlbnRzLmljb24oKSk7
Ci0gICAgaWYgKCFtX2ljb25VUkwuaXNFbXB0eSgpICYmICFtX2ljb25VUkwuaXNWYWxpZCgpKSB7
CisgICAgaWYgKCFjb250ZW50cy5pY29uKCkuaXNFbXB0eSgpICYmICFjb250ZW50cy5pY29uKCku
aXNWYWxpZCgpKSB7CiAgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaCBi
L1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaAppbmRleCBjMmJhNWQ5Li5mZjU2
ZWRjIDEwMDY0NAotLS0gYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmgKKysr
IGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCkBAIC01NSw3ICs1NSw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIE5vdGlmaWNhdGlvbiA6IHB1YmxpYyBS
ZWZDb3VudGVkPE5vdGlmaWNhdGlvbj4sIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHB1YmxpYyBF
dmVudFRhcmdldCB7IAogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiog
Y3JlYXRlKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikgeyBy
ZXR1cm4gbmV3IE5vdGlmaWNhdGlvbih1cmwsIGNvbnRleHQsIGVjLCBwcm92aWRlcik7IH0KKyAg
ICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiogY3JlYXRlKGNvbnN0IEtVUkwmIHVybCwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlv
blByZXNlbnRlciogcHJvdmlkZXIpIHsgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24odXJsLCBjb250
ZXh0LCBlYywgcHJvdmlkZXIpOyB9CiAgICAgICAgIHN0YXRpYyBOb3RpZmljYXRpb24qIGNyZWF0
ZShjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYgY29udGVudHMsIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIq
IHByb3ZpZGVyKSB7IHJldHVybiBuZXcgTm90aWZpY2F0aW9uKGNvbnRlbnRzLCBjb250ZXh0LCBl
YywgcHJvdmlkZXIpOyB9CiAgICAgICAgIAogICAgICAgICB2aXJ0dWFsIH5Ob3RpZmljYXRpb24o
KTsKQEAgLTY1LDcgKzY1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIAogICAgICAgICBi
b29sIGlzSFRNTCgpIHsgcmV0dXJuIG1faXNIVE1MOyB9CiAgICAgICAgIEtVUkwgdXJsKCkgeyBy
ZXR1cm4gbV9ub3RpZmljYXRpb25VUkw7IH0KLSAgICAgICAgS1VSTCBpY29uVVJMKCkgeyByZXR1
cm4gbV9pY29uVVJMOyB9CisgICAgICAgIEtVUkwgaWNvblVSTCgpIHsgcmV0dXJuIG1fY29udGVu
dHMuaWNvbigpOyB9CiAgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cygpIHsg
cmV0dXJuIG1fY29udGVudHM7IH0KIAogICAgICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJ
U1RFTkVSKGRpc3BsYXkpOwpAQCAtODAsNyArODAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIHZpcnR1YWwgTm90aWZpY2F0aW9uKiB0b05vdGlmaWNhdGlvbigpIHsgcmV0dXJuIHRo
aXM7IH0KIAogICAgIHByaXZhdGU6Ci0gICAgICAgIE5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcm
IHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMs
IE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpOworICAgICAgICBOb3RpZmljYXRpb24o
Y29uc3QgS1VSTCYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRp
b25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcik7CiAgICAgICAgIE5v
dGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYgZmllbGRzLCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJl
c2VudGVyKiBwcm92aWRlcik7CiAKICAgICAgICAgLy8gRXZlbnRUYXJnZXQgaW50ZXJmYWNlCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmggYi9X
ZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKaW5kZXggYWUzZGMwMi4u
ODBhYjZiNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNl
bnRlci5oCisrKyBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaApA
QCAtNTUsNyArNTUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAgICAgICAgZWMg
PSBJTlZBTElEX1NUQVRFX0VSUjsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb246OmNyZWF0ZShLVVJMKFBhcnNl
ZFVSTFN0cmluZywgVVJJKSwgY29udGV4dCgpLCBlYywgcHJlc2VudGVyKCkpOworICAgICAgICAg
ICAgcmV0dXJuIE5vdGlmaWNhdGlvbjo6Y3JlYXRlKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+
Y29tcGxldGVVUkwoVVJJKSwgY29udGV4dCgpLCBlYywgcHJlc2VudGVyKCkpOwogICAgICAgICB9
CiAKICAgICAgICAgTm90aWZpY2F0aW9uKiBjcmVhdGVOb3RpZmljYXRpb24oY29uc3QgU3RyaW5n
JiBpY29uVVJJLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHksIEV4Y2Vw
dGlvbkNvZGUmIGVjKQpAQCAtNjQsNyArNjQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKICAgICAgICAgICAgICAgICByZXR1
cm4gMDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzIGNv
bnRlbnRzKGljb25VUkksIHRpdGxlLCBib2R5KTsKKyAgICAgICAgICAgIE5vdGlmaWNhdGlvbkNv
bnRlbnRzIGNvbnRlbnRzKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+Y29tcGxldGVVUkwoaWNv
blVSSSksIHRpdGxlLCBib2R5KTsKICAgICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb246OmNy
ZWF0ZShjb250ZW50cywgY29udGV4dCgpLCBlYywgcHJlc2VudGVyKCkpOwogICAgICAgICB9CiAK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250ZW50cy5o
IGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRlbnRzLmgKaW5kZXggZWJk
YzUxNC4uMjMxOTk4MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbkNvbnRlbnRzLmgKKysrIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNv
bnRlbnRzLmgKQEAgLTM4LDE3ICszOCwxNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xh
c3MgTm90aWZpY2F0aW9uQ29udGVudHMgeyAKICAgICBwdWJsaWM6CiAgICAgICAgIE5vdGlmaWNh
dGlvbkNvbnRlbnRzKCkge30KLSAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMoY29uc3QgU3Ry
aW5nJiBpY29uVXJsLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpIAor
ICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyhjb25zdCBLVVJMJiBpY29uVXJsLCBjb25zdCBT
dHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpIAogICAgICAgICAgICAgOiBtX2ljb24o
aWNvblVybCkKICAgICAgICAgICAgICwgbV90aXRsZSh0aXRsZSkKICAgICAgICAgICAgICwgbV9i
b2R5KGJvZHkpIHt9CiAKLSAgICAgICAgU3RyaW5nIGljb24oKSBjb25zdCB7IHJldHVybiBtX2lj
b247IH0KKyAgICAgICAgS1VSTCBpY29uKCkgY29uc3QgeyByZXR1cm4gbV9pY29uOyB9CiAgICAg
ICAgIFN0cmluZyB0aXRsZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGl0bGU7IH0KICAgICAgICAgU3Ry
aW5nIGJvZHkoKSBjb25zdCB7IHJldHVybiBtX2JvZHk7IH0KIAogICAgIHByaXZhdGU6Ci0gICAg
ICAgIFN0cmluZyBtX2ljb247CisgICAgICAgIEtVUkwgbV9pY29uOwogICAgICAgICBTdHJpbmcg
bV90aXRsZTsKICAgICAgICAgU3RyaW5nIG1fYm9keTsKICAgICB9OwpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
MGE4OTIyMS4uNDEyMmIzNCAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwor
KysgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDQt
MDkgIEFhcm9uIEJvb2RtYW4gIDxhYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU3VwcG9ydCByZWxhdGl2ZSBVUkxzIGZvciBu
b3RpZmlpY2F0aW9ucyBvbiBDaHJvbWl1bS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM2NjIzCisKKyAgICAgICAgQWRkaW5nIHRlc3RzIGZvciB0aGlz
IGlzIGRpZmZpY3VsdCBiZWNhdXNlIHdlIGRvbid0IGN1cnJlbnRseSBoYXZlIERSVCBzdXBwb3J0
IGZvciBub3RpZmljYXRpb25zIG9uIE1hYywgb25seSBXaW5kb3dzLgorICAgICAgICBKb2huIGlz
IGdvaW5nIHRvIGFkZCB0aGlzIHNvb24gYW5kIHdpbGwgYWRkIGEgdGVzdCBmb3IgdGhpcyBhdCB0
aGF0IHRpbWUuCisKIDIwMTAtMDQtMDkgIEpvY2hlbiBFaXNpbmdlciAgPGpvY2hlbkBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgpkaWZmIC0tZ2l0IGEv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJOb3RpZmljYXRpb24uaCBiL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmgKaW5kZXggYjYzZGQyMC4uOWQ2NGUyYSAxMDA2NDQK
LS0tIGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJOb3RpZmljYXRpb24uaAorKysgYi9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYk5vdGlmaWNhdGlvbi5oCkBAIC03MSw5ICs3MSw2IEBAIHB1
YmxpYzoKICAgICAvLyBJZiBIVE1MLCB0aGUgVVJMIHdoaWNoIGNvbnRhaW5zIHRoZSBjb250ZW50
cyBvZiB0aGUgbm90aWZpY2F0aW9uLgogICAgIFdFQktJVF9BUEkgV2ViVVJMIHVybCgpIGNvbnN0
OwogCi0gICAgLy8gSWYgbm90IEhUTUwsIHRoZSBwYXJhbWV0ZXJzIGZvciB0aGUgaWNvbi10aXRs
ZS10ZXh0IG5vdGlmaWNhdGlvbi4KLSAgICAvLyBGSVhNRTogRGVwcmVjYXRlZDsgdXNlIGljb25V
UkwoKSBpbnN0ZWFkLgotICAgIFdFQktJVF9BUEkgV2ViU3RyaW5nIGljb24oKSBjb25zdDsKICAg
ICBXRUJLSVRfQVBJIFdlYlVSTCBpY29uVVJMKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBXZWJT
dHJpbmcgdGl0bGUoKSBjb25zdDsKICAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyBib2R5KCkgY29u
c3Q7CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAKaW5kZXggMjZmZDRiYy4u
NTIwMGQxNyAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24u
Y3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm90aWZpY2F0aW9uLmNwcApAQCAtNzYs
MTMgKzc2LDYgQEAgV2ViVVJMIFdlYk5vdGlmaWNhdGlvbjo6dXJsKCkgY29uc3QKICAgICByZXR1
cm4gbV9wcml2YXRlLT51cmwoKTsKIH0KIAotLy8gRklYTUU6IHJlbW92ZSB0aGlzIGRlcHJlY2F0
ZWQgZnVuY3Rpb24gb25jZSBhbGwgY2FsbGVycyB1c2UgaWNvblVSTCgpCi1XZWJTdHJpbmcgV2Vi
Tm90aWZpY2F0aW9uOjppY29uKCkgY29uc3QKLXsKLSAgICBBU1NFUlQoIWlzSFRNTCgpKTsKLSAg
ICByZXR1cm4gbV9wcml2YXRlLT5jb250ZW50cygpLmljb24oKTsKLX0KLQogV2ViVVJMIFdlYk5v
dGlmaWNhdGlvbjo6aWNvblVSTCgpIGNvbnN0CiB7CiAgICAgQVNTRVJUKCFpc0hUTUwoKSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53027</attachid>
            <date>2010-04-09 18:39:03 -0700</date>
            <delta_ts>2010-04-09 18:49:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36623-20100409183902.patch</filename>
            <type>text/plain</type>
            <size>8261</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NmY4ZTAyNS4uNzJhYThkNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wNC0wOSAgQWFyb24gQm9vZG1h
biAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWljYXRpb25zIG9u
IENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzY2MjMKKworICAgICAgICBBZGRpbmcgdGVzdHMgZm9yIHRoaXMgaXMgZGlmZmljdWx0IGJl
Y2F1c2Ugd2UgZG9uJ3QgY3VycmVudGx5IGhhdmUgRFJUIHN1cHBvcnQgZm9yIG5vdGlmaWNhdGlv
bnMgb24gTWFjLCBvbmx5IFdpbmRvd3MuCisgICAgICAgIEpvaG4gaXMgZ29pbmcgdG8gYWRkIHRo
aXMgc29vbiBhbmQgd2lsbCBhZGQgYSB0ZXN0IGZvciB0aGlzIGF0IHRoYXQgdGltZS4KKwogMjAx
MC0wNC0wOSAgRG1pdHJ5IFRpdG92ICA8ZGltaWNoQGNocm9taXVtLm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9u
cy9Ob3RpZmljYXRpb24uY3BwIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5j
cHAKaW5kZXggMGM0NGRiNi4uMTgyZjcxMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbi5jcHAKKysrIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbi5jcHAKQEAgLTQyLDcgKzQyLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Ob3Rp
ZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIHVybCwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRl
ciogcHJvdmlkZXIpCitOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBLVVJMJiB1cmws
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3Rp
ZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRl
eHQsIHRoaXMpCiAgICAgLCBtX2lzSFRNTCh0cnVlKQogICAgICwgbV9pc1Nob3dpbmcoZmFsc2Up
CkBAIC01NCwxMSArNTQsMTIgQEAgTm90aWZpY2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgU3Ry
aW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEUKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIG1fbm90aWZpY2F0aW9uVVJMID0gY29udGV4dC0+Y29tcGxldGVV
UkwodXJsKTsKLSAgICBpZiAodXJsLmlzRW1wdHkoKSB8fCAhbV9ub3RpZmljYXRpb25VUkwuaXNW
YWxpZCgpKSB7CisgICAgaWYgKHVybC5pc0VtcHR5KCkgfHwgIXVybC5pc1ZhbGlkKCkpIHsKICAg
ICAgICAgZWMgPSBTWU5UQVhfRVJSOwogICAgICAgICByZXR1cm47CiAgICAgfQorCisgICAgbV9u
b3RpZmljYXRpb25VUkwgPSB1cmw7CiB9CiAKIE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNv
bnN0IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJv
dmlkZXIpCkBAIC03NCw5ICs3NSw3IEBAIE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0
IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0aW9uCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoIWNvbnRlbnRzLmljb24oKS5pc0VtcHR5KCkpCi0g
ICAgICAgIG1faWNvblVSTCA9IGNvbnRleHQtPmNvbXBsZXRlVVJMKGNvbnRlbnRzLmljb24oKSk7
Ci0gICAgaWYgKCFtX2ljb25VUkwuaXNFbXB0eSgpICYmICFtX2ljb25VUkwuaXNWYWxpZCgpKSB7
CisgICAgaWYgKCFjb250ZW50cy5pY29uKCkuaXNFbXB0eSgpICYmICFjb250ZW50cy5pY29uKCku
aXNWYWxpZCgpKSB7CiAgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaCBi
L1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaAppbmRleCBjMmJhNWQ5Li5mZjU2
ZWRjIDEwMDY0NAotLS0gYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmgKKysr
IGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCkBAIC01NSw3ICs1NSw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIE5vdGlmaWNhdGlvbiA6IHB1YmxpYyBS
ZWZDb3VudGVkPE5vdGlmaWNhdGlvbj4sIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHB1YmxpYyBF
dmVudFRhcmdldCB7IAogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiog
Y3JlYXRlKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikgeyBy
ZXR1cm4gbmV3IE5vdGlmaWNhdGlvbih1cmwsIGNvbnRleHQsIGVjLCBwcm92aWRlcik7IH0KKyAg
ICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiogY3JlYXRlKGNvbnN0IEtVUkwmIHVybCwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlv
blByZXNlbnRlciogcHJvdmlkZXIpIHsgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24odXJsLCBjb250
ZXh0LCBlYywgcHJvdmlkZXIpOyB9CiAgICAgICAgIHN0YXRpYyBOb3RpZmljYXRpb24qIGNyZWF0
ZShjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYgY29udGVudHMsIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIq
IHByb3ZpZGVyKSB7IHJldHVybiBuZXcgTm90aWZpY2F0aW9uKGNvbnRlbnRzLCBjb250ZXh0LCBl
YywgcHJvdmlkZXIpOyB9CiAgICAgICAgIAogICAgICAgICB2aXJ0dWFsIH5Ob3RpZmljYXRpb24o
KTsKQEAgLTY1LDcgKzY1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIAogICAgICAgICBi
b29sIGlzSFRNTCgpIHsgcmV0dXJuIG1faXNIVE1MOyB9CiAgICAgICAgIEtVUkwgdXJsKCkgeyBy
ZXR1cm4gbV9ub3RpZmljYXRpb25VUkw7IH0KLSAgICAgICAgS1VSTCBpY29uVVJMKCkgeyByZXR1
cm4gbV9pY29uVVJMOyB9CisgICAgICAgIEtVUkwgaWNvblVSTCgpIHsgcmV0dXJuIG1fY29udGVu
dHMuaWNvbigpOyB9CiAgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cygpIHsg
cmV0dXJuIG1fY29udGVudHM7IH0KIAogICAgICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJ
U1RFTkVSKGRpc3BsYXkpOwpAQCAtODAsNyArODAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIHZpcnR1YWwgTm90aWZpY2F0aW9uKiB0b05vdGlmaWNhdGlvbigpIHsgcmV0dXJuIHRo
aXM7IH0KIAogICAgIHByaXZhdGU6Ci0gICAgICAgIE5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcm
IHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMs
IE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpOworICAgICAgICBOb3RpZmljYXRpb24o
Y29uc3QgS1VSTCYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRp
b25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcik7CiAgICAgICAgIE5v
dGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYgZmllbGRzLCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJl
c2VudGVyKiBwcm92aWRlcik7CiAKICAgICAgICAgLy8gRXZlbnRUYXJnZXQgaW50ZXJmYWNlCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmggYi9X
ZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKaW5kZXggYWUzZGMwMi4u
NDA5YzI3NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNl
bnRlci5oCisrKyBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaApA
QCAtNTUsNyArNTUsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAgICAgICAgIGVj
ID0gSU5WQUxJRF9TVEFURV9FUlI7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uOjpjcmVhdGUoS1VSTChQYXJz
ZWRVUkxTdHJpbmcsIFVSSSksIGNvbnRleHQoKSwgZWMsIHByZXNlbnRlcigpKTsKKyAgICAgICAg
ICAgIGlmIChVUkkuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgZWMgPSBTWU5UQVhfRVJS
OworICAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
cmV0dXJuIE5vdGlmaWNhdGlvbjo6Y3JlYXRlKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+Y29t
cGxldGVVUkwoVVJJKSwgY29udGV4dCgpLCBlYywgcHJlc2VudGVyKCkpOwogICAgICAgICB9CiAK
ICAgICAgICAgTm90aWZpY2F0aW9uKiBjcmVhdGVOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiBp
Y29uVVJJLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHksIEV4Y2VwdGlv
bkNvZGUmIGVjKQpAQCAtNjQsNyArNjgsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CiAgICAgICAgICAgICAgICAgcmV0dXJu
IDA7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyBjb250
ZW50cyhpY29uVVJJLCB0aXRsZSwgYm9keSk7CisgICAgICAgICAgICBpZiAoaWNvblVSSS5pc0Vt
cHR5KCkpIHsKKyAgICAgICAgICAgICAgICBlYyA9IFNZTlRBWF9FUlI7CisgICAgICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBOb3RpZmljYXRpb25Db250
ZW50cyBjb250ZW50cyhtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPmNvbXBsZXRlVVJMKGljb25V
UkkpLCB0aXRsZSwgYm9keSk7CiAgICAgICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uOjpjcmVh
dGUoY29udGVudHMsIGNvbnRleHQoKSwgZWMsIHByZXNlbnRlcigpKTsKICAgICAgICAgfQogCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaCBi
L1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250ZW50cy5oCmluZGV4IGViZGM1
MTQuLjIzMTk5ODAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRp
b25Db250ZW50cy5oCisrKyBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250
ZW50cy5oCkBAIC0zOCwxNyArMzgsMTcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNz
IE5vdGlmaWNhdGlvbkNvbnRlbnRzIHsgCiAgICAgcHVibGljOgogICAgICAgICBOb3RpZmljYXRp
b25Db250ZW50cygpIHt9Ci0gICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzKGNvbnN0IFN0cmlu
ZyYgaWNvblVybCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiBib2R5KSAKKyAg
ICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMoY29uc3QgS1VSTCYgaWNvblVybCwgY29uc3QgU3Ry
aW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiBib2R5KSAKICAgICAgICAgICAgIDogbV9pY29uKGlj
b25VcmwpCiAgICAgICAgICAgICAsIG1fdGl0bGUodGl0bGUpCiAgICAgICAgICAgICAsIG1fYm9k
eShib2R5KSB7fQogCi0gICAgICAgIFN0cmluZyBpY29uKCkgY29uc3QgeyByZXR1cm4gbV9pY29u
OyB9CisgICAgICAgIEtVUkwgaWNvbigpIGNvbnN0IHsgcmV0dXJuIG1faWNvbjsgfQogICAgICAg
ICBTdHJpbmcgdGl0bGUoKSBjb25zdCB7IHJldHVybiBtX3RpdGxlOyB9CiAgICAgICAgIFN0cmlu
ZyBib2R5KCkgY29uc3QgeyByZXR1cm4gbV9ib2R5OyB9CiAKICAgICBwcml2YXRlOgotICAgICAg
ICBTdHJpbmcgbV9pY29uOworICAgICAgICBLVVJMIG1faWNvbjsKICAgICAgICAgU3RyaW5nIG1f
dGl0bGU7CiAgICAgICAgIFN0cmluZyBtX2JvZHk7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDBh
ODkyMjEuLjQxMjJiMzQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysr
IGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEwLTA0LTA5
ICBBYXJvbiBCb29kbWFuICA8YWFAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN1cHBvcnQgcmVsYXRpdmUgVVJMcyBmb3Igbm90
aWZpaWNhdGlvbnMgb24gQ2hyb21pdW0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0zNjYyMworCisgICAgICAgIEFkZGluZyB0ZXN0cyBmb3IgdGhpcyBp
cyBkaWZmaWN1bHQgYmVjYXVzZSB3ZSBkb24ndCBjdXJyZW50bHkgaGF2ZSBEUlQgc3VwcG9ydCBm
b3Igbm90aWZpY2F0aW9ucyBvbiBNYWMsIG9ubHkgV2luZG93cy4KKyAgICAgICAgSm9obiBpcyBn
b2luZyB0byBhZGQgdGhpcyBzb29uIGFuZCB3aWxsIGFkZCBhIHRlc3QgZm9yIHRoaXMgYXQgdGhh
dCB0aW1lLgorCiAyMDEwLTA0LTA5ICBKb2NoZW4gRWlzaW5nZXIgIDxqb2NoZW5AY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4KZGlmZiAtLWdpdCBhL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmggYi9XZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYk5vdGlmaWNhdGlvbi5oCmluZGV4IGI2M2RkMjAuLjlkNjRlMmEgMTAwNjQ0Ci0t
LSBhL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmgKKysrIGIvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJOb3RpZmljYXRpb24uaApAQCAtNzEsOSArNzEsNiBAQCBwdWJs
aWM6CiAgICAgLy8gSWYgSFRNTCwgdGhlIFVSTCB3aGljaCBjb250YWlucyB0aGUgY29udGVudHMg
b2YgdGhlIG5vdGlmaWNhdGlvbi4KICAgICBXRUJLSVRfQVBJIFdlYlVSTCB1cmwoKSBjb25zdDsK
IAotICAgIC8vIElmIG5vdCBIVE1MLCB0aGUgcGFyYW1ldGVycyBmb3IgdGhlIGljb24tdGl0bGUt
dGV4dCBub3RpZmljYXRpb24uCi0gICAgLy8gRklYTUU6IERlcHJlY2F0ZWQ7IHVzZSBpY29uVVJM
KCkgaW5zdGVhZC4KLSAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyBpY29uKCkgY29uc3Q7CiAgICAg
V0VCS0lUX0FQSSBXZWJVUkwgaWNvblVSTCgpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgV2ViU3Ry
aW5nIHRpdGxlKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBXZWJTdHJpbmcgYm9keSgpIGNvbnN0
OwpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwIGIv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwCmluZGV4IDI2ZmQ0YmMuLjUy
MDBkMTcgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm90aWZpY2F0aW9uLmNw
cAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAKQEAgLTc2LDEz
ICs3Niw2IEBAIFdlYlVSTCBXZWJOb3RpZmljYXRpb246OnVybCgpIGNvbnN0CiAgICAgcmV0dXJu
IG1fcHJpdmF0ZS0+dXJsKCk7CiB9CiAKLS8vIEZJWE1FOiByZW1vdmUgdGhpcyBkZXByZWNhdGVk
IGZ1bmN0aW9uIG9uY2UgYWxsIGNhbGxlcnMgdXNlIGljb25VUkwoKQotV2ViU3RyaW5nIFdlYk5v
dGlmaWNhdGlvbjo6aWNvbigpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKCFpc0hUTUwoKSk7Ci0gICAg
cmV0dXJuIG1fcHJpdmF0ZS0+Y29udGVudHMoKS5pY29uKCk7Ci19Ci0KIFdlYlVSTCBXZWJOb3Rp
ZmljYXRpb246Omljb25VUkwoKSBjb25zdAogewogICAgIEFTU0VSVCghaXNIVE1MKCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53029</attachid>
            <date>2010-04-09 18:49:21 -0700</date>
            <delta_ts>2010-04-13 15:54:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36623-20100409184919.patch</filename>
            <type>text/plain</type>
            <size>8175</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NmY4ZTAyNS4uNzJhYThkNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wNC0wOSAgQWFyb24gQm9vZG1h
biAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWljYXRpb25zIG9u
IENocm9taXVtLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzY2MjMKKworICAgICAgICBBZGRpbmcgdGVzdHMgZm9yIHRoaXMgaXMgZGlmZmljdWx0IGJl
Y2F1c2Ugd2UgZG9uJ3QgY3VycmVudGx5IGhhdmUgRFJUIHN1cHBvcnQgZm9yIG5vdGlmaWNhdGlv
bnMgb24gTWFjLCBvbmx5IFdpbmRvd3MuCisgICAgICAgIEpvaG4gaXMgZ29pbmcgdG8gYWRkIHRo
aXMgc29vbiBhbmQgd2lsbCBhZGQgYSB0ZXN0IGZvciB0aGlzIGF0IHRoYXQgdGltZS4KKwogMjAx
MC0wNC0wOSAgRG1pdHJ5IFRpdG92ICA8ZGltaWNoQGNocm9taXVtLm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9u
cy9Ob3RpZmljYXRpb24uY3BwIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5j
cHAKaW5kZXggMGM0NGRiNi4uMTgyZjcxMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbi5jcHAKKysrIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbi5jcHAKQEAgLTQyLDcgKzQyLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Ob3Rp
ZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIHVybCwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRl
ciogcHJvdmlkZXIpCitOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBLVVJMJiB1cmws
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3Rp
ZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKQogICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRl
eHQsIHRoaXMpCiAgICAgLCBtX2lzSFRNTCh0cnVlKQogICAgICwgbV9pc1Nob3dpbmcoZmFsc2Up
CkBAIC01NCwxMSArNTQsMTIgQEAgTm90aWZpY2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgU3Ry
aW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEUKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIG1fbm90aWZpY2F0aW9uVVJMID0gY29udGV4dC0+Y29tcGxldGVV
UkwodXJsKTsKLSAgICBpZiAodXJsLmlzRW1wdHkoKSB8fCAhbV9ub3RpZmljYXRpb25VUkwuaXNW
YWxpZCgpKSB7CisgICAgaWYgKHVybC5pc0VtcHR5KCkgfHwgIXVybC5pc1ZhbGlkKCkpIHsKICAg
ICAgICAgZWMgPSBTWU5UQVhfRVJSOwogICAgICAgICByZXR1cm47CiAgICAgfQorCisgICAgbV9u
b3RpZmljYXRpb25VUkwgPSB1cmw7CiB9CiAKIE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNv
bnN0IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJv
dmlkZXIpCkBAIC03NCw5ICs3NSw3IEBAIE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0
IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0aW9uCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoIWNvbnRlbnRzLmljb24oKS5pc0VtcHR5KCkpCi0g
ICAgICAgIG1faWNvblVSTCA9IGNvbnRleHQtPmNvbXBsZXRlVVJMKGNvbnRlbnRzLmljb24oKSk7
Ci0gICAgaWYgKCFtX2ljb25VUkwuaXNFbXB0eSgpICYmICFtX2ljb25VUkwuaXNWYWxpZCgpKSB7
CisgICAgaWYgKCFjb250ZW50cy5pY29uKCkuaXNFbXB0eSgpICYmICFjb250ZW50cy5pY29uKCku
aXNWYWxpZCgpKSB7CiAgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaCBi
L1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaAppbmRleCBjMmJhNWQ5Li5mZjU2
ZWRjIDEwMDY0NAotLS0gYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmgKKysr
IGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCkBAIC01NSw3ICs1NSw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIE5vdGlmaWNhdGlvbiA6IHB1YmxpYyBS
ZWZDb3VudGVkPE5vdGlmaWNhdGlvbj4sIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHB1YmxpYyBF
dmVudFRhcmdldCB7IAogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiog
Y3JlYXRlKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikgeyBy
ZXR1cm4gbmV3IE5vdGlmaWNhdGlvbih1cmwsIGNvbnRleHQsIGVjLCBwcm92aWRlcik7IH0KKyAg
ICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiogY3JlYXRlKGNvbnN0IEtVUkwmIHVybCwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlv
blByZXNlbnRlciogcHJvdmlkZXIpIHsgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24odXJsLCBjb250
ZXh0LCBlYywgcHJvdmlkZXIpOyB9CiAgICAgICAgIHN0YXRpYyBOb3RpZmljYXRpb24qIGNyZWF0
ZShjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYgY29udGVudHMsIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIq
IHByb3ZpZGVyKSB7IHJldHVybiBuZXcgTm90aWZpY2F0aW9uKGNvbnRlbnRzLCBjb250ZXh0LCBl
YywgcHJvdmlkZXIpOyB9CiAgICAgICAgIAogICAgICAgICB2aXJ0dWFsIH5Ob3RpZmljYXRpb24o
KTsKQEAgLTY1LDcgKzY1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIAogICAgICAgICBi
b29sIGlzSFRNTCgpIHsgcmV0dXJuIG1faXNIVE1MOyB9CiAgICAgICAgIEtVUkwgdXJsKCkgeyBy
ZXR1cm4gbV9ub3RpZmljYXRpb25VUkw7IH0KLSAgICAgICAgS1VSTCBpY29uVVJMKCkgeyByZXR1
cm4gbV9pY29uVVJMOyB9CisgICAgICAgIEtVUkwgaWNvblVSTCgpIHsgcmV0dXJuIG1fY29udGVu
dHMuaWNvbigpOyB9CiAgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cygpIHsg
cmV0dXJuIG1fY29udGVudHM7IH0KIAogICAgICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJ
U1RFTkVSKGRpc3BsYXkpOwpAQCAtODAsNyArODAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIHZpcnR1YWwgTm90aWZpY2F0aW9uKiB0b05vdGlmaWNhdGlvbigpIHsgcmV0dXJuIHRo
aXM7IH0KIAogICAgIHByaXZhdGU6Ci0gICAgICAgIE5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcm
IHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMs
IE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpOworICAgICAgICBOb3RpZmljYXRpb24o
Y29uc3QgS1VSTCYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRp
b25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcik7CiAgICAgICAgIE5v
dGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYgZmllbGRzLCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJl
c2VudGVyKiBwcm92aWRlcik7CiAKICAgICAgICAgLy8gRXZlbnRUYXJnZXQgaW50ZXJmYWNlCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmggYi9X
ZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKaW5kZXggYWUzZGMwMi4u
YWNmMWFlNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNl
bnRlci5oCisrKyBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaApA
QCAtNTUsNyArNTUsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAgICAgICAgIGVj
ID0gSU5WQUxJRF9TVEFURV9FUlI7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uOjpjcmVhdGUoS1VSTChQYXJz
ZWRVUkxTdHJpbmcsIFVSSSksIGNvbnRleHQoKSwgZWMsIHByZXNlbnRlcigpKTsKKyAgICAgICAg
ICAgIGlmIChVUkkuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgZWMgPSBTWU5UQVhfRVJS
OworICAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
cmV0dXJuIE5vdGlmaWNhdGlvbjo6Y3JlYXRlKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+Y29t
cGxldGVVUkwoVVJJKSwgY29udGV4dCgpLCBlYywgcHJlc2VudGVyKCkpOwogICAgICAgICB9CiAK
ICAgICAgICAgTm90aWZpY2F0aW9uKiBjcmVhdGVOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiBp
Y29uVVJJLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHksIEV4Y2VwdGlv
bkNvZGUmIGVjKQpAQCAtNjQsNyArNjgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
ICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsKICAgICAgICAgICAgICAgICByZXR1cm4g
MDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzIGNvbnRl
bnRzKGljb25VUkksIHRpdGxlLCBib2R5KTsKKyAgICAgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRl
bnRzIGNvbnRlbnRzKGljb25VUkkuaXNFbXB0eSgpID8gS1VSTCgpIDogbV9zY3JpcHRFeGVjdXRp
b25Db250ZXh0LT5jb21wbGV0ZVVSTChpY29uVVJJKSwgdGl0bGUsIGJvZHkpOwogICAgICAgICAg
ICAgcmV0dXJuIE5vdGlmaWNhdGlvbjo6Y3JlYXRlKGNvbnRlbnRzLCBjb250ZXh0KCksIGVjLCBw
cmVzZW50ZXIoKSk7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbkNvbnRlbnRzLmggYi9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uQ29udGVudHMuaAppbmRleCBlYmRjNTE0Li4yMzE5OTgwIDEwMDY0NAotLS0gYS9XZWJD
b3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaAorKysgYi9XZWJDb3JlL25v
dGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaApAQCAtMzgsMTcgKzM4LDE3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICBjbGFzcyBOb3RpZmljYXRpb25Db250ZW50cyB7IAogICAg
IHB1YmxpYzoKICAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMoKSB7fQotICAgICAgICBOb3Rp
ZmljYXRpb25Db250ZW50cyhjb25zdCBTdHJpbmcmIGljb25VcmwsIGNvbnN0IFN0cmluZyYgdGl0
bGUsIGNvbnN0IFN0cmluZyYgYm9keSkgCisgICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzKGNv
bnN0IEtVUkwmIGljb25VcmwsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgYm9k
eSkgCiAgICAgICAgICAgICA6IG1faWNvbihpY29uVXJsKQogICAgICAgICAgICAgLCBtX3RpdGxl
KHRpdGxlKQogICAgICAgICAgICAgLCBtX2JvZHkoYm9keSkge30KIAotICAgICAgICBTdHJpbmcg
aWNvbigpIGNvbnN0IHsgcmV0dXJuIG1faWNvbjsgfQorICAgICAgICBLVVJMIGljb24oKSBjb25z
dCB7IHJldHVybiBtX2ljb247IH0KICAgICAgICAgU3RyaW5nIHRpdGxlKCkgY29uc3QgeyByZXR1
cm4gbV90aXRsZTsgfQogICAgICAgICBTdHJpbmcgYm9keSgpIGNvbnN0IHsgcmV0dXJuIG1fYm9k
eTsgfQogCiAgICAgcHJpdmF0ZToKLSAgICAgICAgU3RyaW5nIG1faWNvbjsKKyAgICAgICAgS1VS
TCBtX2ljb247CiAgICAgICAgIFN0cmluZyBtX3RpdGxlOwogICAgICAgICBTdHJpbmcgbV9ib2R5
OwogICAgIH07CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCAwYTg5MjIxLi40MTIyYjM0IDEwMDY0NAotLS0gYS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxMyBAQAorMjAxMC0wNC0wOSAgQWFyb24gQm9vZG1hbiAgPGFhQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBT
dXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWljYXRpb25zIG9uIENocm9taXVtLgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY2MjMKKworICAg
ICAgICBBZGRpbmcgdGVzdHMgZm9yIHRoaXMgaXMgZGlmZmljdWx0IGJlY2F1c2Ugd2UgZG9uJ3Qg
Y3VycmVudGx5IGhhdmUgRFJUIHN1cHBvcnQgZm9yIG5vdGlmaWNhdGlvbnMgb24gTWFjLCBvbmx5
IFdpbmRvd3MuCisgICAgICAgIEpvaG4gaXMgZ29pbmcgdG8gYWRkIHRoaXMgc29vbiBhbmQgd2ls
bCBhZGQgYSB0ZXN0IGZvciB0aGlzIGF0IHRoYXQgdGltZS4KKwogMjAxMC0wNC0wOSAgSm9jaGVu
IEVpc2luZ2VyICA8am9jaGVuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBE
YXJpbiBGaXNoZXIuCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYk5vdGlm
aWNhdGlvbi5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJOb3RpZmljYXRpb24uaAppbmRl
eCBiNjNkZDIwLi45ZDY0ZTJhIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
Yk5vdGlmaWNhdGlvbi5oCisrKyBiL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0
aW9uLmgKQEAgLTcxLDkgKzcxLDYgQEAgcHVibGljOgogICAgIC8vIElmIEhUTUwsIHRoZSBVUkwg
d2hpY2ggY29udGFpbnMgdGhlIGNvbnRlbnRzIG9mIHRoZSBub3RpZmljYXRpb24uCiAgICAgV0VC
S0lUX0FQSSBXZWJVUkwgdXJsKCkgY29uc3Q7CiAKLSAgICAvLyBJZiBub3QgSFRNTCwgdGhlIHBh
cmFtZXRlcnMgZm9yIHRoZSBpY29uLXRpdGxlLXRleHQgbm90aWZpY2F0aW9uLgotICAgIC8vIEZJ
WE1FOiBEZXByZWNhdGVkOyB1c2UgaWNvblVSTCgpIGluc3RlYWQuCi0gICAgV0VCS0lUX0FQSSBX
ZWJTdHJpbmcgaWNvbigpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgV2ViVVJMIGljb25VUkwoKSBj
b25zdDsKICAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyB0aXRsZSgpIGNvbnN0OwogICAgIFdFQktJ
VF9BUEkgV2ViU3RyaW5nIGJvZHkoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViTm90aWZpY2F0aW9uLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm90aWZp
Y2F0aW9uLmNwcAppbmRleCAyNmZkNGJjLi41MjAwZDE3IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJOb3RpZmljYXRpb24uY3BwCkBAIC03NiwxMyArNzYsNiBAQCBXZWJVUkwgV2ViTm90aWZpY2F0
aW9uOjp1cmwoKSBjb25zdAogICAgIHJldHVybiBtX3ByaXZhdGUtPnVybCgpOwogfQogCi0vLyBG
SVhNRTogcmVtb3ZlIHRoaXMgZGVwcmVjYXRlZCBmdW5jdGlvbiBvbmNlIGFsbCBjYWxsZXJzIHVz
ZSBpY29uVVJMKCkKLVdlYlN0cmluZyBXZWJOb3RpZmljYXRpb246Omljb24oKSBjb25zdAotewot
ICAgIEFTU0VSVCghaXNIVE1MKCkpOwotICAgIHJldHVybiBtX3ByaXZhdGUtPmNvbnRlbnRzKCku
aWNvbigpOwotfQotCiBXZWJVUkwgV2ViTm90aWZpY2F0aW9uOjppY29uVVJMKCkgY29uc3QKIHsK
ICAgICBBU1NFUlQoIWlzSFRNTCgpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53292</attachid>
            <date>2010-04-13 15:54:43 -0700</date>
            <delta_ts>2010-04-13 17:56:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36623-20100413155442.patch</filename>
            <type>text/plain</type>
            <size>10130</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MjE2ZmQxNi4uYjZhNDEzYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAxMC0wNC0xMyAgQWFyb24gQm9vZG1h
biAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWNhdGlvbnMgb24g
Q2hyb21pdW0uIFRoZXkgd2VyZW4ndCB3b3JraW5nIHByZXZpb3VzbHkgYmVjYXVzZSBXZWJDb3Jl
IHdhcyBpbnNlcnRpbmcKKyAgICAgICAgdGhlIHJlbGF0aXZlIFVSTCBpbnRvIGEgS1VSTCBpbnN0
YW5jZSwgYnV0IHdoZW4gS1VSTCBpcyBiYWNrZWQgYnkgR1VSTCBhcyBpdCBpcyBvbiBDaHJvbWl1
bSwgcmVsYXRpdmUgVVJMcyBhcmUKKyAgICAgICAgdW5zdXBwb3J0ZWQuIEZpeGVkIGJ5IHJlc29s
dmluZyB0aGUgcmVsYXRpdmUgVVJMIGZpcnN0LgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjYyMworCisgICAgICAgIEFkZGluZyB0ZXN0cyBmb3Ig
dGhpcyBpcyBkaWZmaWN1bHQgYmVjYXVzZSB3ZSBkb24ndCBjdXJyZW50bHkgaGF2ZSBEUlQgc3Vw
cG9ydCBmb3Igbm90aWZpY2F0aW9ucyBvbiBNYWMsIG9ubHkgV2luZG93cy4KKworICAgICAgICBB
bHNvLCByZW1vdmVkIG5hbWVzIGZyb20gc29tZSBtZXRob2QgZGVjbGFyYXRpb25zIHRoYXQgd2Vy
ZW4ndCBhZGRpbmcgYW55IGluZm9ybWF0aW9uLgorCisgICAgICAgICogbm90aWZpY2F0aW9ucy9O
b3RpZmljYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uOjpOb3RpZmlj
YXRpb24pOiBUYWtlIHJlc29sdmVkIEtVUkwgaW5zdGVhZCBvZiByZWxhdGl2ZSBzdHJpbmcuIFJl
bW92ZSBwYXJhbXRlciBuYW1lcy4KKyAgICAgICAgKiBub3RpZmljYXRpb25zL05vdGlmaWNhdGlv
bi5oOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uOjpjcmVhdGUpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6aWNvblVSTCk6IFJldHVybiByZXNvbHZlZCBL
VVJMIGZyb20gbV9jb250ZW50cy4KKyAgICAgICAgKiBub3RpZmljYXRpb25zL05vdGlmaWNhdGlv
bkNlbnRlci5oOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2VudGVyOjpjcmVhdGVI
VE1MTm90aWZpY2F0aW9uKTogUmVzb2x2ZSBVUkxzIGltbWVkaWF0ZWx5LCByYXRoZXIgdGhhbiBw
YXNzaW5nIHJlbGF0aXZlIG9uZXMuCisgICAgICAgIChXZWJDb3JlOjpOb3RpZmljYXRpb25DZW50
ZXI6OmNyZWF0ZU5vdGlmaWNhdGlvbik6IERpdHRvLgorICAgICAgICAqIG5vdGlmaWNhdGlvbnMv
Tm90aWZpY2F0aW9uQ29udGVudHMuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbkNv
bnRlbnRzOjpOb3RpZmljYXRpb25Db250ZW50cyk6IFVzZSByZXNvbHZlZCBVUkxzLgorICAgICAg
ICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ29udGVudHM6Omljb24pOiBSZW1vdmUgZGVwcmVjYXRl
ZCBtZXRob2QsIG5vIGxvbmdlciB1c2VkIGJ5IGNsaWVudHMuCisKIDIwMTAtMDQtMTIgIFRpbW90
aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAgIFNlY3VyaXR5T3JpZ2lu
IG5lZWRzIGEgd2F5IHRvIHJlbW92ZSBpbmRpdmlkdWFsIE9yaWdpbkFjY2Vzc0VudHJpZXMKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwIGIvV2ViQ29y
ZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKaW5kZXggMGM0NGRiNi4uMTgyZjcxMyAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKKysrIGIv
V2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5jcHAKQEAgLTQyLDcgKzQyLDcgQEAK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1Ob3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25z
dCBTdHJpbmcmIHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9u
Q29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpCitOb3RpZmljYXRpb246
Ok5vdGlmaWNhdGlvbihjb25zdCBLVVJMJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNv
bnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVy
KQogICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQsIHRoaXMpCiAgICAgLCBtX2lzSFRNTCh0
cnVlKQogICAgICwgbV9pc1Nob3dpbmcoZmFsc2UpCkBAIC01NCwxMSArNTQsMTIgQEAgTm90aWZp
Y2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIGNvbnRleHQsIEUKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1fbm90aWZp
Y2F0aW9uVVJMID0gY29udGV4dC0+Y29tcGxldGVVUkwodXJsKTsKLSAgICBpZiAodXJsLmlzRW1w
dHkoKSB8fCAhbV9ub3RpZmljYXRpb25VUkwuaXNWYWxpZCgpKSB7CisgICAgaWYgKHVybC5pc0Vt
cHR5KCkgfHwgIXVybC5pc1ZhbGlkKCkpIHsKICAgICAgICAgZWMgPSBTWU5UQVhfRVJSOwogICAg
ICAgICByZXR1cm47CiAgICAgfQorCisgICAgbV9ub3RpZmljYXRpb25VUkwgPSB1cmw7CiB9CiAK
IE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBj
b250ZW50cywgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYg
ZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpCkBAIC03NCw5ICs3NSw3IEBAIE5v
dGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250
ZW50cywgU2NyaXB0RXhlY3V0aW9uCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAo
IWNvbnRlbnRzLmljb24oKS5pc0VtcHR5KCkpCi0gICAgICAgIG1faWNvblVSTCA9IGNvbnRleHQt
PmNvbXBsZXRlVVJMKGNvbnRlbnRzLmljb24oKSk7Ci0gICAgaWYgKCFtX2ljb25VUkwuaXNFbXB0
eSgpICYmICFtX2ljb25VUkwuaXNWYWxpZCgpKSB7CisgICAgaWYgKCFjb250ZW50cy5pY29uKCku
aXNFbXB0eSgpICYmICFjb250ZW50cy5pY29uKCkuaXNWYWxpZCgpKSB7CiAgICAgICAgIGVjID0g
U1lOVEFYX0VSUjsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUv
bm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaCBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3Rp
ZmljYXRpb24uaAppbmRleCBjMmJhNWQ5Li5iYWM1YjE4IDEwMDY0NAotLS0gYS9XZWJDb3JlL25v
dGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmgKKysrIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05v
dGlmaWNhdGlvbi5oCkBAIC01NSw4ICs1NSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAg
IGNsYXNzIE5vdGlmaWNhdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPE5vdGlmaWNhdGlvbj4sIHB1
YmxpYyBBY3RpdmVET01PYmplY3QsIHB1YmxpYyBFdmVudFRhcmdldCB7IAogICAgIHB1YmxpYzoK
LSAgICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiogY3JlYXRlKGNvbnN0IFN0cmluZyYgdXJsLCBT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZp
Y2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikgeyByZXR1cm4gbmV3IE5vdGlmaWNhdGlvbih1cmws
IGNvbnRleHQsIGVjLCBwcm92aWRlcik7IH0KLSAgICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiog
Y3JlYXRlKGNvbnN0IE5vdGlmaWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cywgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNl
bnRlciogcHJvdmlkZXIpIHsgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24oY29udGVudHMsIGNvbnRl
eHQsIGVjLCBwcm92aWRlcik7IH0KKyAgICAgICAgc3RhdGljIE5vdGlmaWNhdGlvbiogY3JlYXRl
KGNvbnN0IEtVUkwmLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0aW9uQ29kZSYsIE5v
dGlmaWNhdGlvblByZXNlbnRlciopIHsgcmV0dXJuIG5ldyBOb3RpZmljYXRpb24odXJsLCBjb250
ZXh0LCBlYywgcHJvdmlkZXIpOyB9CisgICAgICAgIHN0YXRpYyBOb3RpZmljYXRpb24qIGNyZWF0
ZShjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBF
eGNlcHRpb25Db2RlJiwgTm90aWZpY2F0aW9uUHJlc2VudGVyKikgeyByZXR1cm4gbmV3IE5vdGlm
aWNhdGlvbihjb250ZW50cywgY29udGV4dCwgZWMsIHByb3ZpZGVyKTsgfQogICAgICAgICAKICAg
ICAgICAgdmlydHVhbCB+Tm90aWZpY2F0aW9uKCk7CiAKQEAgLTY1LDcgKzY1LDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIAogICAgICAgICBib29sIGlzSFRNTCgpIHsgcmV0dXJuIG1faXNI
VE1MOyB9CiAgICAgICAgIEtVUkwgdXJsKCkgeyByZXR1cm4gbV9ub3RpZmljYXRpb25VUkw7IH0K
LSAgICAgICAgS1VSTCBpY29uVVJMKCkgeyByZXR1cm4gbV9pY29uVVJMOyB9CisgICAgICAgIEtV
UkwgaWNvblVSTCgpIHsgcmV0dXJuIG1fY29udGVudHMuaWNvbigpOyB9CiAgICAgICAgIE5vdGlm
aWNhdGlvbkNvbnRlbnRzJiBjb250ZW50cygpIHsgcmV0dXJuIG1fY29udGVudHM7IH0KIAogICAg
ICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGRpc3BsYXkpOwpAQCAtODAsOCAr
ODAsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgTm90aWZpY2F0aW9u
KiB0b05vdGlmaWNhdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0KIAogICAgIHByaXZhdGU6Ci0gICAg
ICAgIE5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJv
dmlkZXIpOwotICAgICAgICBOb3RpZmljYXRpb24oY29uc3QgTm90aWZpY2F0aW9uQ29udGVudHMm
IGZpZWxkcywgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYg
ZWMsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpOworICAgICAgICBOb3RpZmljYXRp
b24oY29uc3QgS1VSTCYsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJiwg
Tm90aWZpY2F0aW9uUHJlc2VudGVyKik7CisgICAgICAgIE5vdGlmaWNhdGlvbihjb25zdCBOb3Rp
ZmljYXRpb25Db250ZW50cyYsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBFeGNlcHRpb25Db2Rl
JiwgTm90aWZpY2F0aW9uUHJlc2VudGVyKik7CiAKICAgICAgICAgLy8gRXZlbnRUYXJnZXQgaW50
ZXJmYWNlCiAgICAgICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7IH0K
QEAgLTkxLDcgKzkxLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIGJvb2wgbV9p
c0hUTUw7CiAgICAgICAgIEtVUkwgbV9ub3RpZmljYXRpb25VUkw7Ci0gICAgICAgIEtVUkwgbV9p
Y29uVVJMOwogICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyBtX2NvbnRlbnRzOwogCiAgICAg
ICAgIGJvb2wgbV9pc1Nob3dpbmc7CmRpZmYgLS1naXQgYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMv
Tm90aWZpY2F0aW9uQ2VudGVyLmggYi9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9u
Q2VudGVyLmgKaW5kZXggYWUzZGMwMi4uYWNmMWFlNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3Rp
ZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oCisrKyBiL1dlYkNvcmUvbm90aWZpY2F0aW9u
cy9Ob3RpZmljYXRpb25DZW50ZXIuaApAQCAtNTUsNyArNTUsMTEgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgICAgICAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFURV9FUlI7CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gTm90aWZp
Y2F0aW9uOjpjcmVhdGUoS1VSTChQYXJzZWRVUkxTdHJpbmcsIFVSSSksIGNvbnRleHQoKSwgZWMs
IHByZXNlbnRlcigpKTsKKyAgICAgICAgICAgIGlmIChVUkkuaXNFbXB0eSgpKSB7CisgICAgICAg
ICAgICAgICAgZWMgPSBTWU5UQVhfRVJSOworICAgICAgICAgICAgICAgIHJldHVybiAwOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjo6Y3JlYXRlKG1fc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dC0+Y29tcGxldGVVUkwoVVJJKSwgY29udGV4dCgpLCBlYywgcHJl
c2VudGVyKCkpOwogICAgICAgICB9CiAKICAgICAgICAgTm90aWZpY2F0aW9uKiBjcmVhdGVOb3Rp
ZmljYXRpb24oY29uc3QgU3RyaW5nJiBpY29uVVJJLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25z
dCBTdHJpbmcmIGJvZHksIEV4Y2VwdGlvbkNvZGUmIGVjKQpAQCAtNjQsNyArNjgsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsK
ICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIE5v
dGlmaWNhdGlvbkNvbnRlbnRzIGNvbnRlbnRzKGljb25VUkksIHRpdGxlLCBib2R5KTsKKyAgICAg
ICAgICAgIE5vdGlmaWNhdGlvbkNvbnRlbnRzIGNvbnRlbnRzKGljb25VUkkuaXNFbXB0eSgpID8g
S1VSTCgpIDogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5jb21wbGV0ZVVSTChpY29uVVJJKSwg
dGl0bGUsIGJvZHkpOwogICAgICAgICAgICAgcmV0dXJuIE5vdGlmaWNhdGlvbjo6Y3JlYXRlKGNv
bnRlbnRzLCBjb250ZXh0KCksIGVjLCBwcmVzZW50ZXIoKSk7CiAgICAgICAgIH0KIApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRlbnRzLmggYi9XZWJD
b3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaAppbmRleCBlYmRjNTE0Li4y
MzE5OTgwIDEwMDY0NAotLS0gYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29u
dGVudHMuaAorKysgYi9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMu
aApAQCAtMzgsMTcgKzM4LDE3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBjbGFzcyBOb3Rp
ZmljYXRpb25Db250ZW50cyB7IAogICAgIHB1YmxpYzoKICAgICAgICAgTm90aWZpY2F0aW9uQ29u
dGVudHMoKSB7fQotICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyhjb25zdCBTdHJpbmcmIGlj
b25VcmwsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgYm9keSkgCisgICAgICAg
IE5vdGlmaWNhdGlvbkNvbnRlbnRzKGNvbnN0IEtVUkwmIGljb25VcmwsIGNvbnN0IFN0cmluZyYg
dGl0bGUsIGNvbnN0IFN0cmluZyYgYm9keSkgCiAgICAgICAgICAgICA6IG1faWNvbihpY29uVXJs
KQogICAgICAgICAgICAgLCBtX3RpdGxlKHRpdGxlKQogICAgICAgICAgICAgLCBtX2JvZHkoYm9k
eSkge30KIAotICAgICAgICBTdHJpbmcgaWNvbigpIGNvbnN0IHsgcmV0dXJuIG1faWNvbjsgfQor
ICAgICAgICBLVVJMIGljb24oKSBjb25zdCB7IHJldHVybiBtX2ljb247IH0KICAgICAgICAgU3Ry
aW5nIHRpdGxlKCkgY29uc3QgeyByZXR1cm4gbV90aXRsZTsgfQogICAgICAgICBTdHJpbmcgYm9k
eSgpIGNvbnN0IHsgcmV0dXJuIG1fYm9keTsgfQogCiAgICAgcHJpdmF0ZToKLSAgICAgICAgU3Ry
aW5nIG1faWNvbjsKKyAgICAgICAgS1VSTCBtX2ljb247CiAgICAgICAgIFN0cmluZyBtX3RpdGxl
OwogICAgICAgICBTdHJpbmcgbV9ib2R5OwogICAgIH07CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBhYTgxYjYw
Li5lOTQwNmY1IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0wNC0xMyAgQWFy
b24gQm9vZG1hbiAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWNh
dGlvbnMgb24gQ2hyb21pdW0uIFRoZXkgd2VyZW4ndCB3b3JraW5nIHByZXZpb3VzbHkgYmVjYXVz
ZSBXZWJDb3JlIHdhcyBpbnNlcnRpbmcKKyAgICAgICAgdGhlIHJlbGF0aXZlIFVSTCBpbnRvIGEg
S1VSTCBpbnN0YW5jZSwgYnV0IHdoZW4gS1VSTCBpcyBiYWNrZWQgYnkgR1VSTCBhcyBpdCBpcyBv
biBDaHJvbWl1bSwgcmVsYXRpdmUgVVJMcyBhcmUKKyAgICAgICAgdW5zdXBwb3J0ZWQuIEZpeGVk
IGJ5IHJlc29sdmluZyB0aGUgcmVsYXRpdmUgVVJMIGZpcnN0LgorCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjYyMworCisgICAgICAgIEFkZGluZyB0
ZXN0cyBmb3IgdGhpcyBpcyBkaWZmaWN1bHQgYmVjYXVzZSB3ZSBkb24ndCBjdXJyZW50bHkgaGF2
ZSBEUlQgc3VwcG9ydCBmb3Igbm90aWZpY2F0aW9ucyBvbiBNYWMsIG9ubHkgV2luZG93cy4KKwor
ICAgICAgICAqIHB1YmxpYy9XZWJOb3RpZmljYXRpb24uaDogUmVtb3ZlIGRlcHJlY2F0ZWQgaWNv
bigpIG1ldGhvZC4KKyAgICAgICAgKiBzcmMvV2ViTm90aWZpY2F0aW9uLmNwcDogRGl0dG8uCisK
IDIwMTAtMDQtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlbmFtZSBTZWN1cml0eU9yaWdpbjo6d2hpdGVMaXN0QWNjZXNzRnJvbU9yaWdpbiB0byBh
ZGRPcmlnaW5BY2Nlc3NXaGl0ZWxpc3RFbnRyeS4KZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmggYi9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYk5v
dGlmaWNhdGlvbi5oCmluZGV4IGI2M2RkMjAuLjlkNjRlMmEgMTAwNjQ0Ci0tLSBhL1dlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmgKKysrIGIvV2ViS2l0L2Nocm9taXVtL3B1
YmxpYy9XZWJOb3RpZmljYXRpb24uaApAQCAtNzEsOSArNzEsNiBAQCBwdWJsaWM6CiAgICAgLy8g
SWYgSFRNTCwgdGhlIFVSTCB3aGljaCBjb250YWlucyB0aGUgY29udGVudHMgb2YgdGhlIG5vdGlm
aWNhdGlvbi4KICAgICBXRUJLSVRfQVBJIFdlYlVSTCB1cmwoKSBjb25zdDsKIAotICAgIC8vIElm
IG5vdCBIVE1MLCB0aGUgcGFyYW1ldGVycyBmb3IgdGhlIGljb24tdGl0bGUtdGV4dCBub3RpZmlj
YXRpb24uCi0gICAgLy8gRklYTUU6IERlcHJlY2F0ZWQ7IHVzZSBpY29uVVJMKCkgaW5zdGVhZC4K
LSAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyBpY29uKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBX
ZWJVUkwgaWNvblVSTCgpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgV2ViU3RyaW5nIHRpdGxlKCkg
Y29uc3Q7CiAgICAgV0VCS0lUX0FQSSBXZWJTdHJpbmcgYm9keSgpIGNvbnN0OwpkaWZmIC0tZ2l0
IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwIGIvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwCmluZGV4IDI2ZmQ0YmMuLjUyMDBkMTcgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm90aWZpY2F0aW9uLmNwcAorKysgYi9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAKQEAgLTc2LDEzICs3Niw2IEBAIFdl
YlVSTCBXZWJOb3RpZmljYXRpb246OnVybCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fcHJpdmF0ZS0+
dXJsKCk7CiB9CiAKLS8vIEZJWE1FOiByZW1vdmUgdGhpcyBkZXByZWNhdGVkIGZ1bmN0aW9uIG9u
Y2UgYWxsIGNhbGxlcnMgdXNlIGljb25VUkwoKQotV2ViU3RyaW5nIFdlYk5vdGlmaWNhdGlvbjo6
aWNvbigpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKCFpc0hUTUwoKSk7Ci0gICAgcmV0dXJuIG1fcHJp
dmF0ZS0+Y29udGVudHMoKS5pY29uKCk7Ci19Ci0KIFdlYlVSTCBXZWJOb3RpZmljYXRpb246Omlj
b25VUkwoKSBjb25zdAogewogICAgIEFTU0VSVCghaXNIVE1MKCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53303</attachid>
            <date>2010-04-13 17:56:54 -0700</date>
            <delta_ts>2010-04-13 18:21:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36623-20100413175653.patch</filename>
            <type>text/plain</type>
            <size>9851</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MjE2ZmQxNi4uZjRlOTM2NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0wNC0xMyAgQWFyb24gQm9vZG1h
biAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWNhdGlvbnMgb24g
Q2hyb21pdW0uIFRoZXkgd2VyZW4ndCB3b3JraW5nIHByZXZpb3VzbHkgYmVjYXVzZSBXZWJDb3Jl
IHdhcyBpbnNlcnRpbmcKKyAgICAgICAgdGhlIHJlbGF0aXZlIFVSTCBpbnRvIGEgS1VSTCBpbnN0
YW5jZSwgYnV0IHdoZW4gS1VSTCBpcyBiYWNrZWQgYnkgR1VSTCBhcyBpdCBpcyBvbiBDaHJvbWl1
bSwgcmVsYXRpdmUgVVJMcyBhcmUKKyAgICAgICAgdW5zdXBwb3J0ZWQuIEZpeGVkIGJ5IHJlc29s
dmluZyB0aGUgcmVsYXRpdmUgVVJMIGZpcnN0LgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjYyMworCisgICAgICAgIEFkZGluZyB0ZXN0cyBmb3Ig
dGhpcyBpcyBkaWZmaWN1bHQgYmVjYXVzZSB3ZSBkb24ndCBjdXJyZW50bHkgaGF2ZSBEUlQgc3Vw
cG9ydCBmb3Igbm90aWZpY2F0aW9ucyBvbiBNYWMsIG9ubHkgV2luZG93cy4KKworICAgICAgICAq
IG5vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlm
aWNhdGlvbjo6Tm90aWZpY2F0aW9uKTogQWNjZXB0IHJlc29sdmVkIEtVUkwgaW5zdGVhZCBvZiBy
ZWxhdGl2ZSBzdHJpbmcuCisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaDoK
KyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6Y3JlYXRlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpOb3RpZmljYXRpb246Omljb25VUkwpOiBSZXR1cm4gcmVzb2x2ZWQgS1VSTCBp
bnN0ZWFkIG9mIHJlbGF0aXZlIHN0cmluZy4KKyAgICAgICAgKiBub3RpZmljYXRpb25zL05vdGlm
aWNhdGlvbkNlbnRlci5oOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2VudGVyOjpj
cmVhdGVIVE1MTm90aWZpY2F0aW9uKTogSW1tZWRpYXRlbHkgcmVzb2x2ZSBVUkwgaW5zdGVhZCBv
ZiBwYXNzaW5nIG9mZiByZWxhdGl2ZSBzdHJpbmcuCisgICAgICAgIChXZWJDb3JlOjpOb3RpZmlj
YXRpb25DZW50ZXI6OmNyZWF0ZU5vdGlmaWNhdGlvbik6IERpdHRvLgorICAgICAgICAqIG5vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlm
aWNhdGlvbkNvbnRlbnRzOjpOb3RpZmljYXRpb25Db250ZW50cyk6IEFjY2VwdCByZXNvbHZlZCBL
VVJMIGluc3RlYWQgb2YgcmVsYXRpdmUgc3RyaW5nLgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZp
Y2F0aW9uQ29udGVudHM6Omljb24pOiBSZXR1cm4gcmVzb2x2ZWQgVVJMLgorCiAyMDEwLTA0LTEy
ICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4KIAogICAgICAgICBTZWN1cml0
eU9yaWdpbiBuZWVkcyBhIHdheSB0byByZW1vdmUgaW5kaXZpZHVhbCBPcmlnaW5BY2Nlc3NFbnRy
aWVzCmRpZmYgLS1naXQgYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcCBi
L1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCmluZGV4IDBjNDRkYjYuLjE4
MmY3MTMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3Bw
CisrKyBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCkBAIC00Miw3ICs0
Miw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotTm90aWZpY2F0aW9uOjpOb3RpZmljYXRp
b24oY29uc3QgU3RyaW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4
Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKQorTm90aWZp
Y2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgS1VSTCYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBw
cm92aWRlcikKICAgICA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0LCB0aGlzKQogICAgICwgbV9p
c0hUTUwodHJ1ZSkKICAgICAsIG1faXNTaG93aW5nKGZhbHNlKQpAQCAtNTQsMTEgKzU0LDEyIEBA
IE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBFCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBt
X25vdGlmaWNhdGlvblVSTCA9IGNvbnRleHQtPmNvbXBsZXRlVVJMKHVybCk7Ci0gICAgaWYgKHVy
bC5pc0VtcHR5KCkgfHwgIW1fbm90aWZpY2F0aW9uVVJMLmlzVmFsaWQoKSkgeworICAgIGlmICh1
cmwuaXNFbXB0eSgpIHx8ICF1cmwuaXNWYWxpZCgpKSB7CiAgICAgICAgIGVjID0gU1lOVEFYX0VS
UjsKICAgICAgICAgcmV0dXJuOwogICAgIH0KKworICAgIG1fbm90aWZpY2F0aW9uVVJMID0gdXJs
OwogfQogCiBOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250
ZW50cyYgY29udGVudHMsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlv
bkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKQpAQCAtNzQsOSArNzUs
NyBAQCBOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250ZW50
cyYgY29udGVudHMsIFNjcmlwdEV4ZWN1dGlvbgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgaWYgKCFjb250ZW50cy5pY29uKCkuaXNFbXB0eSgpKQotICAgICAgICBtX2ljb25VUkwgPSBj
b250ZXh0LT5jb21wbGV0ZVVSTChjb250ZW50cy5pY29uKCkpOwotICAgIGlmICghbV9pY29uVVJM
LmlzRW1wdHkoKSAmJiAhbV9pY29uVVJMLmlzVmFsaWQoKSkgeworICAgIGlmICghY29udGVudHMu
aWNvbigpLmlzRW1wdHkoKSAmJiAhY29udGVudHMuaWNvbigpLmlzVmFsaWQoKSkgewogICAgICAg
ICBlYyA9IFNZTlRBWF9FUlI7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmggYi9XZWJDb3JlL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uLmgKaW5kZXggYzJiYTVkOS4uOThjYmZkZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCisrKyBiL1dlYkNvcmUvbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb24uaApAQCAtNTUsNyArNTUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKICAgICBjbGFzcyBOb3RpZmljYXRpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxOb3RpZmljYXRp
b24+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0LCBwdWJsaWMgRXZlbnRUYXJnZXQgeyAKICAgICBw
dWJsaWM6Ci0gICAgICAgIHN0YXRpYyBOb3RpZmljYXRpb24qIGNyZWF0ZShjb25zdCBTdHJpbmcm
IHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMs
IE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpIHsgcmV0dXJuIG5ldyBOb3RpZmljYXRp
b24odXJsLCBjb250ZXh0LCBlYywgcHJvdmlkZXIpOyB9CisgICAgICAgIHN0YXRpYyBOb3RpZmlj
YXRpb24qIGNyZWF0ZShjb25zdCBLVVJMJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNv
bnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVy
KSB7IHJldHVybiBuZXcgTm90aWZpY2F0aW9uKHVybCwgY29udGV4dCwgZWMsIHByb3ZpZGVyKTsg
fQogICAgICAgICBzdGF0aWMgTm90aWZpY2F0aW9uKiBjcmVhdGUoY29uc3QgTm90aWZpY2F0aW9u
Q29udGVudHMmIGNvbnRlbnRzLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNl
cHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikgeyByZXR1cm4g
bmV3IE5vdGlmaWNhdGlvbihjb250ZW50cywgY29udGV4dCwgZWMsIHByb3ZpZGVyKTsgfQogICAg
ICAgICAKICAgICAgICAgdmlydHVhbCB+Tm90aWZpY2F0aW9uKCk7CkBAIC02NSw3ICs2NSw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAKICAgICAgICAgYm9vbCBpc0hUTUwoKSB7IHJldHVy
biBtX2lzSFRNTDsgfQogICAgICAgICBLVVJMIHVybCgpIHsgcmV0dXJuIG1fbm90aWZpY2F0aW9u
VVJMOyB9Ci0gICAgICAgIEtVUkwgaWNvblVSTCgpIHsgcmV0dXJuIG1faWNvblVSTDsgfQorICAg
ICAgICBLVVJMIGljb25VUkwoKSB7IHJldHVybiBtX2NvbnRlbnRzLmljb24oKTsgfQogICAgICAg
ICBOb3RpZmljYXRpb25Db250ZW50cyYgY29udGVudHMoKSB7IHJldHVybiBtX2NvbnRlbnRzOyB9
CiAKICAgICAgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihkaXNwbGF5KTsKQEAg
LTgwLDggKzgwLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIE5vdGlm
aWNhdGlvbiogdG9Ob3RpZmljYXRpb24oKSB7IHJldHVybiB0aGlzOyB9CiAKICAgICBwcml2YXRl
OgotICAgICAgICBOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50
ZXIqIHByb3ZpZGVyKTsKLSAgICAgICAgTm90aWZpY2F0aW9uKGNvbnN0IE5vdGlmaWNhdGlvbkNv
bnRlbnRzJiBmaWVsZHMsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlv
bkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKTsKKyAgICAgICAgTm90
aWZpY2F0aW9uKGNvbnN0IEtVUkwmLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0aW9u
Q29kZSYsIE5vdGlmaWNhdGlvblByZXNlbnRlciopOworICAgICAgICBOb3RpZmljYXRpb24oY29u
c3QgTm90aWZpY2F0aW9uQ29udGVudHMmLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0
aW9uQ29kZSYsIE5vdGlmaWNhdGlvblByZXNlbnRlciopOwogCiAgICAgICAgIC8vIEV2ZW50VGFy
Z2V0IGludGVyZmFjZQogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7IHJl
ZigpOyB9CkBAIC05MSw3ICs5MSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBi
b29sIG1faXNIVE1MOwogICAgICAgICBLVVJMIG1fbm90aWZpY2F0aW9uVVJMOwotICAgICAgICBL
VVJMIG1faWNvblVSTDsKICAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMgbV9jb250ZW50czsK
IAogICAgICAgICBib29sIG1faXNTaG93aW5nOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9ub3RpZmlj
YXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlm
aWNhdGlvbkNlbnRlci5oCmluZGV4IGFlM2RjMDIuLmFjZjFhZTUgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaAorKysgYi9XZWJDb3JlL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKQEAgLTU1LDcgKzU1LDExIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwogICAg
ICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJu
IE5vdGlmaWNhdGlvbjo6Y3JlYXRlKEtVUkwoUGFyc2VkVVJMU3RyaW5nLCBVUkkpLCBjb250ZXh0
KCksIGVjLCBwcmVzZW50ZXIoKSk7CisgICAgICAgICAgICBpZiAoVVJJLmlzRW1wdHkoKSkgewor
ICAgICAgICAgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKKyAgICAgICAgICAgICAgICByZXR1cm4g
MDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb246OmNyZWF0
ZShtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPmNvbXBsZXRlVVJMKFVSSSksIGNvbnRleHQoKSwg
ZWMsIHByZXNlbnRlcigpKTsKICAgICAgICAgfQogCiAgICAgICAgIE5vdGlmaWNhdGlvbiogY3Jl
YXRlTm90aWZpY2F0aW9uKGNvbnN0IFN0cmluZyYgaWNvblVSSSwgY29uc3QgU3RyaW5nJiB0aXRs
ZSwgY29uc3QgU3RyaW5nJiBib2R5LCBFeGNlcHRpb25Db2RlJiBlYykKQEAgLTY0LDcgKzY4LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFU
RV9FUlI7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICB9Ci0gICAgICAg
ICAgICBOb3RpZmljYXRpb25Db250ZW50cyBjb250ZW50cyhpY29uVVJJLCB0aXRsZSwgYm9keSk7
CisgICAgICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyBjb250ZW50cyhpY29uVVJJLmlzRW1w
dHkoKSA/IEtVUkwoKSA6IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+Y29tcGxldGVVUkwoaWNv
blVSSSksIHRpdGxlLCBib2R5KTsKICAgICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb246OmNy
ZWF0ZShjb250ZW50cywgY29udGV4dCgpLCBlYywgcHJlc2VudGVyKCkpOwogICAgICAgICB9CiAK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250ZW50cy5o
IGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRlbnRzLmgKaW5kZXggZWJk
YzUxNC4uNTgwN2YzMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbkNvbnRlbnRzLmgKKysrIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNv
bnRlbnRzLmgKQEAgLTM4LDE3ICszOCwxNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xh
c3MgTm90aWZpY2F0aW9uQ29udGVudHMgeyAKICAgICBwdWJsaWM6CiAgICAgICAgIE5vdGlmaWNh
dGlvbkNvbnRlbnRzKCkge30KLSAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMoY29uc3QgU3Ry
aW5nJiBpY29uVXJsLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpIAor
ICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyhjb25zdCBLVVJMJiBpY29uVXJsLCBjb25zdCBT
dHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpCiAgICAgICAgICAgICA6IG1faWNvbihp
Y29uVXJsKQogICAgICAgICAgICAgLCBtX3RpdGxlKHRpdGxlKQogICAgICAgICAgICAgLCBtX2Jv
ZHkoYm9keSkge30KIAotICAgICAgICBTdHJpbmcgaWNvbigpIGNvbnN0IHsgcmV0dXJuIG1faWNv
bjsgfQorICAgICAgICBLVVJMIGljb24oKSBjb25zdCB7IHJldHVybiBtX2ljb247IH0KICAgICAg
ICAgU3RyaW5nIHRpdGxlKCkgY29uc3QgeyByZXR1cm4gbV90aXRsZTsgfQogICAgICAgICBTdHJp
bmcgYm9keSgpIGNvbnN0IHsgcmV0dXJuIG1fYm9keTsgfQogCiAgICAgcHJpdmF0ZToKLSAgICAg
ICAgU3RyaW5nIG1faWNvbjsKKyAgICAgICAgS1VSTCBtX2ljb247CiAgICAgICAgIFN0cmluZyBt
X3RpdGxlOwogICAgICAgICBTdHJpbmcgbV9ib2R5OwogICAgIH07CmRpZmYgLS1naXQgYS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBh
YTgxYjYwLi5lOTQwNmY1IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisr
KyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0wNC0x
MyAgQWFyb24gQm9vZG1hbiAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5v
dGlmaWNhdGlvbnMgb24gQ2hyb21pdW0uIFRoZXkgd2VyZW4ndCB3b3JraW5nIHByZXZpb3VzbHkg
YmVjYXVzZSBXZWJDb3JlIHdhcyBpbnNlcnRpbmcKKyAgICAgICAgdGhlIHJlbGF0aXZlIFVSTCBp
bnRvIGEgS1VSTCBpbnN0YW5jZSwgYnV0IHdoZW4gS1VSTCBpcyBiYWNrZWQgYnkgR1VSTCBhcyBp
dCBpcyBvbiBDaHJvbWl1bSwgcmVsYXRpdmUgVVJMcyBhcmUKKyAgICAgICAgdW5zdXBwb3J0ZWQu
IEZpeGVkIGJ5IHJlc29sdmluZyB0aGUgcmVsYXRpdmUgVVJMIGZpcnN0LgorCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjYyMworCisgICAgICAgIEFk
ZGluZyB0ZXN0cyBmb3IgdGhpcyBpcyBkaWZmaWN1bHQgYmVjYXVzZSB3ZSBkb24ndCBjdXJyZW50
bHkgaGF2ZSBEUlQgc3VwcG9ydCBmb3Igbm90aWZpY2F0aW9ucyBvbiBNYWMsIG9ubHkgV2luZG93
cy4KKworICAgICAgICAqIHB1YmxpYy9XZWJOb3RpZmljYXRpb24uaDogUmVtb3ZlIGRlcHJlY2F0
ZWQgaWNvbigpIG1ldGhvZC4KKyAgICAgICAgKiBzcmMvV2ViTm90aWZpY2F0aW9uLmNwcDogRGl0
dG8uCisKIDIwMTAtMDQtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgog
CiAgICAgICAgIFJlbmFtZSBTZWN1cml0eU9yaWdpbjo6d2hpdGVMaXN0QWNjZXNzRnJvbU9yaWdp
biB0byBhZGRPcmlnaW5BY2Nlc3NXaGl0ZWxpc3RFbnRyeS4KZGlmZiAtLWdpdCBhL1dlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmggYi9XZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYk5vdGlmaWNhdGlvbi5oCmluZGV4IGI2M2RkMjAuLjlkNjRlMmEgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmgKKysrIGIvV2ViS2l0L2Nocm9t
aXVtL3B1YmxpYy9XZWJOb3RpZmljYXRpb24uaApAQCAtNzEsOSArNzEsNiBAQCBwdWJsaWM6CiAg
ICAgLy8gSWYgSFRNTCwgdGhlIFVSTCB3aGljaCBjb250YWlucyB0aGUgY29udGVudHMgb2YgdGhl
IG5vdGlmaWNhdGlvbi4KICAgICBXRUJLSVRfQVBJIFdlYlVSTCB1cmwoKSBjb25zdDsKIAotICAg
IC8vIElmIG5vdCBIVE1MLCB0aGUgcGFyYW1ldGVycyBmb3IgdGhlIGljb24tdGl0bGUtdGV4dCBu
b3RpZmljYXRpb24uCi0gICAgLy8gRklYTUU6IERlcHJlY2F0ZWQ7IHVzZSBpY29uVVJMKCkgaW5z
dGVhZC4KLSAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyBpY29uKCkgY29uc3Q7CiAgICAgV0VCS0lU
X0FQSSBXZWJVUkwgaWNvblVSTCgpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgV2ViU3RyaW5nIHRp
dGxlKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBXZWJTdHJpbmcgYm9keSgpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwIGIvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwCmluZGV4IDI2ZmQ0YmMuLjUyMDBkMTcg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm90aWZpY2F0aW9uLmNwcAorKysg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAKQEAgLTc2LDEzICs3Niw2
IEBAIFdlYlVSTCBXZWJOb3RpZmljYXRpb246OnVybCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fcHJp
dmF0ZS0+dXJsKCk7CiB9CiAKLS8vIEZJWE1FOiByZW1vdmUgdGhpcyBkZXByZWNhdGVkIGZ1bmN0
aW9uIG9uY2UgYWxsIGNhbGxlcnMgdXNlIGljb25VUkwoKQotV2ViU3RyaW5nIFdlYk5vdGlmaWNh
dGlvbjo6aWNvbigpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKCFpc0hUTUwoKSk7Ci0gICAgcmV0dXJu
IG1fcHJpdmF0ZS0+Y29udGVudHMoKS5pY29uKCk7Ci19Ci0KIFdlYlVSTCBXZWJOb3RpZmljYXRp
b246Omljb25VUkwoKSBjb25zdAogewogICAgIEFTU0VSVCghaXNIVE1MKCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53305</attachid>
            <date>2010-04-13 18:21:56 -0700</date>
            <delta_ts>2010-04-14 12:24:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36623-20100413182155.patch</filename>
            <type>text/plain</type>
            <size>11451</size>
            <attacher name="Aaron Boodman">aa</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MjE2ZmQxNi4uZjRlOTM2NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMC0wNC0xMyAgQWFyb24gQm9vZG1h
biAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5vdGlmaWNhdGlvbnMgb24g
Q2hyb21pdW0uIFRoZXkgd2VyZW4ndCB3b3JraW5nIHByZXZpb3VzbHkgYmVjYXVzZSBXZWJDb3Jl
IHdhcyBpbnNlcnRpbmcKKyAgICAgICAgdGhlIHJlbGF0aXZlIFVSTCBpbnRvIGEgS1VSTCBpbnN0
YW5jZSwgYnV0IHdoZW4gS1VSTCBpcyBiYWNrZWQgYnkgR1VSTCBhcyBpdCBpcyBvbiBDaHJvbWl1
bSwgcmVsYXRpdmUgVVJMcyBhcmUKKyAgICAgICAgdW5zdXBwb3J0ZWQuIEZpeGVkIGJ5IHJlc29s
dmluZyB0aGUgcmVsYXRpdmUgVVJMIGZpcnN0LgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjYyMworCisgICAgICAgIEFkZGluZyB0ZXN0cyBmb3Ig
dGhpcyBpcyBkaWZmaWN1bHQgYmVjYXVzZSB3ZSBkb24ndCBjdXJyZW50bHkgaGF2ZSBEUlQgc3Vw
cG9ydCBmb3Igbm90aWZpY2F0aW9ucyBvbiBNYWMsIG9ubHkgV2luZG93cy4KKworICAgICAgICAq
IG5vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlm
aWNhdGlvbjo6Tm90aWZpY2F0aW9uKTogQWNjZXB0IHJlc29sdmVkIEtVUkwgaW5zdGVhZCBvZiBy
ZWxhdGl2ZSBzdHJpbmcuCisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaDoK
KyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6Y3JlYXRlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpOb3RpZmljYXRpb246Omljb25VUkwpOiBSZXR1cm4gcmVzb2x2ZWQgS1VSTCBp
bnN0ZWFkIG9mIHJlbGF0aXZlIHN0cmluZy4KKyAgICAgICAgKiBub3RpZmljYXRpb25zL05vdGlm
aWNhdGlvbkNlbnRlci5oOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2VudGVyOjpj
cmVhdGVIVE1MTm90aWZpY2F0aW9uKTogSW1tZWRpYXRlbHkgcmVzb2x2ZSBVUkwgaW5zdGVhZCBv
ZiBwYXNzaW5nIG9mZiByZWxhdGl2ZSBzdHJpbmcuCisgICAgICAgIChXZWJDb3JlOjpOb3RpZmlj
YXRpb25DZW50ZXI6OmNyZWF0ZU5vdGlmaWNhdGlvbik6IERpdHRvLgorICAgICAgICAqIG5vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ29udGVudHMuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlm
aWNhdGlvbkNvbnRlbnRzOjpOb3RpZmljYXRpb25Db250ZW50cyk6IEFjY2VwdCByZXNvbHZlZCBL
VVJMIGluc3RlYWQgb2YgcmVsYXRpdmUgc3RyaW5nLgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZp
Y2F0aW9uQ29udGVudHM6Omljb24pOiBSZXR1cm4gcmVzb2x2ZWQgVVJMLgorCiAyMDEwLTA0LTEy
ICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4KIAogICAgICAgICBTZWN1cml0
eU9yaWdpbiBuZWVkcyBhIHdheSB0byByZW1vdmUgaW5kaXZpZHVhbCBPcmlnaW5BY2Nlc3NFbnRy
aWVzCmRpZmYgLS1naXQgYS9XZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcCBi
L1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCmluZGV4IDBjNDRkYjYuLjE4
MmY3MTMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3Bw
CisrKyBiL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCkBAIC00Miw3ICs0
Miw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotTm90aWZpY2F0aW9uOjpOb3RpZmljYXRp
b24oY29uc3QgU3RyaW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4
Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKQorTm90aWZp
Y2F0aW9uOjpOb3RpZmljYXRpb24oY29uc3QgS1VSTCYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBw
cm92aWRlcikKICAgICA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0LCB0aGlzKQogICAgICwgbV9p
c0hUTUwodHJ1ZSkKICAgICAsIG1faXNTaG93aW5nKGZhbHNlKQpAQCAtNTQsMTEgKzU0LDEyIEBA
IE5vdGlmaWNhdGlvbjo6Tm90aWZpY2F0aW9uKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBFCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBt
X25vdGlmaWNhdGlvblVSTCA9IGNvbnRleHQtPmNvbXBsZXRlVVJMKHVybCk7Ci0gICAgaWYgKHVy
bC5pc0VtcHR5KCkgfHwgIW1fbm90aWZpY2F0aW9uVVJMLmlzVmFsaWQoKSkgeworICAgIGlmICh1
cmwuaXNFbXB0eSgpIHx8ICF1cmwuaXNWYWxpZCgpKSB7CiAgICAgICAgIGVjID0gU1lOVEFYX0VS
UjsKICAgICAgICAgcmV0dXJuOwogICAgIH0KKworICAgIG1fbm90aWZpY2F0aW9uVVJMID0gdXJs
OwogfQogCiBOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250
ZW50cyYgY29udGVudHMsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlv
bkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKQpAQCAtNzQsOSArNzUs
NyBAQCBOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250ZW50
cyYgY29udGVudHMsIFNjcmlwdEV4ZWN1dGlvbgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgaWYgKCFjb250ZW50cy5pY29uKCkuaXNFbXB0eSgpKQotICAgICAgICBtX2ljb25VUkwgPSBj
b250ZXh0LT5jb21wbGV0ZVVSTChjb250ZW50cy5pY29uKCkpOwotICAgIGlmICghbV9pY29uVVJM
LmlzRW1wdHkoKSAmJiAhbV9pY29uVVJMLmlzVmFsaWQoKSkgeworICAgIGlmICghY29udGVudHMu
aWNvbigpLmlzRW1wdHkoKSAmJiAhY29udGVudHMuaWNvbigpLmlzVmFsaWQoKSkgewogICAgICAg
ICBlYyA9IFNZTlRBWF9FUlI7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmggYi9XZWJDb3JlL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uLmgKaW5kZXggYzJiYTVkOS4uOThjYmZkZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCisrKyBiL1dlYkNvcmUvbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb24uaApAQCAtNTUsNyArNTUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKICAgICBjbGFzcyBOb3RpZmljYXRpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxOb3RpZmljYXRp
b24+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0LCBwdWJsaWMgRXZlbnRUYXJnZXQgeyAKICAgICBw
dWJsaWM6Ci0gICAgICAgIHN0YXRpYyBOb3RpZmljYXRpb24qIGNyZWF0ZShjb25zdCBTdHJpbmcm
IHVybCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgRXhjZXB0aW9uQ29kZSYgZWMs
IE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJvdmlkZXIpIHsgcmV0dXJuIG5ldyBOb3RpZmljYXRp
b24odXJsLCBjb250ZXh0LCBlYywgcHJvdmlkZXIpOyB9CisgICAgICAgIHN0YXRpYyBOb3RpZmlj
YXRpb24qIGNyZWF0ZShjb25zdCBLVVJMJiB1cmwsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNv
bnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVy
KSB7IHJldHVybiBuZXcgTm90aWZpY2F0aW9uKHVybCwgY29udGV4dCwgZWMsIHByb3ZpZGVyKTsg
fQogICAgICAgICBzdGF0aWMgTm90aWZpY2F0aW9uKiBjcmVhdGUoY29uc3QgTm90aWZpY2F0aW9u
Q29udGVudHMmIGNvbnRlbnRzLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBFeGNl
cHRpb25Db2RlJiBlYywgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlcikgeyByZXR1cm4g
bmV3IE5vdGlmaWNhdGlvbihjb250ZW50cywgY29udGV4dCwgZWMsIHByb3ZpZGVyKTsgfQogICAg
ICAgICAKICAgICAgICAgdmlydHVhbCB+Tm90aWZpY2F0aW9uKCk7CkBAIC02NSw3ICs2NSw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAKICAgICAgICAgYm9vbCBpc0hUTUwoKSB7IHJldHVy
biBtX2lzSFRNTDsgfQogICAgICAgICBLVVJMIHVybCgpIHsgcmV0dXJuIG1fbm90aWZpY2F0aW9u
VVJMOyB9Ci0gICAgICAgIEtVUkwgaWNvblVSTCgpIHsgcmV0dXJuIG1faWNvblVSTDsgfQorICAg
ICAgICBLVVJMIGljb25VUkwoKSB7IHJldHVybiBtX2NvbnRlbnRzLmljb24oKTsgfQogICAgICAg
ICBOb3RpZmljYXRpb25Db250ZW50cyYgY29udGVudHMoKSB7IHJldHVybiBtX2NvbnRlbnRzOyB9
CiAKICAgICAgICAgREVGSU5FX0FUVFJJQlVURV9FVkVOVF9MSVNURU5FUihkaXNwbGF5KTsKQEAg
LTgwLDggKzgwLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIE5vdGlm
aWNhdGlvbiogdG9Ob3RpZmljYXRpb24oKSB7IHJldHVybiB0aGlzOyB9CiAKICAgICBwcml2YXRl
OgotICAgICAgICBOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiB1cmwsIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50
ZXIqIHByb3ZpZGVyKTsKLSAgICAgICAgTm90aWZpY2F0aW9uKGNvbnN0IE5vdGlmaWNhdGlvbkNv
bnRlbnRzJiBmaWVsZHMsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlv
bkNvZGUmIGVjLCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByb3ZpZGVyKTsKKyAgICAgICAgTm90
aWZpY2F0aW9uKGNvbnN0IEtVUkwmLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0aW9u
Q29kZSYsIE5vdGlmaWNhdGlvblByZXNlbnRlciopOworICAgICAgICBOb3RpZmljYXRpb24oY29u
c3QgTm90aWZpY2F0aW9uQ29udGVudHMmLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0
aW9uQ29kZSYsIE5vdGlmaWNhdGlvblByZXNlbnRlciopOwogCiAgICAgICAgIC8vIEV2ZW50VGFy
Z2V0IGludGVyZmFjZQogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJnZXQoKSB7IHJl
ZigpOyB9CkBAIC05MSw3ICs5MSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBi
b29sIG1faXNIVE1MOwogICAgICAgICBLVVJMIG1fbm90aWZpY2F0aW9uVVJMOwotICAgICAgICBL
VVJMIG1faWNvblVSTDsKICAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMgbV9jb250ZW50czsK
IAogICAgICAgICBib29sIG1faXNTaG93aW5nOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9ub3RpZmlj
YXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlm
aWNhdGlvbkNlbnRlci5oCmluZGV4IGFlM2RjMDIuLmFjZjFhZTUgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaAorKysgYi9XZWJDb3JlL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKQEAgLTU1LDcgKzU1LDExIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgICAgICAgICBlYyA9IElOVkFMSURfU1RBVEVfRVJSOwogICAg
ICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJu
IE5vdGlmaWNhdGlvbjo6Y3JlYXRlKEtVUkwoUGFyc2VkVVJMU3RyaW5nLCBVUkkpLCBjb250ZXh0
KCksIGVjLCBwcmVzZW50ZXIoKSk7CisgICAgICAgICAgICBpZiAoVVJJLmlzRW1wdHkoKSkgewor
ICAgICAgICAgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKKyAgICAgICAgICAgICAgICByZXR1cm4g
MDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb246OmNyZWF0
ZShtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPmNvbXBsZXRlVVJMKFVSSSksIGNvbnRleHQoKSwg
ZWMsIHByZXNlbnRlcigpKTsKICAgICAgICAgfQogCiAgICAgICAgIE5vdGlmaWNhdGlvbiogY3Jl
YXRlTm90aWZpY2F0aW9uKGNvbnN0IFN0cmluZyYgaWNvblVSSSwgY29uc3QgU3RyaW5nJiB0aXRs
ZSwgY29uc3QgU3RyaW5nJiBib2R5LCBFeGNlcHRpb25Db2RlJiBlYykKQEAgLTY0LDcgKzY4LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAgICAgICAgIGVjID0gSU5WQUxJRF9TVEFU
RV9FUlI7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICB9Ci0gICAgICAg
ICAgICBOb3RpZmljYXRpb25Db250ZW50cyBjb250ZW50cyhpY29uVVJJLCB0aXRsZSwgYm9keSk7
CisgICAgICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyBjb250ZW50cyhpY29uVVJJLmlzRW1w
dHkoKSA/IEtVUkwoKSA6IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+Y29tcGxldGVVUkwoaWNv
blVSSSksIHRpdGxlLCBib2R5KTsKICAgICAgICAgICAgIHJldHVybiBOb3RpZmljYXRpb246OmNy
ZWF0ZShjb250ZW50cywgY29udGV4dCgpLCBlYywgcHJlc2VudGVyKCkpOwogICAgICAgICB9CiAK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250ZW50cy5o
IGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNvbnRlbnRzLmgKaW5kZXggZWJk
YzUxNC4uNTgwN2YzMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbkNvbnRlbnRzLmgKKysrIGIvV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNv
bnRlbnRzLmgKQEAgLTM4LDE3ICszOCwxNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xh
c3MgTm90aWZpY2F0aW9uQ29udGVudHMgeyAKICAgICBwdWJsaWM6CiAgICAgICAgIE5vdGlmaWNh
dGlvbkNvbnRlbnRzKCkge30KLSAgICAgICAgTm90aWZpY2F0aW9uQ29udGVudHMoY29uc3QgU3Ry
aW5nJiBpY29uVXJsLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpIAor
ICAgICAgICBOb3RpZmljYXRpb25Db250ZW50cyhjb25zdCBLVVJMJiBpY29uVXJsLCBjb25zdCBT
dHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIGJvZHkpCiAgICAgICAgICAgICA6IG1faWNvbihp
Y29uVXJsKQogICAgICAgICAgICAgLCBtX3RpdGxlKHRpdGxlKQogICAgICAgICAgICAgLCBtX2Jv
ZHkoYm9keSkge30KIAotICAgICAgICBTdHJpbmcgaWNvbigpIGNvbnN0IHsgcmV0dXJuIG1faWNv
bjsgfQorICAgICAgICBLVVJMIGljb24oKSBjb25zdCB7IHJldHVybiBtX2ljb247IH0KICAgICAg
ICAgU3RyaW5nIHRpdGxlKCkgY29uc3QgeyByZXR1cm4gbV90aXRsZTsgfQogICAgICAgICBTdHJp
bmcgYm9keSgpIGNvbnN0IHsgcmV0dXJuIG1fYm9keTsgfQogCiAgICAgcHJpdmF0ZToKLSAgICAg
ICAgU3RyaW5nIG1faWNvbjsKKyAgICAgICAgS1VSTCBtX2ljb247CiAgICAgICAgIFN0cmluZyBt
X3RpdGxlOwogICAgICAgICBTdHJpbmcgbV9ib2R5OwogICAgIH07CmRpZmYgLS1naXQgYS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBh
YTgxYjYwLi5lOTQwNmY1IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisr
KyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0wNC0x
MyAgQWFyb24gQm9vZG1hbiAgPGFhQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTdXBwb3J0IHJlbGF0aXZlIFVSTHMgZm9yIG5v
dGlmaWNhdGlvbnMgb24gQ2hyb21pdW0uIFRoZXkgd2VyZW4ndCB3b3JraW5nIHByZXZpb3VzbHkg
YmVjYXVzZSBXZWJDb3JlIHdhcyBpbnNlcnRpbmcKKyAgICAgICAgdGhlIHJlbGF0aXZlIFVSTCBp
bnRvIGEgS1VSTCBpbnN0YW5jZSwgYnV0IHdoZW4gS1VSTCBpcyBiYWNrZWQgYnkgR1VSTCBhcyBp
dCBpcyBvbiBDaHJvbWl1bSwgcmVsYXRpdmUgVVJMcyBhcmUKKyAgICAgICAgdW5zdXBwb3J0ZWQu
IEZpeGVkIGJ5IHJlc29sdmluZyB0aGUgcmVsYXRpdmUgVVJMIGZpcnN0LgorCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjYyMworCisgICAgICAgIEFk
ZGluZyB0ZXN0cyBmb3IgdGhpcyBpcyBkaWZmaWN1bHQgYmVjYXVzZSB3ZSBkb24ndCBjdXJyZW50
bHkgaGF2ZSBEUlQgc3VwcG9ydCBmb3Igbm90aWZpY2F0aW9ucyBvbiBNYWMsIG9ubHkgV2luZG93
cy4KKworICAgICAgICAqIHB1YmxpYy9XZWJOb3RpZmljYXRpb24uaDogUmVtb3ZlIGRlcHJlY2F0
ZWQgaWNvbigpIG1ldGhvZC4KKyAgICAgICAgKiBzcmMvV2ViTm90aWZpY2F0aW9uLmNwcDogRGl0
dG8uCisKIDIwMTAtMDQtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgog
CiAgICAgICAgIFJlbmFtZSBTZWN1cml0eU9yaWdpbjo6d2hpdGVMaXN0QWNjZXNzRnJvbU9yaWdp
biB0byBhZGRPcmlnaW5BY2Nlc3NXaGl0ZWxpc3RFbnRyeS4KZGlmZiAtLWdpdCBhL1dlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmggYi9XZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYk5vdGlmaWNhdGlvbi5oCmluZGV4IGI2M2RkMjAuLjlkNjRlMmEgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViTm90aWZpY2F0aW9uLmgKKysrIGIvV2ViS2l0L2Nocm9t
aXVtL3B1YmxpYy9XZWJOb3RpZmljYXRpb24uaApAQCAtNzEsOSArNzEsNiBAQCBwdWJsaWM6CiAg
ICAgLy8gSWYgSFRNTCwgdGhlIFVSTCB3aGljaCBjb250YWlucyB0aGUgY29udGVudHMgb2YgdGhl
IG5vdGlmaWNhdGlvbi4KICAgICBXRUJLSVRfQVBJIFdlYlVSTCB1cmwoKSBjb25zdDsKIAotICAg
IC8vIElmIG5vdCBIVE1MLCB0aGUgcGFyYW1ldGVycyBmb3IgdGhlIGljb24tdGl0bGUtdGV4dCBu
b3RpZmljYXRpb24uCi0gICAgLy8gRklYTUU6IERlcHJlY2F0ZWQ7IHVzZSBpY29uVVJMKCkgaW5z
dGVhZC4KLSAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyBpY29uKCkgY29uc3Q7CiAgICAgV0VCS0lU
X0FQSSBXZWJVUkwgaWNvblVSTCgpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgV2ViU3RyaW5nIHRp
dGxlKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBXZWJTdHJpbmcgYm9keSgpIGNvbnN0OwpkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwIGIvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJOb3RpZmljYXRpb24uY3BwCmluZGV4IDI2ZmQ0YmMuLjUyMDBkMTcg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm90aWZpY2F0aW9uLmNwcAorKysg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYk5vdGlmaWNhdGlvbi5jcHAKQEAgLTc2LDEzICs3Niw2
IEBAIFdlYlVSTCBXZWJOb3RpZmljYXRpb246OnVybCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fcHJp
dmF0ZS0+dXJsKCk7CiB9CiAKLS8vIEZJWE1FOiByZW1vdmUgdGhpcyBkZXByZWNhdGVkIGZ1bmN0
aW9uIG9uY2UgYWxsIGNhbGxlcnMgdXNlIGljb25VUkwoKQotV2ViU3RyaW5nIFdlYk5vdGlmaWNh
dGlvbjo6aWNvbigpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKCFpc0hUTUwoKSk7Ci0gICAgcmV0dXJu
IG1fcHJpdmF0ZS0+Y29udGVudHMoKS5pY29uKCk7Ci19Ci0KIFdlYlVSTCBXZWJOb3RpZmljYXRp
b246Omljb25VUkwoKSBjb25zdAogewogICAgIEFTU0VSVCghaXNIVE1MKCkpOwpkaWZmIC0tZ2l0
IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggZmU2NDRl
Zi4uZGYxMTA5ZiAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZworKysgYi9XZWJLaXQv
cXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTAtMDQtMTMgIEFhcm9uIEJvb2RtYW4g
IDxhYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgTmVlZCBhIHNob3J0IGRlc2NyaXB0aW9uIGFuZCBidWcgVVJMIChPT1BTISkK
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0
LmNwcDoKKyAgICAgICAgKE5vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0OjpzaG93KTogUmV0
dXJuIHR5cGUgb2YgTm90aWZpY2F0aW9uQ29udGVudHM6Omljb25VUkwoKSBjaGFuZ2VkLgorCiAy
MDEwLTA0LTEzICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZW5hbWUgU2VjdXJpdHlPcmlnaW46OndoaXRlTGlzdEFjY2Vzc0Zyb21PcmlnaW4gdG8gYWRk
T3JpZ2luQWNjZXNzV2hpdGVsaXN0RW50cnkuCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvTm90aWZpY2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwIGIvV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudFF0LmNwcAppbmRleCAyNmU4
ZmU3Li4yNjg3YzMzIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvTm90aWZp
Y2F0aW9uUHJlc2VudGVyQ2xpZW50UXQuY3BwCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9y
dC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdC5jcHAKQEAgLTYzLDcgKzYzLDcgQEAgYm9v
bCBOb3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRRdDo6c2hvdyhOb3RpZmljYXRpb24qIG5vdGlm
aWNhdGlvbikKICAgICAgICAgICAgIHByaW50ZigiREVTS1RPUCBOT1RJRklDQVRJT046IGNvbnRl
bnRzIGF0ICVzXG4iLCBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+dXJsKCkuc3RyaW5nKCkpLnRvVXRm
OCgpLmNvbnN0RGF0YSgpKTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoIkRF
U0tUT1AgTk9USUZJQ0FUSU9OOiBpY29uICVzLCB0aXRsZSAlcywgdGV4dCAlc1xuIiwgCi0gICAg
ICAgICAgICAgICAgUVN0cmluZyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkuaWNvbigpKS50b1V0
ZjgoKS5jb25zdERhdGEoKSwgUVN0cmluZyhub3RpZmljYXRpb24tPmNvbnRlbnRzKCkudGl0bGUo
KSkudG9VdGY4KCkuY29uc3REYXRhKCksIAorICAgICAgICAgICAgICAgIFFTdHJpbmcobm90aWZp
Y2F0aW9uLT5jb250ZW50cygpLmljb24oKS5zdHJpbmcoKSkudG9VdGY4KCkuY29uc3REYXRhKCks
IFFTdHJpbmcobm90aWZpY2F0aW9uLT5jb250ZW50cygpLnRpdGxlKCkpLnRvVXRmOCgpLmNvbnN0
RGF0YSgpLCAKICAgICAgICAgICAgICAgICBRU3RyaW5nKG5vdGlmaWNhdGlvbi0+Y29udGVudHMo
KS5ib2R5KCkpLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKICAgICAgICAgfQogICAgIH0K
</data>
<flag name="review"
          id="36994"
          type_id="1"
          status="+"
          setter="levin"
    />
    <flag name="commit-queue"
          id="37008"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>