<?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>80234</bug_id>
          
          <creation_ts>2012-03-04 20:05:27 -0800</creation_ts>
          <short_desc>[Forms] The &quot;optgroup&quot; element should not be a form-associated element.</short_desc>
          <delta_ts>2012-03-05 22:59:17 -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>Forms</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>
          
          <blocked>80381</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter>yosin</reporter>
          <assigned_to>yosin</assigned_to>
          <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>570375</commentid>
    <comment_count>0</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-03-04 20:05:27 -0800</bug_when>
    <thetext>According the specification, the &quot;optgroup&quot; element isn&apos;t a form-associate element.
http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#form-associated-element

However, current implementation of HTMLOptGroupElement is derived from HTMLFormControlElement. We have unexpected dependency between HTMLOptGroupElement and HTMLFormControlElement and FormAssociatedElement. Also, We waste time in loop of HTMLFormElement::m_associatedElements.

For clear understanding and better maintainability, it is better that C++ class hierarchy should be similar to specified in the specification.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570395</commentid>
    <comment_count>1</comment_count>
      <attachid>130054</attachid>
    <who name="">yosin</who>
    <bug_when>2012-03-04 21:05:36 -0800</bug_when>
    <thetext>Created attachment 130054
Patch 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570464</commentid>
    <comment_count>2</comment_count>
      <attachid>130054</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-05 00:33:25 -0800</bug_when>
    <thetext>Comment on attachment 130054
Patch 1

Please take care of HTMLOptionElement::disabled().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570476</commentid>
    <comment_count>3</comment_count>
      <attachid>130070</attachid>
    <who name="">yosin</who>
    <bug_when>2012-03-05 00:49:37 -0800</bug_when>
    <thetext>Created attachment 130070
Patch 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570482</commentid>
    <comment_count>4</comment_count>
      <attachid>130070</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-05 00:54:56 -0800</bug_when>
    <thetext>Comment on attachment 130070
Patch 2

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

&gt; Source/WebCore/html/HTMLOptionElement.cpp:302
&gt; -    return ownElementDisabled() || (parentNode() &amp;&amp; static_cast&lt;HTMLFormControlElement*&gt;(parentNode())-&gt;disabled());
&gt; +    return ownElementDisabled() || (parentNode() &amp;&amp; static_cast&lt;HTMLElement*&gt;(parentNode())-&gt;disabled());

You had better check parentNode()-&gt;isHTMLElment().

Nit: we had better check hasTagName(optgroupTag).  However it&apos;s not your bug, and you don&apos;t need to add it in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570486</commentid>
    <comment_count>5</comment_count>
      <attachid>130072</attachid>
    <who name="">yosin</who>
    <bug_when>2012-03-05 00:59:07 -0800</bug_when>
    <thetext>Created attachment 130072
Patch 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570490</commentid>
    <comment_count>6</comment_count>
      <attachid>130072</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-05 01:02:19 -0800</bug_when>
    <thetext>Comment on attachment 130072
Patch 3

ok.   Thank you!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570536</commentid>
    <comment_count>7</comment_count>
      <attachid>130072</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-05 02:29:39 -0800</bug_when>
    <thetext>Comment on attachment 130072
Patch 3

Clearing flags on attachment: 130072

Committed r109729: &lt;http://trac.webkit.org/changeset/109729&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570537</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-05 02:29:47 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570862</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-03-05 11:18:53 -0800</bug_when>
    <thetext>If not all form controls will inherit from HTMLFormControlElement now, then we should rename HTMLFormControlElement to something more appropriate.

Or was OPTGROUP not really a form control in some other sense? This is confusing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571277</commentid>
    <comment_count>10</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-03-05 17:43:06 -0800</bug_when>
    <thetext>My patches will make subclasses of HTMLFormControlElement[1] to classes in HTMLFormControlCollection[2] only, for matching implementation and the specification[3].

[1] A comment of HTMLFormControlElement:
// HTMLFormControlElement is the default implementation of FormAssociatedElement,
// and form-associated element implementations should use HTMLFormControlElement
// unless there is a special reason.

[2] HTMLFormControlCollection
http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#htmlformcontrolscollection

[3] http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#category-listed

HTMLFromControlCollection contains &quot;listed elements&quot; of form-associated elements:
1. button
2. fieldset
3. input
4. keygen
5. object
6. output
7. select
8. textarea

Note: All of form-associated elements except for the &quot;label&quot; element, are in HTMLFormControlCollection.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571321</commentid>
    <comment_count>11</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-05 18:14:37 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; If not all form controls will inherit from HTMLFormControlElement now, then we should rename HTMLFormControlElement to something more appropriate.

I agree with you.  We should have a better name.
NonObjectFormAssociatedElement is a descriptive name though it isn&apos;t cool.

&gt; Or was OPTGROUP not really a form control in some other sense? This is confusing.

We think the following elements should not inherit from HTMLFormControlElement.
- optgroup
- option
- meter
- progress

I checked all of isFormControlElement() usage in WebKit roughly, and I think it&apos;s reasonable to make them non-HTMLFormControlElement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571326</commentid>
    <comment_count>12</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-05 18:22:00 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; We think the following elements should not inherit from HTMLFormControlElement.
&gt; - optgroup
&gt; - option
&gt; - meter
&gt; - progress

