<?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>104600</bug_id>
          
          <creation_ts>2012-12-10 15:01:59 -0800</creation_ts>
          <short_desc>[Chromium] Always enable autocomplete for password fields</short_desc>
          <delta_ts>2013-01-09 16:28:51 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Yue Zhang">zysxqn</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>fishd</cc>
    
    <cc>gcasto</cc>
    
    <cc>guohui</cc>
    
    <cc>jamesr</cc>
    
    <cc>jochen</cc>
    
    <cc>mjs</cc>
    
    <cc>sam</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>787743</commentid>
    <comment_count>0</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-10 15:01:59 -0800</bug_when>
    <thetext>Ignore autocomplete=off in webkit code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>787746</commentid>
    <comment_count>1</comment_count>
      <attachid>178640</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-10 15:02:34 -0800</bug_when>
    <thetext>Created attachment 178640
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>788583</commentid>
    <comment_count>2</comment_count>
      <attachid>178640</attachid>
    <who name="Peter Beverloo">peter</who>
    <bug_when>2012-12-11 10:36:28 -0800</bug_when>
    <thetext>Comment on attachment 178640
Patch

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

A few drive-by nits :-)..

&gt; Source/WebKit/chromium/ChangeLog:1
&gt; +2012-12-10  Yue Zhang  &lt;zysxqn@google.com&gt;

nit: zysxqn@chromium.org

&gt; Source/WebKit/chromium/ChangeLog:3
&gt; +        Ignore autocomplete=off in webkit code

Since this only touches Chromium code (in Source/WebKit/chromium/), please prefix the subject with [Chromium]. This makes it easier to recognize for non-Chromium contributors. The &quot;in webkit code&quot; addition is rather redundant considering this would be committed to WebKit.

Furthermore, since this change only touches the findPasswordFormFields function, maybe &quot;[Chromium] Always enable autocomplete for password fields&quot; would be better?

&gt; Source/WebKit/chromium/ChangeLog:8
&gt; +        Additional information of the change such as approach, rationale. Please add per-function descriptions below (OOPS!).

Adding some rationale here would be good. What is the reason the Chromium port would like to disable autocomplete for password fields?

As a FYI, any line that contains &quot;OOPS!&quot;, *except* for the &quot;Reviewed by&quot; line, will prevent you from submitting this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>788616</commentid>
    <comment_count>3</comment_count>
      <attachid>178839</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-11 11:07:56 -0800</bug_when>
    <thetext>Created attachment 178839
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791419</commentid>
    <comment_count>4</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-14 00:27:49 -0800</bug_when>
    <thetext>ping?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>793023</commentid>
    <comment_count>5</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-17 14:11:25 -0800</bug_when>
    <thetext>ping again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794054</commentid>
    <comment_count>6</comment_count>
      <attachid>178839</attachid>
    <who name="Peter Beverloo">peter</who>
    <bug_when>2012-12-18 14:30:00 -0800</bug_when>
    <thetext>Comment on attachment 178839
Patch

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

Tony: I saw this as a drive-by, not sure if anyone on the MTV side knows more about background.
Yue: Do you perhaps have Chromium issues with more context?

&gt; Source/WebKit/chromium/ChangeLog:8
&gt; +        Additional information of the change such as approach, rationale. Please add per-function descriptions below (OOPS!).

You should remove this line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794055</commentid>
    <comment_count>7</comment_count>
      <attachid>178839</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-18 14:30:07 -0800</bug_when>
    <thetext>Comment on attachment 178839
Patch

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

ChangeLog needs work.

&gt; Source/WebKit/chromium/ChangeLog:8
&gt; +        Additional information of the change such as approach, rationale. Please add per-function descriptions below (OOPS!).

The OOPS will block the commit.  YOu&apos;re suppose to delete this line and replace it with what it says to. :)

&gt; Source/WebKit/chromium/ChangeLog:9
&gt; +        We should always save generated passwords regardless of the autocomplete setting, since users have already given cresent to save the passwords by choosing to use generated passwords. So in this change we disable autocomplete checking in webkit and we will handle password autocomplete setting in chromium code in another chromium CL.

I think you might want to wrap this for ease of reading. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794071</commentid>
    <comment_count>8</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-12-18 14:42:02 -0800</bug_when>
    <thetext>+jochen who knows about privacy stuff. A Chromium bug with more discussion would also be helpful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794072</commentid>
    <comment_count>9</comment_count>
      <attachid>178839</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-12-18 14:42:26 -0800</bug_when>
    <thetext>Comment on attachment 178839
Patch

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

&gt;&gt; Source/WebKit/chromium/ChangeLog:9
&gt;&gt; +        We should always save generated passwords regardless of the autocomplete setting, since users have already given cresent to save the passwords by choosing to use generated passwords. So in this change we disable autocomplete checking in webkit and we will handle password autocomplete setting in chromium code in another chromium CL.
&gt; 
&gt; I think you might want to wrap this for ease of reading. :)

cresent -&gt; consent?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794075</commentid>
    <comment_count>10</comment_count>
      <attachid>180031</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-18 14:44:24 -0800</bug_when>
    <thetext>Created attachment 180031
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794077</commentid>
    <comment_count>11</comment_count>
      <attachid>180033</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-18 14:46:18 -0800</bug_when>
    <thetext>Created attachment 180033
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794078</commentid>
    <comment_count>12</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-12-18 14:47:07 -0800</bug_when>
    <thetext>Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?

Also, what about tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794080</commentid>
    <comment_count>13</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-18 14:50:12 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 178839 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=178839&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit/chromium/ChangeLog:9
&gt; &gt;&gt; +        We should always save generated passwords regardless of the autocomplete setting, since users have already given cresent to save the passwords by choosing to use generated passwords. So in this change we disable autocomplete checking in webkit and we will handle password autocomplete setting in chromium code in another chromium CL.
&gt; &gt; 
&gt; &gt; I think you might want to wrap this for ease of reading. :)
&gt; 
&gt; cresent -&gt; consent?

Done. Also rephrase to give more background. Please have another look. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794085</commentid>
    <comment_count>14</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-18 14:54:50 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?
&gt; 
&gt; Also, what about tests?

Yeah it&apos;s a chrome feature. 

Regarding test, I&apos;m not super familiar with Webiit code. I think this is a pretty trivial change. Shall we reflect it somewhere in the Webkit unittest?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794089</commentid>
    <comment_count>15</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-12-18 14:57:18 -0800</bug_when>
    <thetext>(In reply to comment #14)
&gt; (In reply to comment #12)
&gt; &gt; Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?
&gt; &gt; 
&gt; &gt; Also, what about tests?
&gt; 
&gt; Yeah it&apos;s a chrome feature. 

Ok, then it should be configurable - otherwise other content embedders might end up just ignoring this field

&gt; 
&gt; Regarding test, I&apos;m not super familiar with Webiit code. I think this is a pretty trivial change. Shall we reflect it somewhere in the Webkit unittest?

sounds good. there are unit tests in http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/tests/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794091</commentid>
    <comment_count>16</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-18 15:04:23 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; (In reply to comment #14)
&gt; &gt; (In reply to comment #12)
&gt; &gt; &gt; Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?
&gt; &gt; &gt; 
&gt; &gt; &gt; Also, what about tests?
&gt; &gt; 
&gt; &gt; Yeah it&apos;s a chrome feature. 
&gt; 
&gt; Ok, then it should be configurable - otherwise other content embedders might end up just ignoring this field

  I see WebPasswordFormUtils.cpp is under chromium/ directory so I thought it&apos;s only used by chromium code. No? If not, how to make it configurable? command line flags? I&apos;m really new to WebKit so any more detailed suggestion is welcomed :)
&gt; 
&gt; &gt; 
&gt; &gt; Regarding test, I&apos;m not super familiar with Webiit code. I think this is a pretty trivial change. Shall we reflect it somewhere in the Webkit unittest?
&gt; 
&gt; sounds good. there are unit tests in http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/tests/

Looks that there is no existing tests regarding WebPasswordFormUtils class. Is it really worth a new test file given that it is a trivial two-line change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794097</commentid>
    <comment_count>17</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-18 15:08:01 -0800</bug_when>
    <thetext>So the chrome feature is that Chrome will override the page&apos;s request to prevent autocomplete? :)  Is this because pages are explicitly trying to prevent form-fill, or because they&apos;re trying to force the user to type their password, or both?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794108</commentid>
    <comment_count>18</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-18 15:15:07 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; So the chrome feature is that Chrome will override the page&apos;s request to prevent autocomplete? :)  Is this because pages are explicitly trying to prevent form-fill, or because they&apos;re trying to force the user to type their password, or both?

It&apos;s because we are working on a new chrome feature that will automatically generate random passwords for users during account sign up. For these passwords, it doesn&apos;t make sense if we don&apos;t save and autofill them even if autocomplete=off. So in chromium code, we will only respect autocomplete=off for normal user chosen passwords, and ignore it for chrome generated passwords. Hope this helps :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794508</commentid>
    <comment_count>19</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-12-19 04:23:22 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; (In reply to comment #15)
&gt; &gt; (In reply to comment #14)
&gt; &gt; &gt; (In reply to comment #12)
&gt; &gt; &gt; &gt; Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Also, what about tests?
&gt; &gt; &gt; 
&gt; &gt; &gt; Yeah it&apos;s a chrome feature. 
&gt; &gt; 
&gt; &gt; Ok, then it should be configurable - otherwise other content embedders might end up just ignoring this field
&gt; 
&gt;   I see WebPasswordFormUtils.cpp is under chromium/ directory so I thought it&apos;s only used by chromium code. No? If not, how to make it configurable? command line flags? I&apos;m really new to WebKit so any more detailed suggestion is welcomed :)


The WebKit chromium/ port is used for a number of non-desktop chrome projects such as chrome on android, content_shell, etc..

You could add a bool to WebSettings.h that controls this behavior and defaults to honoring the autocomplete attribute.

In WebPasswordFormElement, you can access the settings with document()-&gt;frame()-&gt;view()-&gt;settings()



&gt; &gt; 
&gt; &gt; &gt; 
&gt; &gt; &gt; Regarding test, I&apos;m not super familiar with Webiit code. I think this is a pretty trivial change. Shall we reflect it somewhere in the Webkit unittest?
&gt; &gt; 
&gt; &gt; sounds good. there are unit tests in http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/tests/
&gt; 
&gt; Looks that there is no existing tests regarding WebPasswordFormUtils class. Is it really worth a new test file given that it is a trivial two-line change?

It worries me that ignoring the autocomplete attribute doesn&apos;t break any test (also, if it&apos;s worthwhile to change it, it should be worthwhile to test it)

Alternatively, you can try to create a layout test, whatever you prefer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794907</commentid>
    <comment_count>20</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-19 13:55:52 -0800</bug_when>
    <thetext>(In reply to comment #19)
&gt; (In reply to comment #16)
&gt; &gt; (In reply to comment #15)
&gt; &gt; &gt; (In reply to comment #14)
&gt; &gt; &gt; &gt; (In reply to comment #12)
&gt; &gt; &gt; &gt; &gt; Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?
&gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; Also, what about tests?
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Yeah it&apos;s a chrome feature. 
&gt; &gt; &gt; 
&gt; &gt; &gt; Ok, then it should be configurable - otherwise other content embedders might end up just ignoring this field
&gt; &gt; 
&gt; &gt;   I see WebPasswordFormUtils.cpp is under chromium/ directory so I thought it&apos;s only used by chromium code. No? If not, how to make it configurable? command line flags? I&apos;m really new to WebKit so any more detailed suggestion is welcomed :)
&gt; 
&gt; 
&gt; The WebKit chromium/ port is used for a number of non-desktop chrome projects such as chrome on android, content_shell, etc..
&gt; 
&gt; You could add a bool to WebSettings.h that controls this behavior and defaults to honoring the autocomplete attribute.
&gt; 
&gt; In WebPasswordFormElement, you can access the settings with document()-&gt;frame()-&gt;view()-&gt;settings()
&gt; 

Thanks for your detailed explanation. Just one question, where could we change it to the non-default value for our chrome feature? I did a code search and it looks like we should use WebView::GetWebSettings() to change its value but it is not called anywhere currently in the code base? Thanks!

&gt; 
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Regarding test, I&apos;m not super familiar with Webiit code. I think this is a pretty trivial change. Shall we reflect it somewhere in the Webkit unittest?
&gt; &gt; &gt; 
&gt; &gt; &gt; sounds good. there are unit tests in http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/tests/
&gt; &gt; 
&gt; &gt; Looks that there is no existing tests regarding WebPasswordFormUtils class. Is it really worth a new test file given that it is a trivial two-line change?
&gt; 
&gt; It worries me that ignoring the autocomplete attribute doesn&apos;t break any test (also, if it&apos;s worthwhile to change it, it should be worthwhile to test it)
&gt; 
&gt; Alternatively, you can try to create a layout test, whatever you prefer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>794923</commentid>
    <comment_count>21</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-12-19 14:07:34 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; (In reply to comment #19)
&gt; &gt; (In reply to comment #16)
&gt; &gt; &gt; (In reply to comment #15)
&gt; &gt; &gt; &gt; (In reply to comment #14)
&gt; &gt; &gt; &gt; &gt; (In reply to comment #12)
&gt; &gt; &gt; &gt; &gt; &gt; Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?
&gt; &gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; &gt; Also, what about tests?
&gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; Yeah it&apos;s a chrome feature. 
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Ok, then it should be configurable - otherwise other content embedders might end up just ignoring this field
&gt; &gt; &gt; 
&gt; &gt; &gt;   I see WebPasswordFormUtils.cpp is under chromium/ directory so I thought it&apos;s only used by chromium code. No? If not, how to make it configurable? command line flags? I&apos;m really new to WebKit so any more detailed suggestion is welcomed :)
&gt; &gt; 
&gt; &gt; 
&gt; &gt; The WebKit chromium/ port is used for a number of non-desktop chrome projects such as chrome on android, content_shell, etc..
&gt; &gt; 
&gt; &gt; You could add a bool to WebSettings.h that controls this behavior and defaults to honoring the autocomplete attribute.
&gt; &gt; 
&gt; &gt; In WebPasswordFormElement, you can access the settings with document()-&gt;frame()-&gt;view()-&gt;settings()
&gt; &gt; 
&gt; 
&gt; Thanks for your detailed explanation. Just one question, where could we change it to the non-default value for our chrome feature? I did a code search and it looks like we should use WebView::GetWebSettings() to change its value but it is not called anywhere currently in the code base? Thanks!

You need to add the new setting in webkit/glue/webpreferences.*, and add the new field to content/public/common/content_param_traits_macros.h

then you can override your new setting in chrome/browser/chrome_content_browser_client.cc in the OverrideWebkitPrefs method

&gt; 
&gt; &gt; 
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; Regarding test, I&apos;m not super familiar with Webiit code. I think this is a pretty trivial change. Shall we reflect it somewhere in the Webkit unittest?
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; sounds good. there are unit tests in http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/tests/
&gt; &gt; &gt; 
&gt; &gt; &gt; Looks that there is no existing tests regarding WebPasswordFormUtils class. Is it really worth a new test file given that it is a trivial two-line change?
&gt; &gt; 
&gt; &gt; It worries me that ignoring the autocomplete attribute doesn&apos;t break any test (also, if it&apos;s worthwhile to change it, it should be worthwhile to test it)
&gt; &gt; 
&gt; &gt; Alternatively, you can try to create a layout test, whatever you prefer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795935</commentid>
    <comment_count>22</comment_count>
      <attachid>180437</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-20 16:26:44 -0800</bug_when>
    <thetext>Created attachment 180437
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795936</commentid>
    <comment_count>23</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-20 16:28:30 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; (In reply to comment #20)
&gt; &gt; (In reply to comment #19)
&gt; &gt; &gt; (In reply to comment #16)
&gt; &gt; &gt; &gt; (In reply to comment #15)
&gt; &gt; &gt; &gt; &gt; (In reply to comment #14)
&gt; &gt; &gt; &gt; &gt; &gt; (In reply to comment #12)
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Isn&apos;t that a chrome/ feature (as opposed to content/)? Shouldn&apos;t we in that case make this somehow configurable?
&gt; &gt; &gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Also, what about tests?
&gt; &gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; &gt; Yeah it&apos;s a chrome feature. 
&gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; Ok, then it should be configurable - otherwise other content embedders might end up just ignoring this field
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt;   I see WebPasswordFormUtils.cpp is under chromium/ directory so I thought it&apos;s only used by chromium code. No? If not, how to make it configurable? command line flags? I&apos;m really new to WebKit so any more detailed suggestion is welcomed :)
&gt; &gt; &gt; 
&gt; &gt; &gt; 
&gt; &gt; &gt; The WebKit chromium/ port is used for a number of non-desktop chrome projects such as chrome on android, content_shell, etc..
&gt; &gt; &gt; 
&gt; &gt; &gt; You could add a bool to WebSettings.h that controls this behavior and defaults to honoring the autocomplete attribute.
&gt; &gt; &gt; 
&gt; &gt; &gt; In WebPasswordFormElement, you can access the settings with document()-&gt;frame()-&gt;view()-&gt;settings()
&gt; &gt; &gt; 
&gt; &gt; 
&gt; &gt; Thanks for your detailed explanation. Just one question, where could we change it to the non-default value for our chrome feature? I did a code search and it looks like we should use WebView::GetWebSettings() to change its value but it is not called anywhere currently in the code base? Thanks!
&gt; 
&gt; You need to add the new setting in webkit/glue/webpreferences.*, and add the new field to content/public/common/content_param_traits_macros.h
&gt; 
&gt; then you can override your new setting in chrome/browser/chrome_content_browser_client.cc in the OverrideWebkitPrefs method

Thanks! I have made it configurable through WebSettings. Please have another look. The relevant chrome change (11635061) has also been uploaded and assigned to you as the reviewer. Please also have a look. Thanks!
&gt; 
&gt; &gt; 
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; &gt; Regarding test, I&apos;m not super familiar with Webiit code. I think this is a pretty trivial change. Shall we reflect it somewhere in the Webkit unittest?
&gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; sounds good. there are unit tests in http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/tests/
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Looks that there is no existing tests regarding WebPasswordFormUtils class. Is it really worth a new test file given that it is a trivial two-line change?
&gt; &gt; &gt; 
&gt; &gt; &gt; It worries me that ignoring the autocomplete attribute doesn&apos;t break any test (also, if it&apos;s worthwhile to change it, it should be worthwhile to test it)
&gt; &gt; &gt; 
&gt; &gt; &gt; Alternatively, you can try to create a layout test, whatever you prefer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795937</commentid>
    <comment_count>24</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-20 16:29:52 -0800</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795961</commentid>
    <comment_count>25</comment_count>
      <attachid>180437</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2012-12-20 16:53:03 -0800</bug_when>
    <thetext>Comment on attachment 180437
Patch

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

&gt; Source/WebCore/page/Settings.cpp:422
&gt; +void Settings::setIgnoreWebkitAutocompleteOff(bool ignoreWebkitAutocompleteOff)

Why is the substring &quot;Webkit&quot; in this method name?

&gt; Source/WebKit/chromium/src/WebPasswordFormUtils.cpp:88
&gt; +                || inputElement-&gt;shouldAutocomplete())) {

Perhaps the implementation of shouldAutocomplete should inspect the ignoreAutocompleteOff setting?
That way, every caller of shouldAutocomplete will see the same value, and we will not have to
repeat the settings test at each callsite of shouldAutocomplete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795962</commentid>
    <comment_count>26</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-20 16:57:53 -0800</bug_when>
    <thetext>(In reply to comment #25)
&gt; (From update of attachment 180437 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=180437&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/Settings.cpp:422
&gt; &gt; +void Settings::setIgnoreWebkitAutocompleteOff(bool ignoreWebkitAutocompleteOff)
&gt; 
&gt; Why is the substring &quot;Webkit&quot; in this method name?

Because we don&apos;t completely ignore autocomplete=off, just don&apos;t check/handle this in webkit (will handle this in chrome code). So we choose the name like this.
&gt; 
&gt; &gt; Source/WebKit/chromium/src/WebPasswordFormUtils.cpp:88
&gt; &gt; +                || inputElement-&gt;shouldAutocomplete())) {
&gt; 
&gt; Perhaps the implementation of shouldAutocomplete should inspect the ignoreAutocompleteOff setting?
&gt; That way, every caller of shouldAutocomplete will see the same value, and we will not have to
&gt; repeat the settings test at each callsite of shouldAutocomplete.

The whole point of not checking autocomplete in webkit is that we don&apos;t have enough information in webkit code (we ignore autocomplete setting for chrome generated passwords, but respect it for other normal passwords). So for the same reason, I don&apos;t see how we can handle autocomplete setting in the implementation of shouldAutocomplete? maybe I miss anything?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795971</commentid>
    <comment_count>27</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2012-12-20 17:05:12 -0800</bug_when>
    <thetext>(In reply to comment #26)
&gt; (In reply to comment #25)
&gt; &gt; (From update of attachment 180437 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=180437&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/page/Settings.cpp:422
&gt; &gt; &gt; +void Settings::setIgnoreWebkitAutocompleteOff(bool ignoreWebkitAutocompleteOff)
&gt; &gt; 
&gt; &gt; Why is the substring &quot;Webkit&quot; in this method name?
&gt; 
&gt; Because we don&apos;t completely ignore autocomplete=off, just don&apos;t check/handle this in webkit (will handle this in chrome code). So we choose the name like this.

But, you are checking this in WebKit.  WebPasswordFormUtils.cpp is part of WebKit.

That said, I still don&apos;t understand how &quot;Webkit&quot; in the name helps convey your intended meaning.


&gt; &gt; 
&gt; &gt; &gt; Source/WebKit/chromium/src/WebPasswordFormUtils.cpp:88
&gt; &gt; &gt; +                || inputElement-&gt;shouldAutocomplete())) {
&gt; &gt; 
&gt; &gt; Perhaps the implementation of shouldAutocomplete should inspect the ignoreAutocompleteOff setting?
&gt; &gt; That way, every caller of shouldAutocomplete will see the same value, and we will not have to
&gt; &gt; repeat the settings test at each callsite of shouldAutocomplete.
&gt; 
&gt; The whole point of not checking autocomplete in webkit is that we don&apos;t have enough information in webkit code (we ignore autocomplete setting for chrome generated passwords, but respect it for other normal passwords). So for the same reason, I don&apos;t see how we can handle autocomplete setting in the implementation of shouldAutocomplete? maybe I miss anything?

Hmm, I thought all password filling when through this code path.  That said, it seems like shouldAutocomplete is used to control whether or not other form state is saved when navigating away from a page.  It makes sense to still honor the setting in those cases.  I understand now why shouldAutocomplete would not check this preference.

Next, I wonder why you need to store this setting on WebCore::Settings if the setting is never consulted by WebCore.  It seems like we could instead just pass a boolean ignoreAutocompleteOff parameter to WebPasswordFormData&apos;s constructor, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795978</commentid>
    <comment_count>28</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-20 17:18:53 -0800</bug_when>
    <thetext>(In reply to comment #27)
&gt; (In reply to comment #26)
&gt; &gt; (In reply to comment #25)
&gt; &gt; &gt; (From update of attachment 180437 [details] [details] [details])
&gt; &gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=180437&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebCore/page/Settings.cpp:422
&gt; &gt; &gt; &gt; +void Settings::setIgnoreWebkitAutocompleteOff(bool ignoreWebkitAutocompleteOff)
&gt; &gt; &gt; 
&gt; &gt; &gt; Why is the substring &quot;Webkit&quot; in this method name?
&gt; &gt; 
&gt; &gt; Because we don&apos;t completely ignore autocomplete=off, just don&apos;t check/handle this in webkit (will handle this in chrome code). So we choose the name like this.
&gt; 
&gt; But, you are checking this in WebKit.  WebPasswordFormUtils.cpp is part of WebKit.
&gt; 
&gt; That said, I still don&apos;t understand how &quot;Webkit&quot; in the name helps convey your intended meaning.

Hmm, this method/corresponding variable would also be used in chromium code so I think it&apos;s still better to make it clear that we just ignore it in webkit code (not ignore entirely). That said, maybe it is not the best name but I don&apos;t think simply using setIgnoreAutocompleteOff is the right way to do this. Thoughts?
&gt; 
&gt; 
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebKit/chromium/src/WebPasswordFormUtils.cpp:88
&gt; &gt; &gt; &gt; +                || inputElement-&gt;shouldAutocomplete())) {
&gt; &gt; &gt; 
&gt; &gt; &gt; Perhaps the implementation of shouldAutocomplete should inspect the ignoreAutocompleteOff setting?
&gt; &gt; &gt; That way, every caller of shouldAutocomplete will see the same value, and we will not have to
&gt; &gt; &gt; repeat the settings test at each callsite of shouldAutocomplete.
&gt; &gt; 
&gt; &gt; The whole point of not checking autocomplete in webkit is that we don&apos;t have enough information in webkit code (we ignore autocomplete setting for chrome generated passwords, but respect it for other normal passwords). So for the same reason, I don&apos;t see how we can handle autocomplete setting in the implementation of shouldAutocomplete? maybe I miss anything?
&gt; 
&gt; Hmm, I thought all password filling when through this code path.  That said, it seems like shouldAutocomplete is used to control whether or not other form state is saved when navigating away from a page.  It makes sense to still honor the setting in those cases.  I understand now why shouldAutocomplete would not check this preference.
&gt; 
&gt; Next, I wonder why you need to store this setting on WebCore::Settings if the setting is never consulted by WebCore.  It seems like we could instead just pass a boolean ignoreAutocompleteOff parameter to WebPasswordFormData&apos;s constructor, right?

Well, I&apos;m relatively new to webkit code and using WebSettings is suggested by another reviewer jochen@. The rationale here is that WebPasswordUtil.cpp is not only used by chrome but also used by other content embedders. So if we don&apos;t make it configurable through WebSettings other content embedders will end up ignoring autocomplete=off.

So, does your suggestion do the same thing? i.e. whether we can distinguish chrome vs. other content embedders through the parameter to WebPasswordFormData&apos;s constructor? Really not familiar with this part of code...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796098</commentid>
    <comment_count>29</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2012-12-20 20:30:20 -0800</bug_when>
    <thetext>Maybe it would be helpful for me to see how you will use this code from the Chromium side, but just looking at how WebPasswordFormData gets used, it looks like content::CreatePasswordForm is the only place where WebPasswordFormData gets instantiated.

See content::CreatePasswordForm here:
http://code.google.com/searchframe#OAMlx_jo-ck/src/content/renderer/password_form_conversion_utils.cc&amp;exact_package=chromium&amp;q=CreatePasswordForm&amp;type=cs%22&amp;l=42

It seems like you could pass a boolean parameter to that function, and then forward it to the WebPasswordFormData constructor.

In other words, it appears that you only need to ignore autocomplete=off while constructing the WebPasswordFormData, so it seems simpler to just pass a boolean flag to it rather than messing with WebSettings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796175</commentid>
    <comment_count>30</comment_count>
    <who name="">jochen</who>
    <bug_when>2012-12-21 00:44:22 -0800</bug_when>
    <thetext>(In reply to comment #29)
&gt; Maybe it would be helpful for me to see how you will use this code from the Chromium side, but just looking at how WebPasswordFormData gets used, it looks like content::CreatePasswordForm is the only place where WebPasswordFormData gets instantiated.
&gt; 
&gt; See content::CreatePasswordForm here:
&gt; http://code.google.com/searchframe#OAMlx_jo-ck/src/content/renderer/password_form_conversion_utils.cc&amp;exact_package=chromium&amp;q=CreatePasswordForm&amp;type=cs%22&amp;l=42
&gt; 
&gt; It seems like you could pass a boolean parameter to that function, and then forward it to the WebPasswordFormData constructor.
&gt; 
&gt; In other words, it appears that you only need to ignore autocomplete=off while constructing the WebPasswordFormData, so it seems simpler to just pass a boolean flag to it rather than messing with WebSettings.

I guess seeing how this is going to be used would help.

Since CreatePasswordForm is invoked from RenderViewImpl, just putting it into WebSettings seemed like the easier solution.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796357</commentid>
    <comment_count>31</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2012-12-21 10:15:36 -0800</bug_when>
    <thetext>(In reply to comment #29)
&gt; Maybe it would be helpful for me to see how you will use this code from the Chromium side, but just looking at how WebPasswordFormData gets used, it looks like content::CreatePasswordForm is the only place where WebPasswordFormData gets instantiated.
&gt; 
&gt; See content::CreatePasswordForm here:
&gt; http://code.google.com/searchframe#OAMlx_jo-ck/src/content/renderer/password_form_conversion_utils.cc&amp;exact_package=chromium&amp;q=CreatePasswordForm&amp;type=cs%22&amp;l=42
&gt; 
&gt; It seems like you could pass a boolean parameter to that function, and then forward it to the WebPasswordFormData constructor.
&gt; 
&gt; In other words, it appears that you only need to ignore autocomplete=off while constructing the WebPasswordFormData, so it seems simpler to just pass a boolean flag to it rather than messing with WebSettings.

I guess my question is: can we easily distinguish whether it&apos;s called by chrome or called by other content embedders when we call CreatePasswordForm()? I saw it is called 12 times in the code base, some under chrome/ while some under content/. Are you suggesting if it is called under chrome/ we pass &quot;true&quot; (means ignore) to the parameter and if it is called under content/ we pass &quot;false&quot;?. If so, I think using WebSettings would be easier since we don&apos;t need to change the parameter every place we call it. Thoughts?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797984</commentid>
    <comment_count>32</comment_count>
    <who name="Garrett Casto">gcasto</who>
    <bug_when>2012-12-28 13:24:32 -0800</bug_when>
    <thetext>(In reply to comment #31)
&gt; (In reply to comment #29)
&gt; &gt; Maybe it would be helpful for me to see how you will use this code from the Chromium side, but just looking at how WebPasswordFormData gets used, it looks like content::CreatePasswordForm is the only place where WebPasswordFormData gets instantiated.
&gt; &gt; 
&gt; &gt; See content::CreatePasswordForm here:
&gt; &gt; http://code.google.com/searchframe#OAMlx_jo-ck/src/content/renderer/password_form_conversion_utils.cc&amp;exact_package=chromium&amp;q=CreatePasswordForm&amp;type=cs%22&amp;l=42
&gt; &gt; 
&gt; &gt; It seems like you could pass a boolean parameter to that function, and then forward it to the WebPasswordFormData constructor.
&gt; &gt; 
&gt; &gt; In other words, it appears that you only need to ignore autocomplete=off while constructing the WebPasswordFormData, so it seems simpler to just pass a boolean flag to it rather than messing with WebSettings.
&gt; 
&gt; I guess my question is: can we easily distinguish whether it&apos;s called by chrome or called by other content embedders when we call CreatePasswordForm()? I saw it is called 12 times in the code base, some under chrome/ while some under content/. Are you suggesting if it is called under chrome/ we pass &quot;true&quot; (means ignore) to the parameter and if it is called under content/ we pass &quot;false&quot;?. If so, I think using WebSettings would be easier since we don&apos;t need to change the parameter every place we call it. Thoughts?

I only see 3 files that have calls to CreatePasswordForm() (https://cs.corp.google.com/#search/&amp;q=CreatePasswordForm%5C(%20package:%5Echrome$&amp;type=cs). Only one is in content (content/renderer/render_view_impl.cc) but this needs to ignore autocomplete=off for Chrome as it&apos;s how the password_manager is notified. So it doesn&apos;t seem like changing the constructor helps here.

Also, are all of these other embedders located in the chrome repository? Because if so, I don&apos;t think that they are consuming this data (see https://cs.corp.google.com/#search/&amp;q=%5C.password_form%20package:%5Echrome$&amp;type=cs). Given that, and the fact that you already have to check to see if the &lt;form&gt; element has autocomplete=off set even without this change, would it make sense just to add a comment in WebPasswordFormData/PasswordForm explaining that the caller needs to deal with autocomplete?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798747</commentid>
    <comment_count>33</comment_count>
      <attachid>180437</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-01-02 11:16:29 -0800</bug_when>
    <thetext>Comment on attachment 180437
Patch

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

&gt; Source/WebCore/page/Settings.h:339
&gt; +        bool m_ignoreWebkitAutocompleteOff : 1;

Please use Settings.in rather than manually adding settings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>801481</commentid>
    <comment_count>34</comment_count>
    <who name="">jochen</who>
    <bug_when>2013-01-07 11:32:34 -0800</bug_when>
    <thetext>Yue told me that Darin is ok with just ignoring autocomplete=off? If that&apos;s the case, I hand over to Darin.

Although I still think having a reasonable default implementation for autocomplete=off in WebKit wouldn&apos;t hurt. It also troubles me that there&apos;s no test for this behavior.

For the record, other embedders of the content API not in the chrome repository are for example chrome on android or CEF.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>801814</commentid>
    <comment_count>35</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2013-01-07 16:42:08 -0800</bug_when>
    <thetext>I think it is reasonable to go with something like the first patch.  This doesn&apos;t need to be configurable at the WebKit level.  The guy who constructs a WebPasswordFormData object can subsequently inspect the passwordShouldAutocomplete attribute to determine if autocomplete=off was specified.  The embedder can then decide whether or not to autocomplete the form field based on their own heuristics.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802391</commentid>
    <comment_count>36</comment_count>
      <attachid>181710</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-08 10:59:46 -0800</bug_when>
    <thetext>Created attachment 181710
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802393</commentid>
    <comment_count>37</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-08 11:00:38 -0800</bug_when>
    <thetext>Please have another look. Thanks!

(In reply to comment #35)
&gt; I think it is reasonable to go with something like the first patch.  This doesn&apos;t need to be configurable at the WebKit level.  The guy who constructs a WebPasswordFormData object can subsequently inspect the passwordShouldAutocomplete attribute to determine if autocomplete=off was specified.  The embedder can then decide whether or not to autocomplete the form field based on their own heuristics.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802609</commentid>
    <comment_count>38</comment_count>
      <attachid>181710</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2013-01-08 14:06:13 -0800</bug_when>
    <thetext>Comment on attachment 181710
Patch

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

&gt; Source/WebKit/chromium/src/WebPasswordFormUtils.cpp:83
&gt; +        // We don&apos;t check autocomplete property here. The applications using

Since this is all part of a single function, I think it&apos;d be OK to just
state this comment once at the top of the function, or in the header file
even.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802617</commentid>
    <comment_count>39</comment_count>
      <attachid>181758</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-08 14:11:06 -0800</bug_when>
    <thetext>Created attachment 181758
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802624</commentid>
    <comment_count>40</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-08 14:13:33 -0800</bug_when>
    <thetext>(In reply to comment #38)
&gt; (From update of attachment 181710 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=181710&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/chromium/src/WebPasswordFormUtils.cpp:83
&gt; &gt; +        // We don&apos;t check autocomplete property here. The applications using
&gt; 
&gt; Since this is all part of a single function, I think it&apos;d be OK to just
&gt; state this comment once at the top of the function, or in the header file
&gt; even.

Moved to the header. Please have another look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802710</commentid>
    <comment_count>41</comment_count>
      <attachid>181758</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2013-01-08 15:14:07 -0800</bug_when>
    <thetext>Comment on attachment 181758
Patch

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

&gt; Source/WebKit/chromium/src/WebPasswordFormUtils.h:46
&gt; +// Note that We don&apos;t check autocomplete property here. The applications using

nit: s/We/we/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802713</commentid>
    <comment_count>42</comment_count>
      <attachid>181758</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2013-01-08 15:15:11 -0800</bug_when>
    <thetext>Comment on attachment 181758
Patch

I&apos;m not sure if it is OK to land this patch yet.  I would imagine that some Chromium-side changes are needed to avoid regression.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802714</commentid>
    <comment_count>43</comment_count>
      <attachid>181758</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2013-01-08 15:16:02 -0800</bug_when>
    <thetext>Comment on attachment 181758
Patch

Yue wrote:
&quot;yeah, we already done that. I make this change the last change to be safe&quot;

OK, CQ+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802715</commentid>
    <comment_count>44</comment_count>
      <attachid>181780</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-08 15:17:14 -0800</bug_when>
    <thetext>Created attachment 181780
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802854</commentid>
    <comment_count>45</comment_count>
      <attachid>181780</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-08 17:44:14 -0800</bug_when>
    <thetext>Comment on attachment 181780
Patch

Rejecting attachment 181780 from commit-queue.

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, u&apos;--status-host=queues.webkit.org&apos;, ...&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Working directory has modifications, pass --force-clean or --no-clean to continue.
Working directory has modifications, pass --force-clean or --no-clean to continue.


Full output: http://queues.webkit.org/results/15754518</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803038</commentid>
    <comment_count>46</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-08 22:34:57 -0800</bug_when>
    <thetext>(In reply to comment #45)
&gt; (From update of attachment 181780 [details])
&gt; Rejecting attachment 181780 [details] from commit-queue.
&gt; 
&gt; Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, u&apos;--status-host=queues.webkit.org&apos;, ...&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue
&gt; 
&gt; Working directory has modifications, pass --force-clean or --no-clean to continue.
&gt; Working directory has modifications, pass --force-clean or --no-clean to continue.
&gt; 
&gt; 
&gt; Full output: http://queues.webkit.org/results/15754518

Oops, I seem to sync the working client by accident. Darin, can you pass --no-clean to continue, or do I need to do anything?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803390</commentid>
    <comment_count>47</comment_count>
      <attachid>181780</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2013-01-09 09:27:59 -0800</bug_when>
    <thetext>Comment on attachment 181780
Patch

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

&gt; Source/WebCore/ChangeLog:6
&gt; +2012-12-20  Yue Zhang  &lt;zysxqn@google.com&gt;
&gt; +
&gt; +        [Chromium] Always enable autocomplete for password fields
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=104600
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).

Remove this from the diff.

&gt; Source/WebKit/chromium/ChangeLog:15
&gt; +        * public/WebSettings.h:
&gt; +        * src/WebPasswordFormUtils.cpp:
&gt; +        (WebKit::findPasswordFormFields):
&gt; +        * src/WebSettingsImpl.cpp:
&gt; +        (WebKit::WebSettingsImpl::setIgnoreWebkitAutocompleteOff):
&gt; +        (WebKit):

Please regenerate this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803651</commentid>
    <comment_count>48</comment_count>
      <attachid>181976</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-09 13:39:39 -0800</bug_when>
    <thetext>Created attachment 181976
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803653</commentid>
    <comment_count>49</comment_count>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-09 13:40:17 -0800</bug_when>
    <thetext>(In reply to comment #47)
&gt; (From update of attachment 181780 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=181780&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:6
&gt; &gt; +2012-12-20  Yue Zhang  &lt;zysxqn@google.com&gt;
&gt; &gt; +
&gt; &gt; +        [Chromium] Always enable autocomplete for password fields
&gt; &gt; +        https://bugs.webkit.org/show_bug.cgi?id=104600
&gt; &gt; +
&gt; &gt; +        Reviewed by NOBODY (OOPS!).
&gt; 
&gt; Remove this from the diff.
&gt; 
&gt; &gt; Source/WebKit/chromium/ChangeLog:15
&gt; &gt; +        * public/WebSettings.h:
&gt; &gt; +        * src/WebPasswordFormUtils.cpp:
&gt; &gt; +        (WebKit::findPasswordFormFields):
&gt; &gt; +        * src/WebSettingsImpl.cpp:
&gt; &gt; +        (WebKit::WebSettingsImpl::setIgnoreWebkitAutocompleteOff):
&gt; &gt; +        (WebKit):
&gt; 
&gt; Please regenerate this.

I updated the ChangeLog. Please have another look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803693</commentid>
    <comment_count>50</comment_count>
      <attachid>181976</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2013-01-09 14:12:15 -0800</bug_when>
    <thetext>Comment on attachment 181976
Patch

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

&gt; Source/WebKit/chromium/ChangeLog:6
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=104600
&gt; +
&gt; +        Don&apos;t check autocomplete in webkit code. Rather, we check it in chrome code in the following way: if the password field is chrome generated password, we ignore autocomplete=off and always fill the password; otherwise, we respect the autocomplete set. Since this is a chrome only feature, we make it configurable (default to false but enable this in chrome code).

Sorry, I mean to remove the WebCore/ChangeLog file.  You still need the &quot;Reviewed by NOBODY (OOPS!).&quot; line so the tools can fill in the actual reviewer.  You can also write &quot;Reviewed by Darin Fisher.&quot; since he gave an r+ on an earlier patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803791</commentid>
    <comment_count>51</comment_count>
      <attachid>182001</attachid>
    <who name="Yue Zhang">zysxqn</who>
    <bug_when>2013-01-09 15:56:56 -0800</bug_when>
    <thetext>Created attachment 182001
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803807</commentid>
    <comment_count>52</comment_count>
      <attachid>182001</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-09 16:28:44 -0800</bug_when>
    <thetext>Comment on attachment 182001
Patch

Clearing flags on attachment: 182001

Committed r139253: &lt;http://trac.webkit.org/changeset/139253&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803808</commentid>
    <comment_count>53</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-09 16:28:51 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178640</attachid>
            <date>2012-12-10 15:02:34 -0800</date>
            <delta_ts>2012-12-11 11:07:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20121210145956.patch</filename>
            <type>text/plain</type>
            <size>2163</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3MTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDUzYTZiMTcwNTUyZTY2NWU3ZjkzYzQyNWUzMzc2ZTQ2NmJjNDlmZTkuLjU3MjVkZWYxNjJiZTI4
NjQ1OTY4ZTNlNjM3OGRjY2Y4ZDhiYzMzZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTItMTItMTAgIFl1ZSBaaGFuZyAgPHp5c3hxbkBnb29nbGUuY29t
PgorCisgICAgICAgIElnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGluIHdlYmtpdCBjb2RlCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ2MDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRpdGlvbmFsIGlu
Zm9ybWF0aW9uIG9mIHRoZSBjaGFuZ2Ugc3VjaCBhcyBhcHByb2FjaCwgcmF0aW9uYWxlLiBQbGVh
c2UgYWRkIHBlci1mdW5jdGlvbiBkZXNjcmlwdGlvbnMgYmVsb3cgKE9PUFMhKS4KKworICAgICAg
ICAqIHNyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHA6CisgICAgICAgIChXZWJLaXQ6OmZpbmRQ
YXNzd29yZEZvcm1GaWVsZHMpOgorCiAyMDEyLTEyLTEwICBLZW50IFRhbXVyYSAgPHRrZW50QGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBSZWZhY3RvcmluZzogSW50cm9kdWNlIEhUTUxGb3JtQ29u
dHJvbEVsZW1lbnQ6OmlzRGlzYWJsZWRPclJlYWRPbmx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHAKaW5kZXggNzQwMTcxNzdhNTRh
ZWE1NzcwZDlkMDg2OTEwMWRhN2MzYjdiNWVmZS4uOTZmOWFiNWJiZmZkYmMyOWU5MDY4MzYzMTIz
OGY4Y2I4NTRiZjRkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
UGFzc3dvcmRGb3JtVXRpbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlBhc3N3b3JkRm9ybVV0aWxzLmNwcApAQCAtODEsOCArODEsNyBAQCB2b2lkIGZpbmRQYXNzd29y
ZEZvcm1GaWVsZHMoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVsZHMqIGZp
ZWxkcykKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIGlmICgoZmllbGRzLT5wYXNz
d29yZHMuc2l6ZSgpIDwgbWF4UGFzc3dvcmRzKQotICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50
LT5pc1Bhc3N3b3JkRmllbGQoKQotICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5zaG91bGRB
dXRvY29tcGxldGUoKSkgeworICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3Jk
RmllbGQoKSkgewogICAgICAgICAgICAgaWYgKGZpZWxkcy0+cGFzc3dvcmRzLmlzRW1wdHkoKSkK
ICAgICAgICAgICAgICAgICBmaXJzdFBhc3N3b3JkSW5kZXggPSBpOwogICAgICAgICAgICAgZmll
bGRzLT5wYXNzd29yZHMuYXBwZW5kKGlucHV0RWxlbWVudCk7CkBAIC0xMDMsOCArMTAyLDcgQEAg
dm9pZCBmaW5kUGFzc3dvcmRGb3JtRmllbGRzKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgUGFzc3dv
cmRGb3JtRmllbGRzKiBmaWVsZHMpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAg
ICAgICAgIC8vIFZhcmlvdXMgaW5wdXQgdHlwZXMgc3VjaCBhcyB0ZXh0LCB1cmwsIGVtYWlsIGNh
biBiZSBhIHVzZXJuYW1lIGZpZWxkLgotICAgICAgICAgICAgaWYgKChpbnB1dEVsZW1lbnQtPmlz
VGV4dEZpZWxkKCkgJiYgIWlucHV0RWxlbWVudC0+aXNQYXNzd29yZEZpZWxkKCkpCi0gICAgICAg
ICAgICAgICAgJiYgKGlucHV0RWxlbWVudC0+c2hvdWxkQXV0b2NvbXBsZXRlKCkpKSB7CisgICAg
ICAgICAgICBpZiAoaW5wdXRFbGVtZW50LT5pc1RleHRGaWVsZCgpICYmICFpbnB1dEVsZW1lbnQt
PmlzUGFzc3dvcmRGaWVsZCgpKSB7CiAgICAgICAgICAgICAgICAgZmllbGRzLT51c2VyTmFtZSA9
IGlucHV0RWxlbWVudDsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178839</attachid>
            <date>2012-12-11 11:07:56 -0800</date>
            <delta_ts>2012-12-18 14:44:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20121211110512.patch</filename>
            <type>text/plain</type>
            <size>2525</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3MTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDUzYTZiMTcwNTUyZTY2NWU3ZjkzYzQyNWUzMzc2ZTQ2NmJjNDlmZTkuLjFhZjVmMGVlNjg3ZGUy
ZDg4YzQwNDE1NjU1ZGQ4MzkwN2YxZmE5ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMTItMTItMTAgIFl1ZSBaaGFuZyAgPHp5c3hxbkBnb29nbGUuY29t
PgorCisgICAgICAgIFtDaHJvbWl1bV0gQWx3YXlzIGVuYWJsZSBhdXRvY29tcGxldGUgZm9yIHBh
c3N3b3JkIGZpZWxkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA0NjAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkaXRpb25hbCBpbmZvcm1hdGlvbiBvZiB0aGUgY2hhbmdlIHN1Y2ggYXMgYXBwcm9h
Y2gsIHJhdGlvbmFsZS4gUGxlYXNlIGFkZCBwZXItZnVuY3Rpb24gZGVzY3JpcHRpb25zIGJlbG93
IChPT1BTISkuCisgICAgICAgIFdlIHNob3VsZCBhbHdheXMgc2F2ZSBnZW5lcmF0ZWQgcGFzc3dv
cmRzIHJlZ2FyZGxlc3Mgb2YgdGhlIGF1dG9jb21wbGV0ZSBzZXR0aW5nLCBzaW5jZSB1c2VycyBo
YXZlIGFscmVhZHkgZ2l2ZW4gY3Jlc2VudCB0byBzYXZlIHRoZSBwYXNzd29yZHMgYnkgY2hvb3Np
bmcgdG8gdXNlIGdlbmVyYXRlZCBwYXNzd29yZHMuIFNvIGluIHRoaXMgY2hhbmdlIHdlIGRpc2Fi
bGUgYXV0b2NvbXBsZXRlIGNoZWNraW5nIGluIHdlYmtpdCBhbmQgd2Ugd2lsbCBoYW5kbGUgcGFz
c3dvcmQgYXV0b2NvbXBsZXRlIHNldHRpbmcgaW4gY2hyb21pdW0gY29kZSBpbiBhbm90aGVyIGNo
cm9taXVtIENMLgorCisgICAgICAgICogc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6ZmluZFBhc3N3b3JkRm9ybUZpZWxkcyk6CisKIDIwMTItMTItMTAgIEtl
bnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJlZmFjdG9yaW5nOiBJ
bnRyb2R1Y2UgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6aXNEaXNhYmxlZE9yUmVhZE9ubHkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNw
cAppbmRleCA3NDAxNzE3N2E1NGFlYTU3NzBkOWQwODY5MTAxZGE3YzNiN2I1ZWZlLi45NmY5YWI1
YmJmZmRiYzI5ZTkwNjgzNjMxMjM4ZjhjYjg1NGJmNGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuY3BwCkBAIC04MSw4ICs4MSw3
IEBAIHZvaWQgZmluZFBhc3N3b3JkRm9ybUZpZWxkcyhIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIFBh
c3N3b3JkRm9ybUZpZWxkcyogZmllbGRzKQogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAg
ICAgaWYgKChmaWVsZHMtPnBhc3N3b3Jkcy5zaXplKCkgPCBtYXhQYXNzd29yZHMpCi0gICAgICAg
ICAgICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpCi0gICAgICAgICAgICAmJiBp
bnB1dEVsZW1lbnQtPnNob3VsZEF1dG9jb21wbGV0ZSgpKSB7CisgICAgICAgICAgICAmJiBpbnB1
dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7CiAgICAgICAgICAgICBpZiAoZmllbGRzLT5w
YXNzd29yZHMuaXNFbXB0eSgpKQogICAgICAgICAgICAgICAgIGZpcnN0UGFzc3dvcmRJbmRleCA9
IGk7CiAgICAgICAgICAgICBmaWVsZHMtPnBhc3N3b3Jkcy5hcHBlbmQoaW5wdXRFbGVtZW50KTsK
QEAgLTEwMyw4ICsxMDIsNyBAQCB2b2lkIGZpbmRQYXNzd29yZEZvcm1GaWVsZHMoSFRNTEZvcm1F
bGVtZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVsZHMqIGZpZWxkcykKICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKIAogICAgICAgICAgICAgLy8gVmFyaW91cyBpbnB1dCB0eXBlcyBzdWNoIGFz
IHRleHQsIHVybCwgZW1haWwgY2FuIGJlIGEgdXNlcm5hbWUgZmllbGQuCi0gICAgICAgICAgICBp
ZiAoKGlucHV0RWxlbWVudC0+aXNUZXh0RmllbGQoKSAmJiAhaW5wdXRFbGVtZW50LT5pc1Bhc3N3
b3JkRmllbGQoKSkKLSAgICAgICAgICAgICAgICAmJiAoaW5wdXRFbGVtZW50LT5zaG91bGRBdXRv
Y29tcGxldGUoKSkpIHsKKyAgICAgICAgICAgIGlmIChpbnB1dEVsZW1lbnQtPmlzVGV4dEZpZWxk
KCkgJiYgIWlucHV0RWxlbWVudC0+aXNQYXNzd29yZEZpZWxkKCkpIHsKICAgICAgICAgICAgICAg
ICBmaWVsZHMtPnVzZXJOYW1lID0gaW5wdXRFbGVtZW50OwogICAgICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180031</attachid>
            <date>2012-12-18 14:44:24 -0800</date>
            <delta_ts>2012-12-18 14:46:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20121218144141.patch</filename>
            <type>text/plain</type>
            <size>2666</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3MTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDUzYTZiMTcwNTUyZTY2NWU3ZjkzYzQyNWUzMzc2ZTQ2NmJjNDlmZTkuLjRlZWQxNTg4Y2JmNTdi
MWM1MzQzZjRkNjgzYzk0NTYwZjRjYjUzMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTItMTItMTAgIFl1ZSBaaGFuZyAgPHp5c3hxbkBnb29nbGUuY29t
PgorCisgICAgICAgIFtDaHJvbWl1bV0gQWx3YXlzIGVuYWJsZSBhdXRvY29tcGxldGUgZm9yIHBh
c3N3b3JkIGZpZWxkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA0NjAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRG9uJ3QgY2hlY2sgYXV0b2NvbXBsZXRlPW9mZiBmb3IgcGFzc3dvcmQgZmllbGRzIGlu
IHdlYmtpdC4gUmF0aGVyLCB3ZSByZXNwZWN0IHRoZSBhdXRvY29tcGxldGUgc2V0dGluZyBpbiBj
aHJvbWl1bSBjb2RlIHdoZW4gbmVjZXNzYXJ5IChodHRwczovL2NvZGVyZXZpZXcuY2hyb21pdW0u
b3JnLzExNDQ2MDI4LyBhbmQgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMjQyNikuIFNvbWUgbW9yZSBiYWNrZ3JvdW5kOiBXZSB3YW50IHRvIGlnbm9yZSBhdXRvY29t
cGxldGU9b2ZmIGZvciBjaHJvbWUgZ2VuZXJhdGVkIHBhc3N3b3JkcyBzaW5jZSB1c2VyIGhhdmUg
YWxyZWFkeSBnaXZlbiBjcmVzZW50IHRvIHNhdmUgdGhlIHBhc3N3b3JkcyBieSBjaG9vc2luZyB0
byB1c2UgZ2VuZXJhdGVkIHBhc3N3b3Jkcy4gQXMgYSByZXN1bHQsIHdlIG1vdmUgcGFzc3dvcmQg
ZmllbGQgYXV0b2NvbXBsZXRlIGNoZWNraW5nIGZyb20gd2Via2l0IGNvZGUgdG8gY2hyb21pdW0g
Y29kZSBzbyB0aGF0IHdlIGNhbiBkaXN0aW5ndWlzaCBnZW5lcmF0ZWQgcGFzc3dvcmRzIHdpdGgg
b3RoZXIgbm9ybWFsIHBhc3N3b3JkcyAodXNlciBjaG9zZW4pLgorCisgICAgICAgICogc3JjL1dl
YlBhc3N3b3JkRm9ybVV0aWxzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6ZmluZFBhc3N3b3JkRm9y
bUZpZWxkcyk6CisKIDIwMTItMTItMTAgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFJlZmFjdG9yaW5nOiBJbnRyb2R1Y2UgSFRNTEZvcm1Db250cm9sRWxlbWVu
dDo6aXNEaXNhYmxlZE9yUmVhZE9ubHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcAppbmRleCA3NDAxNzE3N2E1NGFlYTU3NzBkOWQw
ODY5MTAxZGE3YzNiN2I1ZWZlLi45NmY5YWI1YmJmZmRiYzI5ZTkwNjgzNjMxMjM4ZjhjYjg1NGJm
NGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZv
cm1VdGlscy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRG
b3JtVXRpbHMuY3BwCkBAIC04MSw4ICs4MSw3IEBAIHZvaWQgZmluZFBhc3N3b3JkRm9ybUZpZWxk
cyhIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIFBhc3N3b3JkRm9ybUZpZWxkcyogZmllbGRzKQogICAg
ICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgaWYgKChmaWVsZHMtPnBhc3N3b3Jkcy5zaXpl
KCkgPCBtYXhQYXNzd29yZHMpCi0gICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dv
cmRGaWVsZCgpCi0gICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPnNob3VsZEF1dG9jb21wbGV0
ZSgpKSB7CisgICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7
CiAgICAgICAgICAgICBpZiAoZmllbGRzLT5wYXNzd29yZHMuaXNFbXB0eSgpKQogICAgICAgICAg
ICAgICAgIGZpcnN0UGFzc3dvcmRJbmRleCA9IGk7CiAgICAgICAgICAgICBmaWVsZHMtPnBhc3N3
b3Jkcy5hcHBlbmQoaW5wdXRFbGVtZW50KTsKQEAgLTEwMyw4ICsxMDIsNyBAQCB2b2lkIGZpbmRQ
YXNzd29yZEZvcm1GaWVsZHMoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVs
ZHMqIGZpZWxkcykKICAgICAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICAgICAgLy8g
VmFyaW91cyBpbnB1dCB0eXBlcyBzdWNoIGFzIHRleHQsIHVybCwgZW1haWwgY2FuIGJlIGEgdXNl
cm5hbWUgZmllbGQuCi0gICAgICAgICAgICBpZiAoKGlucHV0RWxlbWVudC0+aXNUZXh0RmllbGQo
KSAmJiAhaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkKLSAgICAgICAgICAgICAgICAm
JiAoaW5wdXRFbGVtZW50LT5zaG91bGRBdXRvY29tcGxldGUoKSkpIHsKKyAgICAgICAgICAgIGlm
IChpbnB1dEVsZW1lbnQtPmlzVGV4dEZpZWxkKCkgJiYgIWlucHV0RWxlbWVudC0+aXNQYXNzd29y
ZEZpZWxkKCkpIHsKICAgICAgICAgICAgICAgICBmaWVsZHMtPnVzZXJOYW1lID0gaW5wdXRFbGVt
ZW50OwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180033</attachid>
            <date>2012-12-18 14:46:18 -0800</date>
            <delta_ts>2012-12-20 16:26:40 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20121218144335.patch</filename>
            <type>text/plain</type>
            <size>2666</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3MTM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDUzYTZiMTcwNTUyZTY2NWU3ZjkzYzQyNWUzMzc2ZTQ2NmJjNDlmZTkuLmNiYjI2MTI1YmUwMjY3
YTc0ZGU4OTAwYzk4YmU1NDAyYjE3ZDM3NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTItMTItMTAgIFl1ZSBaaGFuZyAgPHp5c3hxbkBnb29nbGUuY29t
PgorCisgICAgICAgIFtDaHJvbWl1bV0gQWx3YXlzIGVuYWJsZSBhdXRvY29tcGxldGUgZm9yIHBh
c3N3b3JkIGZpZWxkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA0NjAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRG9uJ3QgY2hlY2sgYXV0b2NvbXBsZXRlPW9mZiBmb3IgcGFzc3dvcmQgZmllbGRzIGlu
IHdlYmtpdC4gUmF0aGVyLCB3ZSByZXNwZWN0IHRoZSBhdXRvY29tcGxldGUgc2V0dGluZyBpbiBj
aHJvbWl1bSBjb2RlIHdoZW4gbmVjZXNzYXJ5IChodHRwczovL2NvZGVyZXZpZXcuY2hyb21pdW0u
b3JnLzExNDQ2MDI4LyBhbmQgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMjQyNikuIFNvbWUgbW9yZSBiYWNrZ3JvdW5kOiBXZSB3YW50IHRvIGlnbm9yZSBhdXRvY29t
cGxldGU9b2ZmIGZvciBjaHJvbWUgZ2VuZXJhdGVkIHBhc3N3b3JkcyBzaW5jZSB1c2VyIGhhdmUg
YWxyZWFkeSBnaXZlbiBjb25zZW50IHRvIHNhdmUgdGhlIHBhc3N3b3JkcyBieSBjaG9vc2luZyB0
byB1c2UgZ2VuZXJhdGVkIHBhc3N3b3Jkcy4gQXMgYSByZXN1bHQsIHdlIG1vdmUgcGFzc3dvcmQg
ZmllbGQgYXV0b2NvbXBsZXRlIGNoZWNraW5nIGZyb20gd2Via2l0IGNvZGUgdG8gY2hyb21pdW0g
Y29kZSBzbyB0aGF0IHdlIGNhbiBkaXN0aW5ndWlzaCBnZW5lcmF0ZWQgcGFzc3dvcmRzIHdpdGgg
b3RoZXIgbm9ybWFsIHBhc3N3b3JkcyAodXNlciBjaG9zZW4pLgorCisgICAgICAgICogc3JjL1dl
YlBhc3N3b3JkRm9ybVV0aWxzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6ZmluZFBhc3N3b3JkRm9y
bUZpZWxkcyk6CisKIDIwMTItMTItMTAgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFJlZmFjdG9yaW5nOiBJbnRyb2R1Y2UgSFRNTEZvcm1Db250cm9sRWxlbWVu
dDo6aXNEaXNhYmxlZE9yUmVhZE9ubHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcAppbmRleCA3NDAxNzE3N2E1NGFlYTU3NzBkOWQw
ODY5MTAxZGE3YzNiN2I1ZWZlLi45NmY5YWI1YmJmZmRiYzI5ZTkwNjgzNjMxMjM4ZjhjYjg1NGJm
NGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZv
cm1VdGlscy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRG
b3JtVXRpbHMuY3BwCkBAIC04MSw4ICs4MSw3IEBAIHZvaWQgZmluZFBhc3N3b3JkRm9ybUZpZWxk
cyhIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIFBhc3N3b3JkRm9ybUZpZWxkcyogZmllbGRzKQogICAg
ICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgaWYgKChmaWVsZHMtPnBhc3N3b3Jkcy5zaXpl
KCkgPCBtYXhQYXNzd29yZHMpCi0gICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dv
cmRGaWVsZCgpCi0gICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPnNob3VsZEF1dG9jb21wbGV0
ZSgpKSB7CisgICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7
CiAgICAgICAgICAgICBpZiAoZmllbGRzLT5wYXNzd29yZHMuaXNFbXB0eSgpKQogICAgICAgICAg
ICAgICAgIGZpcnN0UGFzc3dvcmRJbmRleCA9IGk7CiAgICAgICAgICAgICBmaWVsZHMtPnBhc3N3
b3Jkcy5hcHBlbmQoaW5wdXRFbGVtZW50KTsKQEAgLTEwMyw4ICsxMDIsNyBAQCB2b2lkIGZpbmRQ
YXNzd29yZEZvcm1GaWVsZHMoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVs
ZHMqIGZpZWxkcykKICAgICAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICAgICAgLy8g
VmFyaW91cyBpbnB1dCB0eXBlcyBzdWNoIGFzIHRleHQsIHVybCwgZW1haWwgY2FuIGJlIGEgdXNl
cm5hbWUgZmllbGQuCi0gICAgICAgICAgICBpZiAoKGlucHV0RWxlbWVudC0+aXNUZXh0RmllbGQo
KSAmJiAhaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkKLSAgICAgICAgICAgICAgICAm
JiAoaW5wdXRFbGVtZW50LT5zaG91bGRBdXRvY29tcGxldGUoKSkpIHsKKyAgICAgICAgICAgIGlm
IChpbnB1dEVsZW1lbnQtPmlzVGV4dEZpZWxkKCkgJiYgIWlucHV0RWxlbWVudC0+aXNQYXNzd29y
ZEZpZWxkKCkpIHsKICAgICAgICAgICAgICAgICBmaWVsZHMtPnVzZXJOYW1lID0gaW5wdXRFbGVt
ZW50OwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180437</attachid>
            <date>2012-12-20 16:26:44 -0800</date>
            <delta_ts>2013-01-08 10:59:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20121220162400.patch</filename>
            <type>text/plain</type>
            <size>8341</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI2YmMyODM3N2VlZTMx
N2RhYzUyNjVjMDM4Y2NhNzgyNjk0NzU1YS4uOTg5ZWY2MDM3YTNhNTRmNWNiNzY3OTBiN2I5ZmZl
ODZiOTMwZGI2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTEyLTIwICBZdWUg
WmhhbmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBl
bmFibGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBp
biB3ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUg
Zm9sbG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQg
cGFzc3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUg
cGFzc3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2lu
Y2UgdGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxl
IChkZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAg
ICAgICAgKiBwYWdlL1NldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpT
ZXR0aW5ncyk6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0SWdub3JlV2Via2l0QXV0
b2NvbXBsZXRlT2ZmKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvU2V0dGlu
Z3MuaDoKKyAgICAgICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpp
Z25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorCiAyMDEyLTEyLTIwICBBbmRyZXkgTHVzaG5p
a292ICA8bHVzaG5pa292QGNocm9taXVtLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBm
aXggfF9yZXBhaW50QWxsfCBiZWhhdmlvdXIgb2YgYSBEZWZhdWx0VGV4dEVkaXRvcgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwppbmRleCA5NTBkYTY3YmYxNDMxOTA2N2I0ZWZkYjZkYmFhMTE1MGMz
MTZhZTBmLi5hMTU5MTFhNWFmZGZhNzZlNTFlYzFmMjRhNDIyMjNiNThiMjExZmYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTEyLTIwICBZdWUgWmhh
bmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBlbmFi
bGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBpbiB3
ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUgZm9s
bG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQgcGFz
c3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUgcGFz
c3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2luY2Ug
dGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxlIChk
ZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAgICAg
ICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvV2ViUGFzc3dvcmRGb3Jt
VXRpbHMuY3BwOgorICAgICAgICAoV2ViS2l0OjpmaW5kUGFzc3dvcmRGb3JtRmllbGRzKToKKyAg
ICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0
dGluZ3NJbXBsOjpzZXRJZ25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChXZWJTZXR0
aW5nc0ltcGwpOgorCiAyMDEyLTEyLTE5ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGludHJvZHVjZSBQYWdlLmNhcHR1cmVT
Y3JlZW5zaG90CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCmluZGV4IDBhMWY5M2YyZmJhM2U2ZmI3
ODRlOTJiMDRjNjY1Y2Y4YTRmYjhmMzYuLmJiMWVkN2YzMjJhYTdmYTdkYzdiNDcxNjM1ZWU4ZTA0
NWNlMjFlZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCkBAIC0xNTAsNiArMTUwLDcgQEAg
U2V0dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAgICAgLCBtX2lzSmF2YUVuYWJsZWRGb3JM
b2NhbEZpbGVzKHRydWUpCiAgICAgLCBtX2xvYWRzSW1hZ2VzQXV0b21hdGljYWxseShmYWxzZSkK
ICAgICAsIG1fcHJpdmF0ZUJyb3dzaW5nRW5hYmxlZChmYWxzZSkKKyAgICAsIG1faWdub3JlV2Vi
a2l0QXV0b2NvbXBsZXRlT2ZmKGZhbHNlKQogICAgICwgbV9hcmVJbWFnZXNFbmFibGVkKHRydWUp
CiAgICAgLCBtX2lzTWVkaWFFbmFibGVkKHRydWUpCiAgICAgLCBtX2FyZVBsdWdpbnNFbmFibGVk
KGZhbHNlKQpAQCAtNDE4LDYgKzQxOSwxMSBAQCB2b2lkIFNldHRpbmdzOjpzZXRKYXZhRW5hYmxl
ZEZvckxvY2FsRmlsZXMoYm9vbCBpc0phdmFFbmFibGVkRm9yTG9jYWxGaWxlcykKICAgICBtX2lz
SmF2YUVuYWJsZWRGb3JMb2NhbEZpbGVzID0gaXNKYXZhRW5hYmxlZEZvckxvY2FsRmlsZXM7CiB9
CiAKK3ZvaWQgU2V0dGluZ3M6OnNldElnbm9yZVdlYmtpdEF1dG9jb21wbGV0ZU9mZihib29sIGln
bm9yZVdlYmtpdEF1dG9jb21wbGV0ZU9mZikKK3sKKyAgICBtX2lnbm9yZVdlYmtpdEF1dG9jb21w
bGV0ZU9mZiA9IGlnbm9yZVdlYmtpdEF1dG9jb21wbGV0ZU9mZjsKK30KKwogdm9pZCBTZXR0aW5n
czo6c2V0SW1hZ2VzRW5hYmxlZChib29sIGFyZUltYWdlc0VuYWJsZWQpCiB7CiAgICAgbV9hcmVJ
bWFnZXNFbmFibGVkID0gYXJlSW1hZ2VzRW5hYmxlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAppbmRl
eCBhNmZhMGZlY2M5YWI2NzRkYmJjODM5NzU4ZjRkMGM3YzBjNDQxYzUxLi42YTE1MGE4YjZhNDk2
ZDM1Zjc1ZjkyMjgwZWEzNjA2NjZhOGU1YjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1NldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCkBAIC0x
NDksNiArMTQ5LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIHNldEphdmFF
bmFibGVkRm9yTG9jYWxGaWxlcyhib29sKTsKICAgICAgICAgYm9vbCBpc0phdmFFbmFibGVkRm9y
TG9jYWxGaWxlcygpIGNvbnN0IHsgcmV0dXJuIG1faXNKYXZhRW5hYmxlZEZvckxvY2FsRmlsZXM7
IH0KIAorICAgICAgICB2b2lkIHNldElnbm9yZVdlYmtpdEF1dG9jb21wbGV0ZU9mZihib29sKTsK
KyAgICAgICAgYm9vbCBpZ25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYoKSBjb25zdCB7IHJldHVy
biBtX2lnbm9yZVdlYmtpdEF1dG9jb21wbGV0ZU9mZjsgfQorCiAgICAgICAgIHZvaWQgc2V0SW1h
Z2VzRW5hYmxlZChib29sKTsKICAgICAgICAgYm9vbCBhcmVJbWFnZXNFbmFibGVkKCkgY29uc3Qg
eyByZXR1cm4gbV9hcmVJbWFnZXNFbmFibGVkOyB9CiAKQEAgLTMzMyw2ICszMzYsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGJvb2wgbV9pc0phdmFFbmFibGVkRm9yTG9jYWxGaWxl
cyA6IDE7CiAgICAgICAgIGJvb2wgbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHkgOiAxOwogICAg
ICAgICBib29sIG1fcHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCA6IDE7CisgICAgICAgIGJvb2wgbV9p
Z25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYgOiAxOwogICAgICAgICBib29sIG1fYXJlSW1hZ2Vz
RW5hYmxlZCA6IDE7CiAgICAgICAgIGJvb2wgbV9pc01lZGlhRW5hYmxlZCA6IDE7CiAgICAgICAg
IGJvb2wgbV9hcmVQbHVnaW5zRW5hYmxlZCA6IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9w
dWJsaWMvV2ViU2V0dGluZ3MuaAppbmRleCAwYzMwN2NiMDliYzBjZjgzZGQ3ODdmNjc2MWMyM2Rk
NzBmYjk1N2M0Li5hM2Q0NjA3MDEwNzZkYTU3MWY3NzM3YjM3NTQ0MzQ0MTUzYTJlOTBkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKQEAgLTExNCw2ICsx
MTQsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldEZ1bGxTY3JlZW5FbmFibGVkKGJv
b2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0R2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQo
Ym9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRIeXBlcmxpbmtBdWRpdGluZ0VuYWJsZWQo
Ym9vbCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBzZXRJZ25vcmVXZWJraXRBdXRvY29tcGxldGVP
ZmYoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRJbWFnZXNFbmFibGVkKGJvb2wpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0SW50ZXJhY3RpdmVGb3JtVmFsaWRhdGlvbkVuYWJsZWQo
Ym9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRKYXZhRW5hYmxlZChib29sKSA9IDA7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGls
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5j
cHAKaW5kZXggNzQwMTcxNzdhNTRhZWE1NzcwZDlkMDg2OTEwMWRhN2MzYjdiNWVmZS4uM2IwMmU4
MGNhZGUwMGY4ZDlmOGFmMTU3ZTA5Yzg2ZjlhNDVhNzlkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcApAQCAtNDMsMTAgKzQz
LDEyIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViUGFzc3dvcmRGb3JtVXRp
bHMuaCIKIAorI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEZvcm1FbGVtZW50
LmgiCiAjaW5jbHVkZSAiSFRNTElucHV0RWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5o
IgogI2luY2x1ZGUgIktVUkwuaCIKKyNpbmNsdWRlICJTZXR0aW5ncy5oIgogCiAjaW5jbHVkZSAi
RE9NVXRpbGl0aWVzUHJpdmF0ZS5oIgogCkBAIC04Miw3ICs4NCw4IEBAIHZvaWQgZmluZFBhc3N3
b3JkRm9ybUZpZWxkcyhIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIFBhc3N3b3JkRm9ybUZpZWxkcyog
ZmllbGRzKQogCiAgICAgICAgIGlmICgoZmllbGRzLT5wYXNzd29yZHMuc2l6ZSgpIDwgbWF4UGFz
c3dvcmRzKQogICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKQot
ICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5zaG91bGRBdXRvY29tcGxldGUoKSkgeworICAg
ICAgICAgICAgJiYgKGZvcm0tPmRvY3VtZW50KCktPnNldHRpbmdzKCktPmlnbm9yZVdlYmtpdEF1
dG9jb21wbGV0ZU9mZigpCisgICAgICAgICAgICAgICAgfHwgaW5wdXRFbGVtZW50LT5zaG91bGRB
dXRvY29tcGxldGUoKSkpIHsKICAgICAgICAgICAgIGlmIChmaWVsZHMtPnBhc3N3b3Jkcy5pc0Vt
cHR5KCkpCiAgICAgICAgICAgICAgICAgZmlyc3RQYXNzd29yZEluZGV4ID0gaTsKICAgICAgICAg
ICAgIGZpZWxkcy0+cGFzc3dvcmRzLmFwcGVuZChpbnB1dEVsZW1lbnQpOwpAQCAtMTA0LDcgKzEw
Nyw4IEBAIHZvaWQgZmluZFBhc3N3b3JkRm9ybUZpZWxkcyhIVE1MRm9ybUVsZW1lbnQqIGZvcm0s
IFBhc3N3b3JkRm9ybUZpZWxkcyogZmllbGRzKQogCiAgICAgICAgICAgICAvLyBWYXJpb3VzIGlu
cHV0IHR5cGVzIHN1Y2ggYXMgdGV4dCwgdXJsLCBlbWFpbCBjYW4gYmUgYSB1c2VybmFtZSBmaWVs
ZC4KICAgICAgICAgICAgIGlmICgoaW5wdXRFbGVtZW50LT5pc1RleHRGaWVsZCgpICYmICFpbnB1
dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKQotICAgICAgICAgICAgICAgICYmIChpbnB1dEVs
ZW1lbnQtPnNob3VsZEF1dG9jb21wbGV0ZSgpKSkgeworICAgICAgICAgICAgICAgICYmIChmb3Jt
LT5kb2N1bWVudCgpLT5zZXR0aW5ncygpLT5pZ25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYoKQor
ICAgICAgICAgICAgICAgICAgICB8fCBpbnB1dEVsZW1lbnQtPnNob3VsZEF1dG9jb21wbGV0ZSgp
KSkgewogICAgICAgICAgICAgICAgIGZpZWxkcy0+dXNlck5hbWUgPSBpbnB1dEVsZW1lbnQ7CiAg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAppbmRleCBmNjIxNzE4YWMwMzRjODZhYzIy
ZjdjNjVjY2ZkMzBiM2NlNzdlMjY1Li43ZjQ4Yjg2MzU1MDM2ZWE0YTEzZDdmNzZhNjk1NmQ5MmFm
NDUwOTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5n
c0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1w
bC5jcHAKQEAgLTIwMyw2ICsyMDMsMTEgQEAgdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldExvYWRz
SW1hZ2VzQXV0b21hdGljYWxseShib29sIGxvYWRzSW1hZ2VzQXV0b21hdGljYWxseSkKICAgICBt
X3NldHRpbmdzLT5zZXRMb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHkobG9hZHNJbWFnZXNBdXRvbWF0
aWNhbGx5KTsKIH0KIAordm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldElnbm9yZVdlYmtpdEF1dG9j
b21wbGV0ZU9mZihib29sIGlnbm9yZSkKK3sKKyAgICBtX3NldHRpbmdzLT5zZXRJZ25vcmVXZWJr
aXRBdXRvY29tcGxldGVPZmYoaWdub3JlKTsKK30KKwogdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNl
dEltYWdlc0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogICAgIG1fc2V0dGluZ3MtPnNldEltYWdl
c0VuYWJsZWQoZW5hYmxlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJTZXR0aW5nc0ltcGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRp
bmdzSW1wbC5oCmluZGV4IDE4ZmJjMmFkNDQ0OWMwMmU1NDRhNGQzYzg2YTlmMzI0M2I2MzgzYTYu
LmUxNzdhNDg1ZDZjMDNkMzAxNzFjNGNlMjZjZjVlYjBlNDhiOWFjNDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCkBAIC0xMDYsNiArMTA2LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRGdWxsU2NyZWVuRW5hYmxlZChib29sKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0R2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQoYm9vbCk7CiAgICAg
dmlydHVhbCB2b2lkIHNldEh5cGVybGlua0F1ZGl0aW5nRW5hYmxlZChib29sKTsKKyAgICB2aXJ0
dWFsIHZvaWQgc2V0SWdub3JlV2Via2l0QXV0b2NvbXBsZXRlT2ZmKGJvb2wpOwogICAgIHZpcnR1
YWwgdm9pZCBzZXRJbWFnZXNFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRJbnRl
cmFjdGl2ZUZvcm1WYWxpZGF0aW9uRW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0
SmF2YUVuYWJsZWQoYm9vbCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181710</attachid>
            <date>2013-01-08 10:59:46 -0800</date>
            <delta_ts>2013-01-08 14:11:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20130108105650.patch</filename>
            <type>text/plain</type>
            <size>4389</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI2YmMyODM3N2VlZTMx
N2RhYzUyNjVjMDM4Y2NhNzgyNjk0NzU1YS4uOTg5ZWY2MDM3YTNhNTRmNWNiNzY3OTBiN2I5ZmZl
ODZiOTMwZGI2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTEyLTIwICBZdWUg
WmhhbmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBl
bmFibGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBp
biB3ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUg
Zm9sbG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQg
cGFzc3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUg
cGFzc3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2lu
Y2UgdGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxl
IChkZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAg
ICAgICAgKiBwYWdlL1NldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpT
ZXR0aW5ncyk6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0SWdub3JlV2Via2l0QXV0
b2NvbXBsZXRlT2ZmKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvU2V0dGlu
Z3MuaDoKKyAgICAgICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpp
Z25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorCiAyMDEyLTEyLTIwICBBbmRyZXkgTHVzaG5p
a292ICA8bHVzaG5pa292QGNocm9taXVtLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBm
aXggfF9yZXBhaW50QWxsfCBiZWhhdmlvdXIgb2YgYSBEZWZhdWx0VGV4dEVkaXRvcgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwppbmRleCA5NTBkYTY3YmYxNDMxOTA2N2I0ZWZkYjZkYmFhMTE1MGMz
MTZhZTBmLi5hMTU5MTFhNWFmZGZhNzZlNTFlYzFmMjRhNDIyMjNiNThiMjExZmYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTEyLTIwICBZdWUgWmhh
bmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBlbmFi
bGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBpbiB3
ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUgZm9s
bG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQgcGFz
c3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUgcGFz
c3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2luY2Ug
dGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxlIChk
ZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAgICAg
ICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvV2ViUGFzc3dvcmRGb3Jt
VXRpbHMuY3BwOgorICAgICAgICAoV2ViS2l0OjpmaW5kUGFzc3dvcmRGb3JtRmllbGRzKToKKyAg
ICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0
dGluZ3NJbXBsOjpzZXRJZ25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChXZWJTZXR0
aW5nc0ltcGwpOgorCiAyMDEyLTEyLTE5ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGludHJvZHVjZSBQYWdlLmNhcHR1cmVT
Y3JlZW5zaG90CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNz
d29yZEZvcm1VdGlscy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29y
ZEZvcm1VdGlscy5jcHAKaW5kZXggNzQwMTcxNzdhNTRhZWE1NzcwZDlkMDg2OTEwMWRhN2MzYjdi
NWVmZS4uOWYzYWJkMmYyZGU3MDExYjhiYmZlZjY1MjllZmQ5MTBiMzE2NzY0ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcApA
QCAtODAsOSArODAsMTEgQEAgdm9pZCBmaW5kUGFzc3dvcmRGb3JtRmllbGRzKEhUTUxGb3JtRWxl
bWVudCogZm9ybSwgUGFzc3dvcmRGb3JtRmllbGRzKiBmaWVsZHMpCiAgICAgICAgIGlmICghaW5w
dXRFbGVtZW50LT5pc0VuYWJsZWRGb3JtQ29udHJvbCgpKQogICAgICAgICAgICAgY29udGludWU7
CiAKKyAgICAgICAgLy8gV2UgZG9uJ3QgY2hlY2sgYXV0b2NvbXBsZXRlIHByb3BlcnR5IGhlcmUu
IFRoZSBhcHBsaWNhdGlvbnMgdXNpbmcKKyAgICAgICAgLy8gcGFzc3dvcmQgZm9ybXMgY2FuIHVz
ZSBXZWJQYXNzd29yZEZvcm1EYXRhLnBhc3N3b3JkU2hvdWxkQXV0b2NvbXBsZXRlCisgICAgICAg
IC8vIHRvIGltcGxlbWVudCB0aGVpciBvd24gaGV1cmlzdGljcyByZWxhdGVkIGF1dG9jb21wbGV0
ZS4KICAgICAgICAgaWYgKChmaWVsZHMtPnBhc3N3b3Jkcy5zaXplKCkgPCBtYXhQYXNzd29yZHMp
Ci0gICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpCi0gICAgICAg
ICAgICAmJiBpbnB1dEVsZW1lbnQtPnNob3VsZEF1dG9jb21wbGV0ZSgpKSB7CisgICAgICAgICAg
ICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7CiAgICAgICAgICAgICBpZiAo
ZmllbGRzLT5wYXNzd29yZHMuaXNFbXB0eSgpKQogICAgICAgICAgICAgICAgIGZpcnN0UGFzc3dv
cmRJbmRleCA9IGk7CiAgICAgICAgICAgICBmaWVsZHMtPnBhc3N3b3Jkcy5hcHBlbmQoaW5wdXRF
bGVtZW50KTsKQEAgLTEwMyw4ICsxMDUsMTEgQEAgdm9pZCBmaW5kUGFzc3dvcmRGb3JtRmllbGRz
KEhUTUxGb3JtRWxlbWVudCogZm9ybSwgUGFzc3dvcmRGb3JtRmllbGRzKiBmaWVsZHMpCiAgICAg
ICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgIC8vIFZhcmlvdXMgaW5wdXQgdHlw
ZXMgc3VjaCBhcyB0ZXh0LCB1cmwsIGVtYWlsIGNhbiBiZSBhIHVzZXJuYW1lIGZpZWxkLgotICAg
ICAgICAgICAgaWYgKChpbnB1dEVsZW1lbnQtPmlzVGV4dEZpZWxkKCkgJiYgIWlucHV0RWxlbWVu
dC0+aXNQYXNzd29yZEZpZWxkKCkpCi0gICAgICAgICAgICAgICAgJiYgKGlucHV0RWxlbWVudC0+
c2hvdWxkQXV0b2NvbXBsZXRlKCkpKSB7CisgICAgICAgICAgICAvLworICAgICAgICAgICAgLy8g
V2UgZG9uJ3QgY2hlY2sgYXV0b2NvbXBsZXRlIHByb3BlcnR5IGhlcmUuIFRoZSBhcHBsaWNhdGlv
bnMgdXNpbmcKKyAgICAgICAgICAgIC8vIHBhc3N3b3JkIGZvcm1zIGNhbiB1c2UgV2ViUGFzc3dv
cmRGb3JtRGF0YS5wYXNzd29yZFNob3VsZEF1dG9jb21wbGV0ZQorICAgICAgICAgICAgLy8gdG8g
aW1wbGVtZW50IHRoZWlyIG93biBoZXVyaXN0aWNzIHJlbGF0ZWQgYXV0b2NvbXBsZXRlLgorICAg
ICAgICAgICAgaWYgKChpbnB1dEVsZW1lbnQtPmlzVGV4dEZpZWxkKCkgJiYgIWlucHV0RWxlbWVu
dC0+aXNQYXNzd29yZEZpZWxkKCkpKSB7CiAgICAgICAgICAgICAgICAgZmllbGRzLT51c2VyTmFt
ZSA9IGlucHV0RWxlbWVudDsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181758</attachid>
            <date>2013-01-08 14:11:06 -0800</date>
            <delta_ts>2013-01-08 15:17:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20130108140810.patch</filename>
            <type>text/plain</type>
            <size>4648</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI2YmMyODM3N2VlZTMx
N2RhYzUyNjVjMDM4Y2NhNzgyNjk0NzU1YS4uOTg5ZWY2MDM3YTNhNTRmNWNiNzY3OTBiN2I5ZmZl
ODZiOTMwZGI2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTEyLTIwICBZdWUg
WmhhbmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBl
bmFibGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBp
biB3ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUg
Zm9sbG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQg
cGFzc3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUg
cGFzc3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2lu
Y2UgdGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxl
IChkZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAg
ICAgICAgKiBwYWdlL1NldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpT
ZXR0aW5ncyk6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0SWdub3JlV2Via2l0QXV0
b2NvbXBsZXRlT2ZmKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvU2V0dGlu
Z3MuaDoKKyAgICAgICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpp
Z25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorCiAyMDEyLTEyLTIwICBBbmRyZXkgTHVzaG5p
a292ICA8bHVzaG5pa292QGNocm9taXVtLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBm
aXggfF9yZXBhaW50QWxsfCBiZWhhdmlvdXIgb2YgYSBEZWZhdWx0VGV4dEVkaXRvcgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwppbmRleCA5NTBkYTY3YmYxNDMxOTA2N2I0ZWZkYjZkYmFhMTE1MGMz
MTZhZTBmLi5hMTU5MTFhNWFmZGZhNzZlNTFlYzFmMjRhNDIyMjNiNThiMjExZmYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTEyLTIwICBZdWUgWmhh
bmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBlbmFi
bGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBpbiB3
ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUgZm9s
bG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQgcGFz
c3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUgcGFz
c3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2luY2Ug
dGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxlIChk
ZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAgICAg
ICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvV2ViUGFzc3dvcmRGb3Jt
VXRpbHMuY3BwOgorICAgICAgICAoV2ViS2l0OjpmaW5kUGFzc3dvcmRGb3JtRmllbGRzKToKKyAg
ICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0
dGluZ3NJbXBsOjpzZXRJZ25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChXZWJTZXR0
aW5nc0ltcGwpOgorCiAyMDEyLTEyLTE5ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGludHJvZHVjZSBQYWdlLmNhcHR1cmVT
Y3JlZW5zaG90CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNz
d29yZEZvcm1VdGlscy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29y
ZEZvcm1VdGlscy5jcHAKaW5kZXggNzQwMTcxNzdhNTRhZWE1NzcwZDlkMDg2OTEwMWRhN2MzYjdi
NWVmZS4uZWI0ZGZhOGU0NDI0Y2EzYjExYjIxOTQxZGQ1OTM0Y2JmZDI3ZDMyMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcApA
QCAtODEsOCArODEsNyBAQCB2b2lkIGZpbmRQYXNzd29yZEZvcm1GaWVsZHMoSFRNTEZvcm1FbGVt
ZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVsZHMqIGZpZWxkcykKICAgICAgICAgICAgIGNvbnRp
bnVlOwogCiAgICAgICAgIGlmICgoZmllbGRzLT5wYXNzd29yZHMuc2l6ZSgpIDwgbWF4UGFzc3dv
cmRzKQotICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKQotICAg
ICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5zaG91bGRBdXRvY29tcGxldGUoKSkgeworICAgICAg
ICAgICAgJiYgaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkgewogICAgICAgICAgICAg
aWYgKGZpZWxkcy0+cGFzc3dvcmRzLmlzRW1wdHkoKSkKICAgICAgICAgICAgICAgICBmaXJzdFBh
c3N3b3JkSW5kZXggPSBpOwogICAgICAgICAgICAgZmllbGRzLT5wYXNzd29yZHMuYXBwZW5kKGlu
cHV0RWxlbWVudCk7CkBAIC0xMDMsOCArMTAyLDcgQEAgdm9pZCBmaW5kUGFzc3dvcmRGb3JtRmll
bGRzKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgUGFzc3dvcmRGb3JtRmllbGRzKiBmaWVsZHMpCiAg
ICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgIC8vIFZhcmlvdXMgaW5wdXQg
dHlwZXMgc3VjaCBhcyB0ZXh0LCB1cmwsIGVtYWlsIGNhbiBiZSBhIHVzZXJuYW1lIGZpZWxkLgot
ICAgICAgICAgICAgaWYgKChpbnB1dEVsZW1lbnQtPmlzVGV4dEZpZWxkKCkgJiYgIWlucHV0RWxl
bWVudC0+aXNQYXNzd29yZEZpZWxkKCkpCi0gICAgICAgICAgICAgICAgJiYgKGlucHV0RWxlbWVu
dC0+c2hvdWxkQXV0b2NvbXBsZXRlKCkpKSB7CisgICAgICAgICAgICBpZiAoKGlucHV0RWxlbWVu
dC0+aXNUZXh0RmllbGQoKSAmJiAhaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkpIHsK
ICAgICAgICAgICAgICAgICBmaWVsZHMtPnVzZXJOYW1lID0gaW5wdXRFbGVtZW50OwogICAgICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuaCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmgKaW5kZXggZmQ1MDNiNGNjODBmZjljYWEx
MWM5ZjNiNmNjYThiMzllMzg1ODlmYy4uYjBiY2FhMTU2MzdmZjBlZGVmOGNkYTRiN2M1NzAzYzc3
ZTA3NTAwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dv
cmRGb3JtVXRpbHMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29y
ZEZvcm1VdGlscy5oCkBAIC00Miw2ICs0MiwxMCBAQCBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAogLy8gSGVscGVyIHN0cnVjdHVyZSB0byBsb2NhdGUgdXNlcm5h
bWUsIHBhc3N3b3JkcyBhbmQgc3VibWl0IGZpZWxkcy4KKy8vCisvLyBOb3RlIHRoYXQgV2UgZG9u
J3QgY2hlY2sgYXV0b2NvbXBsZXRlIHByb3BlcnR5IGhlcmUuIFRoZSBhcHBsaWNhdGlvbnMgdXNp
bmcKKy8vIHBhc3N3b3JkIGZvcm1zIGNhbiB1c2UgV2ViUGFzc3dvcmRGb3JtRGF0YS5wYXNzd29y
ZFNob3VsZEF1dG9jb21wbGV0ZSB0bworLy8gaW1wbGVtZW50IHRoZWlyIG93biBoZXVyaXN0aWNz
IHJlbGF0ZWQgYXV0b2NvbXBsZXRlLgogc3RydWN0IFBhc3N3b3JkRm9ybUZpZWxkcyB7CiAgICAg
V2ViQ29yZTo6SFRNTElucHV0RWxlbWVudCogdXNlck5hbWU7CiAgICAgVmVjdG9yPFdlYkNvcmU6
OkhUTUxJbnB1dEVsZW1lbnQqPiBwYXNzd29yZHM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181780</attachid>
            <date>2013-01-08 15:17:14 -0800</date>
            <delta_ts>2013-01-09 13:39:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20130108151419.patch</filename>
            <type>text/plain</type>
            <size>4648</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI2YmMyODM3N2VlZTMx
N2RhYzUyNjVjMDM4Y2NhNzgyNjk0NzU1YS4uOTg5ZWY2MDM3YTNhNTRmNWNiNzY3OTBiN2I5ZmZl
ODZiOTMwZGI2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTEyLTIwICBZdWUg
WmhhbmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBl
bmFibGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBp
biB3ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUg
Zm9sbG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQg
cGFzc3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUg
cGFzc3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2lu
Y2UgdGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxl
IChkZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAg
ICAgICAgKiBwYWdlL1NldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpT
ZXR0aW5ncyk6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0SWdub3JlV2Via2l0QXV0
b2NvbXBsZXRlT2ZmKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvU2V0dGlu
Z3MuaDoKKyAgICAgICAgKFNldHRpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpp
Z25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorCiAyMDEyLTEyLTIwICBBbmRyZXkgTHVzaG5p
a292ICA8bHVzaG5pa292QGNocm9taXVtLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBm
aXggfF9yZXBhaW50QWxsfCBiZWhhdmlvdXIgb2YgYSBEZWZhdWx0VGV4dEVkaXRvcgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwppbmRleCA5NTBkYTY3YmYxNDMxOTA2N2I0ZWZkYjZkYmFhMTE1MGMz
MTZhZTBmLi5hMTU5MTFhNWFmZGZhNzZlNTFlYzFmMjRhNDIyMjNiNThiMjExZmYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTEyLTIwICBZdWUgWmhh
bmcgIDx6eXN4cW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ2hyb21pdW1dIEFsd2F5cyBlbmFi
bGUgYXV0b2NvbXBsZXRlIGZvciBwYXNzd29yZCBmaWVsZHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDYwMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBpbiB3
ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBjaGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUgZm9s
bG93aW5nIHdheTogaWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQgcGFz
c3dvcmQsIHdlIGlnbm9yZSBhdXRvY29tcGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUgcGFz
c3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVzcGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2luY2Ug
dGhpcyBpcyBhIGNocm9tZSBvbmx5IGZlYXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxlIChk
ZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFibGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAgICAg
ICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvV2ViUGFzc3dvcmRGb3Jt
VXRpbHMuY3BwOgorICAgICAgICAoV2ViS2l0OjpmaW5kUGFzc3dvcmRGb3JtRmllbGRzKToKKyAg
ICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0
dGluZ3NJbXBsOjpzZXRJZ25vcmVXZWJraXRBdXRvY29tcGxldGVPZmYpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChXZWJTZXR0
aW5nc0ltcGwpOgorCiAyMDEyLTEyLTE5ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGludHJvZHVjZSBQYWdlLmNhcHR1cmVT
Y3JlZW5zaG90CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNz
d29yZEZvcm1VdGlscy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29y
ZEZvcm1VdGlscy5jcHAKaW5kZXggNzQwMTcxNzdhNTRhZWE1NzcwZDlkMDg2OTEwMWRhN2MzYjdi
NWVmZS4uZWI0ZGZhOGU0NDI0Y2EzYjExYjIxOTQxZGQ1OTM0Y2JmZDI3ZDMyMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcApA
QCAtODEsOCArODEsNyBAQCB2b2lkIGZpbmRQYXNzd29yZEZvcm1GaWVsZHMoSFRNTEZvcm1FbGVt
ZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVsZHMqIGZpZWxkcykKICAgICAgICAgICAgIGNvbnRp
bnVlOwogCiAgICAgICAgIGlmICgoZmllbGRzLT5wYXNzd29yZHMuc2l6ZSgpIDwgbWF4UGFzc3dv
cmRzKQotICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKQotICAg
ICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5zaG91bGRBdXRvY29tcGxldGUoKSkgeworICAgICAg
ICAgICAgJiYgaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkgewogICAgICAgICAgICAg
aWYgKGZpZWxkcy0+cGFzc3dvcmRzLmlzRW1wdHkoKSkKICAgICAgICAgICAgICAgICBmaXJzdFBh
c3N3b3JkSW5kZXggPSBpOwogICAgICAgICAgICAgZmllbGRzLT5wYXNzd29yZHMuYXBwZW5kKGlu
cHV0RWxlbWVudCk7CkBAIC0xMDMsOCArMTAyLDcgQEAgdm9pZCBmaW5kUGFzc3dvcmRGb3JtRmll
bGRzKEhUTUxGb3JtRWxlbWVudCogZm9ybSwgUGFzc3dvcmRGb3JtRmllbGRzKiBmaWVsZHMpCiAg
ICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgIC8vIFZhcmlvdXMgaW5wdXQg
dHlwZXMgc3VjaCBhcyB0ZXh0LCB1cmwsIGVtYWlsIGNhbiBiZSBhIHVzZXJuYW1lIGZpZWxkLgot
ICAgICAgICAgICAgaWYgKChpbnB1dEVsZW1lbnQtPmlzVGV4dEZpZWxkKCkgJiYgIWlucHV0RWxl
bWVudC0+aXNQYXNzd29yZEZpZWxkKCkpCi0gICAgICAgICAgICAgICAgJiYgKGlucHV0RWxlbWVu
dC0+c2hvdWxkQXV0b2NvbXBsZXRlKCkpKSB7CisgICAgICAgICAgICBpZiAoKGlucHV0RWxlbWVu
dC0+aXNUZXh0RmllbGQoKSAmJiAhaW5wdXRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkpIHsK
ICAgICAgICAgICAgICAgICBmaWVsZHMtPnVzZXJOYW1lID0gaW5wdXRFbGVtZW50OwogICAgICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuaCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmgKaW5kZXggZmQ1MDNiNGNjODBmZjljYWEx
MWM5ZjNiNmNjYThiMzllMzg1ODlmYy4uMWM1ZTMyYjAyODczOGFkOTZkYzNjMjAyYTUzODEzYzI2
MGZhMjZlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dv
cmRGb3JtVXRpbHMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29y
ZEZvcm1VdGlscy5oCkBAIC00Miw2ICs0MiwxMCBAQCBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAogLy8gSGVscGVyIHN0cnVjdHVyZSB0byBsb2NhdGUgdXNlcm5h
bWUsIHBhc3N3b3JkcyBhbmQgc3VibWl0IGZpZWxkcy4KKy8vCisvLyBOb3RlIHRoYXQgd2UgZG9u
J3QgY2hlY2sgYXV0b2NvbXBsZXRlIHByb3BlcnR5IGhlcmUuIFRoZSBhcHBsaWNhdGlvbnMgdXNp
bmcKKy8vIHBhc3N3b3JkIGZvcm1zIGNhbiB1c2UgV2ViUGFzc3dvcmRGb3JtRGF0YS5wYXNzd29y
ZFNob3VsZEF1dG9jb21wbGV0ZSB0bworLy8gaW1wbGVtZW50IHRoZWlyIG93biBoZXVyaXN0aWNz
IHJlbGF0ZWQgYXV0b2NvbXBsZXRlLgogc3RydWN0IFBhc3N3b3JkRm9ybUZpZWxkcyB7CiAgICAg
V2ViQ29yZTo6SFRNTElucHV0RWxlbWVudCogdXNlck5hbWU7CiAgICAgVmVjdG9yPFdlYkNvcmU6
OkhUTUxJbnB1dEVsZW1lbnQqPiBwYXNzd29yZHM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181976</attachid>
            <date>2013-01-09 13:39:39 -0800</date>
            <delta_ts>2013-01-09 15:56:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20130109133642.patch</filename>
            <type>text/plain</type>
            <size>3273</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDk1MGRhNjdiZjE0MzE5MDY3YjRlZmRiNmRiYWExMTUwYzMxNmFlMGYuLjA0NzNlYzk1ZDkxZWY4
ZmJjNjJmODU5MzU3YjY4MmRkNTY1OTFjZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMTItMTItMjAgIFl1ZSBaaGFuZyAgPHp5c3hxbkBnb29nbGUuY29t
PgorCisgICAgICAgIFtDaHJvbWl1bV0gQWx3YXlzIGVuYWJsZSBhdXRvY29tcGxldGUgZm9yIHBh
c3N3b3JkIGZpZWxkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA0NjAwCisKKyAgICAgICAgRG9uJ3QgY2hlY2sgYXV0b2NvbXBsZXRlIGluIHdlYmtp
dCBjb2RlLiBSYXRoZXIsIHdlIGNoZWNrIGl0IGluIGNocm9tZSBjb2RlIGluIHRoZSBmb2xsb3dp
bmcgd2F5OiBpZiB0aGUgcGFzc3dvcmQgZmllbGQgaXMgY2hyb21lIGdlbmVyYXRlZCBwYXNzd29y
ZCwgd2UgaWdub3JlIGF1dG9jb21wbGV0ZT1vZmYgYW5kIGFsd2F5cyBmaWxsIHRoZSBwYXNzd29y
ZDsgb3RoZXJ3aXNlLCB3ZSByZXNwZWN0IHRoZSBhdXRvY29tcGxldGUgc2V0LiBTaW5jZSB0aGlz
IGlzIGEgY2hyb21lIG9ubHkgZmVhdHVyZSwgd2UgbWFrZSBpdCBjb25maWd1cmFibGUgKGRlZmF1
bHQgdG8gZmFsc2UgYnV0IGVuYWJsZSB0aGlzIGluIGNocm9tZSBjb2RlKS4KKworICAgICAgICAq
IHNyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHA6CisgICAgICAgIChXZWJLaXQ6OmZpbmRQYXNz
d29yZEZvcm1GaWVsZHMpOgorICAgICAgICAqIHNyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5oOgor
ICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6ZmluZFBhc3N3b3JkRm9ybUZpZWxk
cyk6CisKIDIwMTItMTItMTkgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogaW50cm9kdWNlIFBhZ2UuY2FwdHVyZVNjcmVlbnNo
b3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9y
bVV0aWxzLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0
aWxzLmNwcAppbmRleCA3NDAxNzE3N2E1NGFlYTU3NzBkOWQwODY5MTAxZGE3YzNiN2I1ZWZlLi5l
YjRkZmE4ZTQ0MjRjYTNiMTFiMjE5NDFkZDU5MzRjYmZkMjdkMzIyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuY3BwCkBAIC04MSw4
ICs4MSw3IEBAIHZvaWQgZmluZFBhc3N3b3JkRm9ybUZpZWxkcyhIVE1MRm9ybUVsZW1lbnQqIGZv
cm0sIFBhc3N3b3JkRm9ybUZpZWxkcyogZmllbGRzKQogICAgICAgICAgICAgY29udGludWU7CiAK
ICAgICAgICAgaWYgKChmaWVsZHMtPnBhc3N3b3Jkcy5zaXplKCkgPCBtYXhQYXNzd29yZHMpCi0g
ICAgICAgICAgICAmJiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpCi0gICAgICAgICAg
ICAmJiBpbnB1dEVsZW1lbnQtPnNob3VsZEF1dG9jb21wbGV0ZSgpKSB7CisgICAgICAgICAgICAm
JiBpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7CiAgICAgICAgICAgICBpZiAoZmll
bGRzLT5wYXNzd29yZHMuaXNFbXB0eSgpKQogICAgICAgICAgICAgICAgIGZpcnN0UGFzc3dvcmRJ
bmRleCA9IGk7CiAgICAgICAgICAgICBmaWVsZHMtPnBhc3N3b3Jkcy5hcHBlbmQoaW5wdXRFbGVt
ZW50KTsKQEAgLTEwMyw4ICsxMDIsNyBAQCB2b2lkIGZpbmRQYXNzd29yZEZvcm1GaWVsZHMoSFRN
TEZvcm1FbGVtZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVsZHMqIGZpZWxkcykKICAgICAgICAg
ICAgICAgICBjb250aW51ZTsKIAogICAgICAgICAgICAgLy8gVmFyaW91cyBpbnB1dCB0eXBlcyBz
dWNoIGFzIHRleHQsIHVybCwgZW1haWwgY2FuIGJlIGEgdXNlcm5hbWUgZmllbGQuCi0gICAgICAg
ICAgICBpZiAoKGlucHV0RWxlbWVudC0+aXNUZXh0RmllbGQoKSAmJiAhaW5wdXRFbGVtZW50LT5p
c1Bhc3N3b3JkRmllbGQoKSkKLSAgICAgICAgICAgICAgICAmJiAoaW5wdXRFbGVtZW50LT5zaG91
bGRBdXRvY29tcGxldGUoKSkpIHsKKyAgICAgICAgICAgIGlmICgoaW5wdXRFbGVtZW50LT5pc1Rl
eHRGaWVsZCgpICYmICFpbnB1dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKSkgewogICAgICAg
ICAgICAgICAgIGZpZWxkcy0+dXNlck5hbWUgPSBpbnB1dEVsZW1lbnQ7CiAgICAgICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuaAppbmRleCBmZDUwM2I0Y2M4MGZmOWNhYTExYzlmM2I2
Y2NhOGIzOWUzODU4OWZjLi4xYzVlMzJiMDI4NzM4YWQ5NmRjM2MyMDJhNTM4MTNjMjYwZmEyNmUx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1V
dGlscy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0
aWxzLmgKQEAgLTQyLDYgKzQyLDEwIEBAIGNsYXNzIEhUTUxGb3JtRWxlbWVudDsKIG5hbWVzcGFj
ZSBXZWJLaXQgewogCiAvLyBIZWxwZXIgc3RydWN0dXJlIHRvIGxvY2F0ZSB1c2VybmFtZSwgcGFz
c3dvcmRzIGFuZCBzdWJtaXQgZmllbGRzLgorLy8KKy8vIE5vdGUgdGhhdCB3ZSBkb24ndCBjaGVj
ayBhdXRvY29tcGxldGUgcHJvcGVydHkgaGVyZS4gVGhlIGFwcGxpY2F0aW9ucyB1c2luZworLy8g
cGFzc3dvcmQgZm9ybXMgY2FuIHVzZSBXZWJQYXNzd29yZEZvcm1EYXRhLnBhc3N3b3JkU2hvdWxk
QXV0b2NvbXBsZXRlIHRvCisvLyBpbXBsZW1lbnQgdGhlaXIgb3duIGhldXJpc3RpY3MgcmVsYXRl
ZCBhdXRvY29tcGxldGUuCiBzdHJ1Y3QgUGFzc3dvcmRGb3JtRmllbGRzIHsKICAgICBXZWJDb3Jl
OjpIVE1MSW5wdXRFbGVtZW50KiB1c2VyTmFtZTsKICAgICBWZWN0b3I8V2ViQ29yZTo6SFRNTElu
cHV0RWxlbWVudCo+IHBhc3N3b3JkczsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182001</attachid>
            <date>2013-01-09 15:56:56 -0800</date>
            <delta_ts>2013-01-09 16:28:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104600-20130109155359.patch</filename>
            <type>text/plain</type>
            <size>3310</size>
            <attacher name="Yue Zhang">zysxqn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDk1MGRhNjdiZjE0MzE5MDY3YjRlZmRiNmRiYWExMTUwYzMxNmFlMGYuLmY2NzFiNDJhZTFkZDQ4
NWExZmFmMTVjYjhiZjQzMWFiN2M2ZGZlOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTItMTItMjAgIFl1ZSBaaGFuZyAgPHp5c3hxbkBnb29nbGUuY29t
PgorCisgICAgICAgIFtDaHJvbWl1bV0gQWx3YXlzIGVuYWJsZSBhdXRvY29tcGxldGUgZm9yIHBh
c3N3b3JkIGZpZWxkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA0NjAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgorCisgICAg
ICAgIERvbid0IGNoZWNrIGF1dG9jb21wbGV0ZSBpbiB3ZWJraXQgY29kZS4gUmF0aGVyLCB3ZSBj
aGVjayBpdCBpbiBjaHJvbWUgY29kZSBpbiB0aGUgZm9sbG93aW5nIHdheTogaWYgdGhlIHBhc3N3
b3JkIGZpZWxkIGlzIGNocm9tZSBnZW5lcmF0ZWQgcGFzc3dvcmQsIHdlIGlnbm9yZSBhdXRvY29t
cGxldGU9b2ZmIGFuZCBhbHdheXMgZmlsbCB0aGUgcGFzc3dvcmQ7IG90aGVyd2lzZSwgd2UgcmVz
cGVjdCB0aGUgYXV0b2NvbXBsZXRlIHNldC4gU2luY2UgdGhpcyBpcyBhIGNocm9tZSBvbmx5IGZl
YXR1cmUsIHdlIG1ha2UgaXQgY29uZmlndXJhYmxlIChkZWZhdWx0IHRvIGZhbHNlIGJ1dCBlbmFi
bGUgdGhpcyBpbiBjaHJvbWUgY29kZSkuCisKKyAgICAgICAgKiBzcmMvV2ViUGFzc3dvcmRGb3Jt
VXRpbHMuY3BwOgorICAgICAgICAoV2ViS2l0OjpmaW5kUGFzc3dvcmRGb3JtRmllbGRzKToKKyAg
ICAgICAgKiBzcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuaDoKKyAgICAgICAgKFdlYktpdCk6Cisg
ICAgICAgIChXZWJLaXQ6OmZpbmRQYXNzd29yZEZvcm1GaWVsZHMpOgorCiAyMDEyLTEyLTE5ICBQ
YXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IGludHJvZHVjZSBQYWdlLmNhcHR1cmVTY3JlZW5zaG90CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5jcHAKaW5kZXggNzQwMTcx
NzdhNTRhZWE1NzcwZDlkMDg2OTEwMWRhN2MzYjdiNWVmZS4uZWI0ZGZhOGU0NDI0Y2EzYjExYjIx
OTQxZGQ1OTM0Y2JmZDI3ZDMyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlBhc3N3b3JkRm9ybVV0aWxzLmNwcApAQCAtODEsOCArODEsNyBAQCB2b2lkIGZpbmRQ
YXNzd29yZEZvcm1GaWVsZHMoSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBQYXNzd29yZEZvcm1GaWVs
ZHMqIGZpZWxkcykKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIGlmICgoZmllbGRz
LT5wYXNzd29yZHMuc2l6ZSgpIDwgbWF4UGFzc3dvcmRzKQotICAgICAgICAgICAgJiYgaW5wdXRF
bGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKQotICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5z
aG91bGRBdXRvY29tcGxldGUoKSkgeworICAgICAgICAgICAgJiYgaW5wdXRFbGVtZW50LT5pc1Bh
c3N3b3JkRmllbGQoKSkgewogICAgICAgICAgICAgaWYgKGZpZWxkcy0+cGFzc3dvcmRzLmlzRW1w
dHkoKSkKICAgICAgICAgICAgICAgICBmaXJzdFBhc3N3b3JkSW5kZXggPSBpOwogICAgICAgICAg
ICAgZmllbGRzLT5wYXNzd29yZHMuYXBwZW5kKGlucHV0RWxlbWVudCk7CkBAIC0xMDMsOCArMTAy
LDcgQEAgdm9pZCBmaW5kUGFzc3dvcmRGb3JtRmllbGRzKEhUTUxGb3JtRWxlbWVudCogZm9ybSwg
UGFzc3dvcmRGb3JtRmllbGRzKiBmaWVsZHMpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAK
ICAgICAgICAgICAgIC8vIFZhcmlvdXMgaW5wdXQgdHlwZXMgc3VjaCBhcyB0ZXh0LCB1cmwsIGVt
YWlsIGNhbiBiZSBhIHVzZXJuYW1lIGZpZWxkLgotICAgICAgICAgICAgaWYgKChpbnB1dEVsZW1l
bnQtPmlzVGV4dEZpZWxkKCkgJiYgIWlucHV0RWxlbWVudC0+aXNQYXNzd29yZEZpZWxkKCkpCi0g
ICAgICAgICAgICAgICAgJiYgKGlucHV0RWxlbWVudC0+c2hvdWxkQXV0b2NvbXBsZXRlKCkpKSB7
CisgICAgICAgICAgICBpZiAoKGlucHV0RWxlbWVudC0+aXNUZXh0RmllbGQoKSAmJiAhaW5wdXRF
bGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkpIHsKICAgICAgICAgICAgICAgICBmaWVsZHMtPnVz
ZXJOYW1lID0gaW5wdXRFbGVtZW50OwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRG
b3JtVXRpbHMuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybVV0
aWxzLmgKaW5kZXggZmQ1MDNiNGNjODBmZjljYWExMWM5ZjNiNmNjYThiMzllMzg1ODlmYy4uMWM1
ZTMyYjAyODczOGFkOTZkYzNjMjAyYTUzODEzYzI2MGZhMjZlMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtVXRpbHMuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1VdGlscy5oCkBAIC00Miw2ICs0Miwx
MCBAQCBjbGFzcyBIVE1MRm9ybUVsZW1lbnQ7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogLy8gSGVs
cGVyIHN0cnVjdHVyZSB0byBsb2NhdGUgdXNlcm5hbWUsIHBhc3N3b3JkcyBhbmQgc3VibWl0IGZp
ZWxkcy4KKy8vCisvLyBOb3RlIHRoYXQgd2UgZG9uJ3QgY2hlY2sgYXV0b2NvbXBsZXRlIHByb3Bl
cnR5IGhlcmUuIFRoZSBhcHBsaWNhdGlvbnMgdXNpbmcKKy8vIHBhc3N3b3JkIGZvcm1zIGNhbiB1
c2UgV2ViUGFzc3dvcmRGb3JtRGF0YS5wYXNzd29yZFNob3VsZEF1dG9jb21wbGV0ZSB0bworLy8g
aW1wbGVtZW50IHRoZWlyIG93biBoZXVyaXN0aWNzIHJlbGF0ZWQgYXV0b2NvbXBsZXRlLgogc3Ry
dWN0IFBhc3N3b3JkRm9ybUZpZWxkcyB7CiAgICAgV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudCog
dXNlck5hbWU7CiAgICAgVmVjdG9yPFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQqPiBwYXNzd29y
ZHM7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>