legend, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571337</commentid>
    <comment_count>13</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-03-05 18:31:40 -0800</bug_when>
    <thetext>Note: FormAssociatedElement::isEnumeratable method denotes whether an element into HTMLFormControlCollection or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571391</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-03-05 19:54:45 -0800</bug_when>
    <thetext>I&apos;m not sure if I understood this correctly. Would HTMLFormListedEleemnt be an appropriate name?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571403</commentid>
    <comment_count>15</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-03-05 20:12:37 -0800</bug_when>
    <thetext>(In reply to comment #14)
&gt; I&apos;m not sure if I understood this correctly. Would HTMLFormListedEleemnt be an appropriate name?

Unfortunately, no for current implementation. As tkent@, proper name of current implementation is HTMLFormControlElementButObjectElement.

If we can implement HTMLFormListedElement (or AssociateFormListedElement) as mix-in (== not inherit from HTMLElement as FormAssociatedElement), we can use it for all of them including &quot;object&quot; element.

In this case, we can writer:

class HTMLButton : public HTMLElement, public AssociateFormListedElement { ... }
class HTMLObjectElement : public HTMLPulugInElement, public AssociateFormListedElement { ... }

It seems we may want to have ValidableElement. HTMLFormControlElement implements validity but HTMLObject doesn&apos;t need form validation.

So, I propose that break HTMLFormControlElement into mixable (= not inherit HTMLElement) classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571516</commentid>
    <comment_count>16</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-03-05 22:59:17 -0800</bug_when>
    <thetext>This bug is part of HTMLFormControlElement re-factoring meta bug https://bugs.webkit.org/show_bug.cgi?id=80381</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130054</attachid>
            <date>2012-03-04 21:05:36 -0800</date>
            <delta_ts>2012-03-05 00:49:28 -0800</delta_ts>
            <desc>Patch 1</desc>
            <filename>bug-80234-20120305140534.patch</filename>
            <type>text/plain</type>
            <size>5702</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzIzN2I0ZjA0MDlmMjAy
YzkxYjAwMTIzMTQ2YzcwMWE4MGJkY2FlMS4uZWE5OTZlZDZkYjc0NDlhOGYzNThhNzZkZDk1NmI4
ZDgyMmJjNDE3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTAzLTA0ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Zvcm1zXSBUaGUg
Im9wdGdyb3VwIiBlbGVtZW50IHNob3VsZCBub3QgYmUgYSBmb3JtLWFzc29jaWF0ZWQgZWxlbWVu
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAyMzQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGNoYW5nZXMgYmFzZSBjbGFzcyBvZiBIVE1MT3B0R3JvdXAgdG8gSFRNTEVsZW1lbnQgZnJv
bQorICAgICAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IHRvIGF2b2lkIHRoZSAib3B0Z3JvdXAi
IGVsZW1lbnQgaW4gZm9ybS1hc3NvY2lhdGUKKyAgICAgICAgZWxlbWVudHMgY29sbGVjdGlvbi4K
KworICAgICAgICBObyBuZXcgdGVzdHMuIE5vIGJlaGF2aW9yIGNoYW5nZXMuCisKKyAgICAgICAg
KiBodG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE9w
dEdyb3VwRWxlbWVudDo6SFRNTE9wdEdyb3VwRWxlbWVudCk6IFJlbW92ZSAiZm9ybSIgcGFyYW1l
dGVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE9wdEdyb3VwRWxlbWVudDo6Y3JlYXRlKTogUmVt
b3ZlICJmb3JtIiBwYXJhbWV0ZXIuCisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0R3JvdXBFbGVt
ZW50OjpjaGlsZHJlbkNoYW5nZWQpOiBSZXBsYWNlIGJhc2UgbWV0aG9kIGNhbGwuCisgICAgICAg
IChXZWJDb3JlOjpIVE1MT3B0R3JvdXBFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6IFJlcGxhY2Ug
YmFzZSBtZXRob2QgY2FsbC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxPcHRHcm91cEVsZW1lbnQ6
OmF0dGFjaCk6IFJlcGxhY2UgYmFzZSBtZXRob2QgY2FsbC4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxPcHRHcm91cEVsZW1lbnQ6OmRldGFjaCk6IFJlcGxhY2UgYmFzZSBtZXRob2QgY2FsbC4KKyAg
ICAgICAgKiBodG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaDoKKyAgICAgICAgKEhUTUxPcHRHcm91
cEVsZW1lbnQpOiBDaGFuZ2UgYmFzZSBjbGFzcyB0byBIVE1MRWxlbWVudC4KKyAgICAgICAgKiBo
dG1sL0hUTUxUYWdOYW1lcy5pbjogUmVtb3ZlICJjb25zdHJ1Y3Rvck5lZWRzRm9ybUVsZW1lbnQi
IGZvciBub3QgcGFzc2luZyAiZm9ybSIgcGFyYW1ldGVyIGluIEhUTUxFbGVtZW50RmFjdG9yeS4K
KwogMjAxMi0wMy0wNCAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KIAogICAg
ICAgICBXZWJLaXQgbmVlZHMgdG9IVE1MVW5rbm93bkVsZW1lbnQoKSBhbmQgaXNVbmtub3duKCkg
Zm9yIHNhbml0eSBjaGVjay4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9w
dEdyb3VwRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1l
bnQuY3BwCmluZGV4IDMyMTM4NDJmMDZiNmVhZDkxZTY1ZmM2ODk1OThkZmFiOThmNTI3MmYuLmUw
OTIwMDA2MjM3Y2U2YTBlMmFlNWIyZTVjNTU5NGU0Y2M1OTMyZGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE9wdEdyb3VwRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MT3B0R3JvdXBFbGVtZW50LmNwcApAQCAtMzgsMTUgKzM4LDE1IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIAotaW5saW5lIEhU
TUxPcHRHcm91cEVsZW1lbnQ6OkhUTUxPcHRHcm91cEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFt
ZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50LCBIVE1MRm9ybUVsZW1lbnQqIGZvcm0pCi0g
ICAgOiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50LCBmb3JtKQoraW5s
aW5lIEhUTUxPcHRHcm91cEVsZW1lbnQ6OkhUTUxPcHRHcm91cEVsZW1lbnQoY29uc3QgUXVhbGlm
aWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQorICAgIDogSFRNTEVsZW1lbnQo
dGFnTmFtZSwgZG9jdW1lbnQpCiB7CiAgICAgQVNTRVJUKGhhc1RhZ05hbWUob3B0Z3JvdXBUYWcp
KTsKIH0KIAotUGFzc1JlZlB0cjxIVE1MT3B0R3JvdXBFbGVtZW50PiBIVE1MT3B0R3JvdXBFbGVt
ZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3Vt
ZW50LCBIVE1MRm9ybUVsZW1lbnQqIGZvcm0pCitQYXNzUmVmUHRyPEhUTUxPcHRHcm91cEVsZW1l
bnQ+IEhUTUxPcHRHcm91cEVsZW1lbnQ6OmNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdO
YW1lLCBEb2N1bWVudCogZG9jdW1lbnQpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBIVE1M
T3B0R3JvdXBFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50LCBmb3JtKSk7CisgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBIVE1MT3B0R3JvdXBFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KSk7CiB9CiAK
IGJvb2wgSFRNTE9wdEdyb3VwRWxlbWVudDo6c3VwcG9ydHNGb2N1cygpIGNvbnN0CkBAIC02OSwx
MiArNjksMTIgQEAgY29uc3QgQXRvbWljU3RyaW5nJiBIVE1MT3B0R3JvdXBFbGVtZW50Ojpmb3Jt
Q29udHJvbFR5cGUoKSBjb25zdAogdm9pZCBIVE1MT3B0R3JvdXBFbGVtZW50OjpjaGlsZHJlbkNo
YW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIsIE5vZGUqIGJlZm9yZUNoYW5nZSwgTm9kZSogYWZ0
ZXJDaGFuZ2UsIGludCBjaGlsZENvdW50RGVsdGEpCiB7CiAgICAgcmVjYWxjU2VsZWN0T3B0aW9u
cygpOwotICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2Vk
QnlQYXJzZXIsIGJlZm9yZUNoYW5nZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0YSk7Cisg
ICAgSFRNTEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2VkQnlQYXJzZXIsIGJlZm9yZUNo
YW5nZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0YSk7CiB9CiAKIHZvaWQgSFRNTE9wdEdy
b3VwRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRyKQogewotICAgIEhUTUxG
b3JtQ29udHJvbEVsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGF0dHIpOworICAgIEhUTUxFbGVtZW50
OjpwYXJzZUF0dHJpYnV0ZShhdHRyKTsKICAgICByZWNhbGNTZWxlY3RPcHRpb25zKCk7CiB9CiAK
QEAgLTkxLDEzICs5MSwxMyBAQCB2b2lkIEhUTUxPcHRHcm91cEVsZW1lbnQ6OmF0dGFjaCgpCiB7
CiAgICAgaWYgKHBhcmVudE5vZGUoKS0+cmVuZGVyU3R5bGUoKSkKICAgICAgICAgc2V0UmVuZGVy
U3R5bGUoc3R5bGVGb3JSZW5kZXJlcigpKTsKLSAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojph
dHRhY2goKTsKKyAgICBIVE1MRWxlbWVudDo6YXR0YWNoKCk7CiB9CiAKIHZvaWQgSFRNTE9wdEdy
b3VwRWxlbWVudDo6ZGV0YWNoKCkKIHsKICAgICBtX3N0eWxlLmNsZWFyKCk7Ci0gICAgSFRNTEZv
cm1Db250cm9sRWxlbWVudDo6ZGV0YWNoKCk7CisgICAgSFRNTEVsZW1lbnQ6OmRldGFjaCgpOwog
fQogCiB2b2lkIEhUTUxPcHRHcm91cEVsZW1lbnQ6OnNldFJlbmRlclN0eWxlKFBhc3NSZWZQdHI8
UmVuZGVyU3R5bGU+IG5ld1N0eWxlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MT3B0R3JvdXBFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVs
ZW1lbnQuaAppbmRleCA4NWQ1MzFlNDM2MWI0MWI2ZjRhZDMxYzYwNjdmZmM4YzUxZWMxYzgxLi5i
ZmQ2ZmU0ZGMzNmQ1ZWJkMjM2MzM4YTc3MzZhZWI4MmNjMTdkMzI5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaApAQCAtMjQsMjIgKzI0LDIyIEBACiAjaWZuZGVm
IEhUTUxPcHRHcm91cEVsZW1lbnRfaAogI2RlZmluZSBIVE1MT3B0R3JvdXBFbGVtZW50X2gKIAot
I2luY2x1ZGUgIkhUTUxGb3JtQ29udHJvbEVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MRWxlbWVu
dC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgCiBjbGFzcyBIVE1MU2VsZWN0RWxlbWVu
dDsKIAotY2xhc3MgSFRNTE9wdEdyb3VwRWxlbWVudCA6IHB1YmxpYyBIVE1MRm9ybUNvbnRyb2xF
bGVtZW50IHsKK2NsYXNzIEhUTUxPcHRHcm91cEVsZW1lbnQgOiBwdWJsaWMgSFRNTEVsZW1lbnQg
ewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxPcHRHcm91cEVsZW1lbnQ+IGNy
ZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqKTsK
KyAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MT3B0R3JvdXBFbGVtZW50PiBjcmVhdGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Kik7CiAKICAgICBIVE1MU2VsZWN0RWxlbWVudCogb3du
ZXJTZWxlY3RFbGVtZW50KCkgY29uc3Q7CiAgICAgCiAgICAgU3RyaW5nIGdyb3VwTGFiZWxUZXh0
KCkgY29uc3Q7CiAKIHByaXZhdGU6Ci0gICAgSFRNTE9wdEdyb3VwRWxlbWVudChjb25zdCBRdWFs
aWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqKTsKKyAgICBIVE1MT3B0R3Jv
dXBFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCopOwogCiAgICAgdmlydHVh
bCBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1Db250cm9sVHlwZSgpIGNvbnN0OwogICAgIHZpcnR1
YWwgYm9vbCBzdXBwb3J0c0ZvY3VzKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxUYWdOYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhZ05hbWVz
LmluCmluZGV4IDYyYmE1MDEwMDBjNjc5ODdmYTQyNWU4YzViYWIzOGE1MTFkMjQ4MDQuLmJhNWI2
MDNkZDQ5NmFiMGI4NWMzZjcxZTNlMDA5Y2Y4MTA1OTFjZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFRhZ05hbWVzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFRhZ05hbWVzLmluCkBAIC05MCw3ICs5MCw3IEBAIG5vZnJhbWVzIGludGVyZmFjZU5hbWU9SFRN
TEVsZW1lbnQKIG5vbGF5ZXIgaW50ZXJmYWNlTmFtZT1IVE1MRWxlbWVudAogb2JqZWN0IGNvbnN0
cnVjdG9yTmVlZHNGb3JtRWxlbWVudCwgY29uc3RydWN0b3JOZWVkc0NyZWF0ZWRCeVBhcnNlcgog
b2wgaW50ZXJmYWNlTmFtZT1IVE1MT0xpc3RFbGVtZW50Ci1vcHRncm91cCBpbnRlcmZhY2VOYW1l
PUhUTUxPcHRHcm91cEVsZW1lbnQsIGNvbnN0cnVjdG9yTmVlZHNGb3JtRWxlbWVudAorb3B0Z3Jv
dXAgaW50ZXJmYWNlTmFtZT1IVE1MT3B0R3JvdXBFbGVtZW50CiBvcHRpb24gY29uc3RydWN0b3JO
ZWVkc0Zvcm1FbGVtZW50CiBvdXRwdXQgY29uc3RydWN0b3JOZWVkc0Zvcm1FbGVtZW50CiBzaGFk
b3cgaW50ZXJmYWNlTmFtZT1IVE1MU2hhZG93RWxlbWVudCwgY29uZGl0aW9uYWw9U0hBRE9XX0RP
TQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130070</attachid>
            <date>2012-03-05 00:49:37 -0800</date>
            <delta_ts>2012-03-05 00:59:01 -0800</delta_ts>
            <desc>Patch 2</desc>
            <filename>bug-80234-20120305174934.patch</filename>
            <type>text/plain</type>
            <size>6729</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzIzN2I0ZjA0MDlmMjAy
YzkxYjAwMTIzMTQ2YzcwMWE4MGJkY2FlMS4uMDU3NDI3NjcyZTY2NWNlMGQ4YTdjZmExYTA4NDYw
NTYzMmQ4MjkwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTAzLTA0ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Zvcm1zXSBUaGUg
Im9wdGdyb3VwIiBlbGVtZW50IHNob3VsZCBub3QgYmUgYSBmb3JtLWFzc29jaWF0ZWQgZWxlbWVu
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAyMzQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGNoYW5nZXMgYmFzZSBjbGFzcyBvZiBIVE1MT3B0R3JvdXAgdG8gSFRNTEVsZW1lbnQgZnJv
bQorICAgICAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IHRvIGF2b2lkIHRoZSAib3B0Z3JvdXAi
IGVsZW1lbnQgaW4gZm9ybS1hc3NvY2lhdGUKKyAgICAgICAgZWxlbWVudHMgY29sbGVjdGlvbi4K
KworICAgICAgICBUaGlzIHBhdGNoIGRvZXNuJ3QgYWZmZWN0IEhUTUxPcHRpb25FbGVtZW50Ojpk
aXNhYmxlZCdzIHN0YXRpY19jYXN0LiBIb3dldmVyLAorICAgICAgICBpdCBkb2Vzbid0IGdvb2Qg
YXQgY29kaW5nIHN0eWxlLiBUaGlzIHBhdGNoIGFsc28gZml4IGl0LgorCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzLiBObyBiZWhhdmlvciBjaGFuZ2VzLgorCisgICAgICAgICogaHRtbC9IVE1MT3B0
R3JvdXBFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxPcHRHcm91cEVsZW1lbnQ6
OkhUTUxPcHRHcm91cEVsZW1lbnQpOiBSZW1vdmUgImZvcm0iIHBhcmFtZXRlci4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxPcHRHcm91cEVsZW1lbnQ6OmNyZWF0ZSk6IFJlbW92ZSAiZm9ybSIgcGFy
YW1ldGVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE9wdEdyb3VwRWxlbWVudDo6Y2hpbGRyZW5D
aGFuZ2VkKTogUmVwbGFjZSBiYXNlIG1ldGhvZCBjYWxsLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TE9wdEdyb3VwRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUpOiBSZXBsYWNlIGJhc2UgbWV0aG9kIGNh
bGwuCisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0R3JvdXBFbGVtZW50OjphdHRhY2gpOiBSZXBs
YWNlIGJhc2UgbWV0aG9kIGNhbGwuCisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0R3JvdXBFbGVt
ZW50OjpkZXRhY2gpOiBSZXBsYWNlIGJhc2UgbWV0aG9kIGNhbGwuCisgICAgICAgICogaHRtbC9I
VE1MT3B0R3JvdXBFbGVtZW50Lmg6CisgICAgICAgIChIVE1MT3B0R3JvdXBFbGVtZW50KTogQ2hh
bmdlIGJhc2UgY2xhc3MgdG8gSFRNTEVsZW1lbnQuCisgICAgICAgICogaHRtbC9IVE1MT3B0aW9u
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0aW9uRWxlbWVudDo6ZGlzYWJs
ZWQpOiBSZXBsYWNlIHN0YXRpY19jYXN0PEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqPiB0byBzdGF0
aWNfY2FzdDxIVE1MRWxlbWVudCo+LgorICAgICAgICAqIGh0bWwvSFRNTFRhZ05hbWVzLmluOiBS
ZW1vdmUgImNvbnN0cnVjdG9yTmVlZHNGb3JtRWxlbWVudCIgZm9yIG5vdCBwYXNzaW5nICJmb3Jt
IiBwYXJhbWV0ZXIgaW4gSFRNTEVsZW1lbnRGYWN0b3J5LgorCiAyMDEyLTAzLTA0ICBNT1JJVEEg
SGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgogCiAgICAgICAgIFdlYktpdCBuZWVkcyB0b0hU
TUxVbmtub3duRWxlbWVudCgpIGFuZCBpc1Vua25vd24oKSBmb3Igc2FuaXR5IGNoZWNrLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0R3JvdXBFbGVtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdEdyb3VwRWxlbWVudC5jcHAKaW5kZXggMzIxMzg0MmYw
NmI2ZWFkOTFlNjVmYzY4OTU5OGRmYWI5OGY1MjcyZi4uZTA5MjAwMDYyMzdjZTZhMGUyYWU1YjJl
NWM1NTk0ZTRjYzU5MzJkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0
R3JvdXBFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVs
ZW1lbnQuY3BwCkBAIC0zOCwxNSArMzgsMTUgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2lu
ZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCi1pbmxpbmUgSFRNTE9wdEdyb3VwRWxlbWVudDo6SFRN
TE9wdEdyb3VwRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCog
ZG9jdW1lbnQsIEhUTUxGb3JtRWxlbWVudCogZm9ybSkKLSAgICA6IEhUTUxGb3JtQ29udHJvbEVs
ZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQsIGZvcm0pCitpbmxpbmUgSFRNTE9wdEdyb3VwRWxlbWVu
dDo6SFRNTE9wdEdyb3VwRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1
bWVudCogZG9jdW1lbnQpCisgICAgOiBIVE1MRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKIHsK
ICAgICBBU1NFUlQoaGFzVGFnTmFtZShvcHRncm91cFRhZykpOwogfQogCi1QYXNzUmVmUHRyPEhU
TUxPcHRHcm91cEVsZW1lbnQ+IEhUTUxPcHRHcm91cEVsZW1lbnQ6OmNyZWF0ZShjb25zdCBRdWFs
aWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jdW1lbnQsIEhUTUxGb3JtRWxlbWVudCog
Zm9ybSkKK1Bhc3NSZWZQdHI8SFRNTE9wdEdyb3VwRWxlbWVudD4gSFRNTE9wdEdyb3VwRWxlbWVu
dDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2N1bWVu
dCkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEhUTUxPcHRHcm91cEVsZW1lbnQodGFnTmFt
ZSwgZG9jdW1lbnQsIGZvcm0pKTsKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IEhUTUxPcHRHcm91
cEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpKTsKIH0KIAogYm9vbCBIVE1MT3B0R3JvdXBFbGVt
ZW50OjpzdXBwb3J0c0ZvY3VzKCkgY29uc3QKQEAgLTY5LDEyICs2OSwxMiBAQCBjb25zdCBBdG9t
aWNTdHJpbmcmIEhUTUxPcHRHcm91cEVsZW1lbnQ6OmZvcm1Db250cm9sVHlwZSgpIGNvbnN0CiB2
b2lkIEhUTUxPcHRHcm91cEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBh
cnNlciwgTm9kZSogYmVmb3JlQ2hhbmdlLCBOb2RlKiBhZnRlckNoYW5nZSwgaW50IGNoaWxkQ291
bnREZWx0YSkKIHsKICAgICByZWNhbGNTZWxlY3RPcHRpb25zKCk7Ci0gICAgSFRNTEZvcm1Db250
cm9sRWxlbWVudDo6Y2hpbGRyZW5DaGFuZ2VkKGNoYW5nZWRCeVBhcnNlciwgYmVmb3JlQ2hhbmdl
LCBhZnRlckNoYW5nZSwgY2hpbGRDb3VudERlbHRhKTsKKyAgICBIVE1MRWxlbWVudDo6Y2hpbGRy
ZW5DaGFuZ2VkKGNoYW5nZWRCeVBhcnNlciwgYmVmb3JlQ2hhbmdlLCBhZnRlckNoYW5nZSwgY2hp
bGRDb3VudERlbHRhKTsKIH0KIAogdm9pZCBIVE1MT3B0R3JvdXBFbGVtZW50OjpwYXJzZUF0dHJp
YnV0ZShBdHRyaWJ1dGUqIGF0dHIpCiB7Ci0gICAgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6cGFy
c2VBdHRyaWJ1dGUoYXR0cik7CisgICAgSFRNTEVsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGF0dHIp
OwogICAgIHJlY2FsY1NlbGVjdE9wdGlvbnMoKTsKIH0KIApAQCAtOTEsMTMgKzkxLDEzIEBAIHZv
aWQgSFRNTE9wdEdyb3VwRWxlbWVudDo6YXR0YWNoKCkKIHsKICAgICBpZiAocGFyZW50Tm9kZSgp
LT5yZW5kZXJTdHlsZSgpKQogICAgICAgICBzZXRSZW5kZXJTdHlsZShzdHlsZUZvclJlbmRlcmVy
KCkpOwotICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmF0dGFjaCgpOworICAgIEhUTUxFbGVt
ZW50OjphdHRhY2goKTsKIH0KIAogdm9pZCBIVE1MT3B0R3JvdXBFbGVtZW50OjpkZXRhY2goKQog
ewogICAgIG1fc3R5bGUuY2xlYXIoKTsKLSAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50OjpkZXRh
Y2goKTsKKyAgICBIVE1MRWxlbWVudDo6ZGV0YWNoKCk7CiB9CiAKIHZvaWQgSFRNTE9wdEdyb3Vw
RWxlbWVudDo6c2V0UmVuZGVyU3R5bGUoUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gbmV3U3R5bGUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdEdyb3VwRWxlbWVudC5oCmluZGV4IDg1ZDUzMWU0
MzYxYjQxYjZmNGFkMzFjNjA2N2ZmYzhjNTFlYzFjODEuLmJmZDZmZTRkYzM2ZDVlYmQyMzYzMzhh
NzczNmFlYjgyY2MxN2QzMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9w
dEdyb3VwRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdEdyb3VwRWxl
bWVudC5oCkBAIC0yNCwyMiArMjQsMjIgQEAKICNpZm5kZWYgSFRNTE9wdEdyb3VwRWxlbWVudF9o
CiAjZGVmaW5lIEhUTUxPcHRHcm91cEVsZW1lbnRfaAogCi0jaW5jbHVkZSAiSFRNTEZvcm1Db250
cm9sRWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxFbGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICAKIGNsYXNzIEhUTUxTZWxlY3RFbGVtZW50OwogCi1jbGFzcyBIVE1MT3B0R3Jv
dXBFbGVtZW50IDogcHVibGljIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQgeworY2xhc3MgSFRNTE9w
dEdyb3VwRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7CiBwdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8SFRNTE9wdEdyb3VwRWxlbWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5h
bWUmLCBEb2N1bWVudCosIEhUTUxGb3JtRWxlbWVudCopOworICAgIHN0YXRpYyBQYXNzUmVmUHRy
PEhUTUxPcHRHcm91cEVsZW1lbnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1l
bnQqKTsKIAogICAgIEhUTUxTZWxlY3RFbGVtZW50KiBvd25lclNlbGVjdEVsZW1lbnQoKSBjb25z
dDsKICAgICAKICAgICBTdHJpbmcgZ3JvdXBMYWJlbFRleHQoKSBjb25zdDsKIAogcHJpdmF0ZToK
LSAgICBIVE1MT3B0R3JvdXBFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCos
IEhUTUxGb3JtRWxlbWVudCopOworICAgIEhUTUxPcHRHcm91cEVsZW1lbnQoY29uc3QgUXVhbGlm
aWVkTmFtZSYsIERvY3VtZW50Kik7CiAKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
Zm9ybUNvbnRyb2xUeXBlKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzRm9jdXMo
KSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1l
bnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0aW9uRWxlbWVudC5jcHAKaW5kZXgg
ZTFmMTM1ODQ0ODJhYWNiODVkM2E2NTEwY2QwNzJmNzI5YjlkZWY2MS4uNTQyM2ZlYTM0Y2VmN2Mw
MWQ1YWM0M2IwMTg1MzA2MmY5OTU5ZDIwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MT3B0aW9uRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0
aW9uRWxlbWVudC5jcHAKQEAgLTI5OSw3ICsyOTksNyBAQCBTdHJpbmcgSFRNTE9wdGlvbkVsZW1l
bnQ6OnRleHRJbmRlbnRlZFRvUmVzcGVjdEdyb3VwTGFiZWwoKSBjb25zdAogCiBib29sIEhUTUxP
cHRpb25FbGVtZW50OjpkaXNhYmxlZCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG93bkVsZW1lbnRE
aXNhYmxlZCgpIHx8IChwYXJlbnROb2RlKCkgJiYgc3RhdGljX2Nhc3Q8SFRNTEZvcm1Db250cm9s
RWxlbWVudCo+KHBhcmVudE5vZGUoKSktPmRpc2FibGVkKCkpOworICAgIHJldHVybiBvd25FbGVt
ZW50RGlzYWJsZWQoKSB8fCAocGFyZW50Tm9kZSgpICYmIHN0YXRpY19jYXN0PEhUTUxFbGVtZW50
Kj4ocGFyZW50Tm9kZSgpKS0+ZGlzYWJsZWQoKSk7CiB9CiAKIHZvaWQgSFRNTE9wdGlvbkVsZW1l
bnQ6Omluc2VydGVkSW50b1RyZWUoYm9vbCBkZWVwKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4gYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1l
cy5pbgppbmRleCA2MmJhNTAxMDAwYzY3OTg3ZmE0MjVlOGM1YmFiMzhhNTExZDI0ODA0Li5iYTVi
NjAzZGQ0OTZhYjBiODVjM2Y3MWUzZTAwOWNmODEwNTkxY2RhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxUYWdOYW1lcy5pbgpAQCAtOTAsNyArOTAsNyBAQCBub2ZyYW1lcyBpbnRlcmZhY2VOYW1lPUhU
TUxFbGVtZW50CiBub2xheWVyIGludGVyZmFjZU5hbWU9SFRNTEVsZW1lbnQKIG9iamVjdCBjb25z
dHJ1Y3Rvck5lZWRzRm9ybUVsZW1lbnQsIGNvbnN0cnVjdG9yTmVlZHNDcmVhdGVkQnlQYXJzZXIK
IG9sIGludGVyZmFjZU5hbWU9SFRNTE9MaXN0RWxlbWVudAotb3B0Z3JvdXAgaW50ZXJmYWNlTmFt
ZT1IVE1MT3B0R3JvdXBFbGVtZW50LCBjb25zdHJ1Y3Rvck5lZWRzRm9ybUVsZW1lbnQKK29wdGdy
b3VwIGludGVyZmFjZU5hbWU9SFRNTE9wdEdyb3VwRWxlbWVudAogb3B0aW9uIGNvbnN0cnVjdG9y
TmVlZHNGb3JtRWxlbWVudAogb3V0cHV0IGNvbnN0cnVjdG9yTmVlZHNGb3JtRWxlbWVudAogc2hh
ZG93IGludGVyZmFjZU5hbWU9SFRNTFNoYWRvd0VsZW1lbnQsIGNvbmRpdGlvbmFsPVNIQURPV19E
T00K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130072</attachid>
            <date>2012-03-05 00:59:07 -0800</date>
            <delta_ts>2012-03-05 02:29:39 -0800</delta_ts>
            <desc>Patch 3</desc>
            <filename>bug-80234-20120305175905.patch</filename>
            <type>text/plain</type>
            <size>6790</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzIzN2I0ZjA0MDlmMjAy
YzkxYjAwMTIzMTQ2YzcwMWE4MGJkY2FlMS4uYWZlMDIxYWQ4MzljYzZlZmU0MDY1NTgzMzI3ZDk3
MjFhZTlmMGU2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTAzLTA0ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Zvcm1zXSBUaGUg
Im9wdGdyb3VwIiBlbGVtZW50IHNob3VsZCBub3QgYmUgYSBmb3JtLWFzc29jaWF0ZWQgZWxlbWVu
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAyMzQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGNoYW5nZXMgYmFzZSBjbGFzcyBvZiBIVE1MT3B0R3JvdXAgdG8gSFRNTEVsZW1lbnQgZnJv
bQorICAgICAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50IHRvIGF2b2lkIHRoZSAib3B0Z3JvdXAi
IGVsZW1lbnQgaW4gZm9ybS1hc3NvY2lhdGUKKyAgICAgICAgZWxlbWVudHMgY29sbGVjdGlvbi4K
KworICAgICAgICBUaGlzIHBhdGNoIGRvZXNuJ3QgYWZmZWN0IEhUTUxPcHRpb25FbGVtZW50Ojpk
aXNhYmxlZCdzIHN0YXRpY19jYXN0LiBIb3dldmVyLAorICAgICAgICBpdCBkb2Vzbid0IGdvb2Qg
YXQgY29kaW5nIHN0eWxlLiBUaGlzIHBhdGNoIGFsc28gZml4IGl0LgorCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzLiBObyBiZWhhdmlvciBjaGFuZ2VzLgorCisgICAgICAgICogaHRtbC9IVE1MT3B0
R3JvdXBFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxPcHRHcm91cEVsZW1lbnQ6
OkhUTUxPcHRHcm91cEVsZW1lbnQpOiBSZW1vdmUgImZvcm0iIHBhcmFtZXRlci4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxPcHRHcm91cEVsZW1lbnQ6OmNyZWF0ZSk6IFJlbW92ZSAiZm9ybSIgcGFy
YW1ldGVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTE9wdEdyb3VwRWxlbWVudDo6Y2hpbGRyZW5D
aGFuZ2VkKTogUmVwbGFjZSBiYXNlIG1ldGhvZCBjYWxsLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TE9wdEdyb3VwRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUpOiBSZXBsYWNlIGJhc2UgbWV0aG9kIGNh
bGwuCisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0R3JvdXBFbGVtZW50OjphdHRhY2gpOiBSZXBs
YWNlIGJhc2UgbWV0aG9kIGNhbGwuCisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0R3JvdXBFbGVt
ZW50OjpkZXRhY2gpOiBSZXBsYWNlIGJhc2UgbWV0aG9kIGNhbGwuCisgICAgICAgICogaHRtbC9I
VE1MT3B0R3JvdXBFbGVtZW50Lmg6CisgICAgICAgIChIVE1MT3B0R3JvdXBFbGVtZW50KTogQ2hh
bmdlIGJhc2UgY2xhc3MgdG8gSFRNTEVsZW1lbnQuCisgICAgICAgICogaHRtbC9IVE1MT3B0aW9u
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MT3B0aW9uRWxlbWVudDo6ZGlzYWJs
ZWQpOiBSZXBsYWNlIHN0YXRpY19jYXN0PEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqPiB0byBzdGF0
aWNfY2FzdDxIVE1MRWxlbWVudCo+IHdpdGggY2hlY2tpbmcgaXNIVE1MRWxlbWVudC4KKyAgICAg
ICAgKiBodG1sL0hUTUxUYWdOYW1lcy5pbjogUmVtb3ZlICJjb25zdHJ1Y3Rvck5lZWRzRm9ybUVs
ZW1lbnQiIGZvciBub3QgcGFzc2luZyAiZm9ybSIgcGFyYW1ldGVyIGluIEhUTUxFbGVtZW50RmFj
dG9yeS4KKwogMjAxMi0wMy0wNCAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4K
IAogICAgICAgICBXZWJLaXQgbmVlZHMgdG9IVE1MVW5rbm93bkVsZW1lbnQoKSBhbmQgaXNVbmtu
b3duKCkgZm9yIHNhbml0eSBjaGVjay4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE9wdEdyb3VwRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91
cEVsZW1lbnQuY3BwCmluZGV4IDMyMTM4NDJmMDZiNmVhZDkxZTY1ZmM2ODk1OThkZmFiOThmNTI3
MmYuLmUwOTIwMDA2MjM3Y2U2YTBlMmFlNWIyZTVjNTU5NGU0Y2M1OTMyZGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdEdyb3VwRWxlbWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MT3B0R3JvdXBFbGVtZW50LmNwcApAQCAtMzgsMTUgKzM4LDE1IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIAotaW5s
aW5lIEhUTUxPcHRHcm91cEVsZW1lbnQ6OkhUTUxPcHRHcm91cEVsZW1lbnQoY29uc3QgUXVhbGlm
aWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50LCBIVE1MRm9ybUVsZW1lbnQqIGZv
cm0pCi0gICAgOiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50LCBmb3Jt
KQoraW5saW5lIEhUTUxPcHRHcm91cEVsZW1lbnQ6OkhUTUxPcHRHcm91cEVsZW1lbnQoY29uc3Qg
UXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQorICAgIDogSFRNTEVs
ZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCiB7CiAgICAgQVNTRVJUKGhhc1RhZ05hbWUob3B0Z3Jv
dXBUYWcpKTsKIH0KIAotUGFzc1JlZlB0cjxIVE1MT3B0R3JvdXBFbGVtZW50PiBIVE1MT3B0R3Jv
dXBFbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQq
IGRvY3VtZW50LCBIVE1MRm9ybUVsZW1lbnQqIGZvcm0pCitQYXNzUmVmUHRyPEhUTUxPcHRHcm91
cEVsZW1lbnQ+IEhUTUxPcHRHcm91cEVsZW1lbnQ6OmNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1l
JiB0YWdOYW1lLCBEb2N1bWVudCogZG9jdW1lbnQpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5l
dyBIVE1MT3B0R3JvdXBFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50LCBmb3JtKSk7CisgICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyBIVE1MT3B0R3JvdXBFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KSk7
CiB9CiAKIGJvb2wgSFRNTE9wdEdyb3VwRWxlbWVudDo6c3VwcG9ydHNGb2N1cygpIGNvbnN0CkBA
IC02OSwxMiArNjksMTIgQEAgY29uc3QgQXRvbWljU3RyaW5nJiBIVE1MT3B0R3JvdXBFbGVtZW50
Ojpmb3JtQ29udHJvbFR5cGUoKSBjb25zdAogdm9pZCBIVE1MT3B0R3JvdXBFbGVtZW50OjpjaGls
ZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIsIE5vZGUqIGJlZm9yZUNoYW5nZSwgTm9k
ZSogYWZ0ZXJDaGFuZ2UsIGludCBjaGlsZENvdW50RGVsdGEpCiB7CiAgICAgcmVjYWxjU2VsZWN0
T3B0aW9ucygpOwotICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChj
aGFuZ2VkQnlQYXJzZXIsIGJlZm9yZUNoYW5nZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0
YSk7CisgICAgSFRNTEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2VkQnlQYXJzZXIsIGJl
Zm9yZUNoYW5nZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0YSk7CiB9CiAKIHZvaWQgSFRN
TE9wdEdyb3VwRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoQXR0cmlidXRlKiBhdHRyKQogewotICAg
IEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGF0dHIpOworICAgIEhUTUxF
bGVtZW50OjpwYXJzZUF0dHJpYnV0ZShhdHRyKTsKICAgICByZWNhbGNTZWxlY3RPcHRpb25zKCk7
CiB9CiAKQEAgLTkxLDEzICs5MSwxMyBAQCB2b2lkIEhUTUxPcHRHcm91cEVsZW1lbnQ6OmF0dGFj
aCgpCiB7CiAgICAgaWYgKHBhcmVudE5vZGUoKS0+cmVuZGVyU3R5bGUoKSkKICAgICAgICAgc2V0
UmVuZGVyU3R5bGUoc3R5bGVGb3JSZW5kZXJlcigpKTsKLSAgICBIVE1MRm9ybUNvbnRyb2xFbGVt
ZW50OjphdHRhY2goKTsKKyAgICBIVE1MRWxlbWVudDo6YXR0YWNoKCk7CiB9CiAKIHZvaWQgSFRN
TE9wdEdyb3VwRWxlbWVudDo6ZGV0YWNoKCkKIHsKICAgICBtX3N0eWxlLmNsZWFyKCk7Ci0gICAg
SFRNTEZvcm1Db250cm9sRWxlbWVudDo6ZGV0YWNoKCk7CisgICAgSFRNTEVsZW1lbnQ6OmRldGFj
aCgpOwogfQogCiB2b2lkIEhUTUxPcHRHcm91cEVsZW1lbnQ6OnNldFJlbmRlclN0eWxlKFBhc3NS
ZWZQdHI8UmVuZGVyU3R5bGU+IG5ld1N0eWxlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MT3B0R3JvdXBFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRH
cm91cEVsZW1lbnQuaAppbmRleCA4NWQ1MzFlNDM2MWI0MWI2ZjRhZDMxYzYwNjdmZmM4YzUxZWMx
YzgxLi5iZmQ2ZmU0ZGMzNmQ1ZWJkMjM2MzM4YTc3MzZhZWI4MmNjMTdkMzI5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaApAQCAtMjQsMjIgKzI0LDIyIEBACiAj
aWZuZGVmIEhUTUxPcHRHcm91cEVsZW1lbnRfaAogI2RlZmluZSBIVE1MT3B0R3JvdXBFbGVtZW50
X2gKIAotI2luY2x1ZGUgIkhUTUxGb3JtQ29udHJvbEVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1M
RWxlbWVudC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgCiBjbGFzcyBIVE1MU2VsZWN0
RWxlbWVudDsKIAotY2xhc3MgSFRNTE9wdEdyb3VwRWxlbWVudCA6IHB1YmxpYyBIVE1MRm9ybUNv
bnRyb2xFbGVtZW50IHsKK2NsYXNzIEhUTUxPcHRHcm91cEVsZW1lbnQgOiBwdWJsaWMgSFRNTEVs
ZW1lbnQgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxPcHRHcm91cEVsZW1l
bnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1l
bnQqKTsKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MT3B0R3JvdXBFbGVtZW50PiBjcmVhdGUo
Y29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Kik7CiAKICAgICBIVE1MU2VsZWN0RWxlbWVu
dCogb3duZXJTZWxlY3RFbGVtZW50KCkgY29uc3Q7CiAgICAgCiAgICAgU3RyaW5nIGdyb3VwTGFi
ZWxUZXh0KCkgY29uc3Q7CiAKIHByaXZhdGU6Ci0gICAgSFRNTE9wdEdyb3VwRWxlbWVudChjb25z
dCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqLCBIVE1MRm9ybUVsZW1lbnQqKTsKKyAgICBIVE1M
T3B0R3JvdXBFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCopOwogCiAgICAg
dmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1Db250cm9sVHlwZSgpIGNvbnN0OwogICAg
IHZpcnR1YWwgYm9vbCBzdXBwb3J0c0ZvY3VzKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE9wdGlvbkVsZW1lbnQuY3BwCmluZGV4IGUxZjEzNTg0NDgyYWFjYjg1ZDNhNjUxMGNkMDcy
ZjcyOWI5ZGVmNjEuLjE2OTZlOWJlYzRmYzcyZGMwOThmM2EzZjFiYTM4MTA4ZDQwZjk0Y2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuY3BwCkBAIC0yOTksNyArMjk5
LDcgQEAgU3RyaW5nIEhUTUxPcHRpb25FbGVtZW50Ojp0ZXh0SW5kZW50ZWRUb1Jlc3BlY3RHcm91
cExhYmVsKCkgY29uc3QKIAogYm9vbCBIVE1MT3B0aW9uRWxlbWVudDo6ZGlzYWJsZWQoKSBjb25z
dAogewotICAgIHJldHVybiBvd25FbGVtZW50RGlzYWJsZWQoKSB8fCAocGFyZW50Tm9kZSgpICYm
IHN0YXRpY19jYXN0PEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqPihwYXJlbnROb2RlKCkpLT5kaXNh
YmxlZCgpKTsKKyAgICByZXR1cm4gb3duRWxlbWVudERpc2FibGVkKCkgfHwgKHBhcmVudE5vZGUo
KSAmJiBwYXJlbnROb2RlKCktPmlzSFRNTEVsZW1lbnQoKSAmJiBzdGF0aWNfY2FzdDxIVE1MRWxl
bWVudCo+KHBhcmVudE5vZGUoKSktPmRpc2FibGVkKCkpOwogfQogCiB2b2lkIEhUTUxPcHRpb25F
bGVtZW50OjppbnNlcnRlZEludG9UcmVlKGJvb2wgZGVlcCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFRhZ05hbWVzLmluIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFn
TmFtZXMuaW4KaW5kZXggNjJiYTUwMTAwMGM2Nzk4N2ZhNDI1ZThjNWJhYjM4YTUxMWQyNDgwNC4u
YmE1YjYwM2RkNDk2YWIwYjg1YzNmNzFlM2UwMDljZjgxMDU5MWNkYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFnTmFtZXMuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MVGFnTmFtZXMuaW4KQEAgLTkwLDcgKzkwLDcgQEAgbm9mcmFtZXMgaW50ZXJmYWNlTmFt
ZT1IVE1MRWxlbWVudAogbm9sYXllciBpbnRlcmZhY2VOYW1lPUhUTUxFbGVtZW50CiBvYmplY3Qg
Y29uc3RydWN0b3JOZWVkc0Zvcm1FbGVtZW50LCBjb25zdHJ1Y3Rvck5lZWRzQ3JlYXRlZEJ5UGFy
c2VyCiBvbCBpbnRlcmZhY2VOYW1lPUhUTUxPTGlzdEVsZW1lbnQKLW9wdGdyb3VwIGludGVyZmFj
ZU5hbWU9SFRNTE9wdEdyb3VwRWxlbWVudCwgY29uc3RydWN0b3JOZWVkc0Zvcm1FbGVtZW50Citv
cHRncm91cCBpbnRlcmZhY2VOYW1lPUhUTUxPcHRHcm91cEVsZW1lbnQKIG9wdGlvbiBjb25zdHJ1
Y3Rvck5lZWRzRm9ybUVsZW1lbnQKIG91dHB1dCBjb25zdHJ1Y3Rvck5lZWRzRm9ybUVsZW1lbnQK
IHNoYWRvdyBpbnRlcmZhY2VOYW1lPUhUTUxTaGFkb3dFbGVtZW50LCBjb25kaXRpb25hbD1TSEFE
T1dfRE9NCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>