<?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>65662</bug_id>
          
          <creation_ts>2011-08-03 20:42:43 -0700</creation_ts>
          <short_desc>Implement string based properties in CSSStyleApplyProperty.</short_desc>
          <delta_ts>2011-08-09 18:44:26 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>1</everconfirmed>
          <reporter name="Luke Macpherson">macpherson</reporter>
          <assigned_to name="Luke Macpherson">macpherson</assigned_to>
          <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>macpherson</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>446303</commentid>
    <comment_count>0</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-08-03 20:42:43 -0700</bug_when>
    <thetext>Implement string based properties in CSSStyleApplyProperty.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>446306</commentid>
    <comment_count>1</comment_count>
      <attachid>102871</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-08-03 20:52:04 -0700</bug_when>
    <thetext>Created attachment 102871
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>447311</commentid>
    <comment_count>2</comment_count>
      <attachid>102871</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-08-05 11:34:20 -0700</bug_when>
    <thetext>Comment on attachment 102871
Patch

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

Looks OK, but could be improved, I think.

&gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:273
&gt; -enum LengthAuto {AutoDisabled = 0, AutoEnabled = 1};
&gt; -enum LengthIntrinsic {IntrinsicDisabled = 0, IntrinsicEnabled = 1};
&gt; -enum LengthMinIntrinsic {MinIntrinsicDisabled = 0, MinIntrinsicEnabled = 1};
&gt; -enum LengthNone {NoneDisabled = 0, NoneEnabled = 1};
&gt; -enum LengthUndefined {UndefinedDisabled = 0, UndefinedEnabled = 1};
&gt; -enum LengthFlexDirection {FlexDirectionDisabled = 0, FlexWidth = 1, FlexHeight};
&gt; +enum LengthAuto {AutoDisabled = 0, AutoEnabled};
&gt; +enum LengthIntrinsic {IntrinsicDisabled = 0, IntrinsicEnabled};
&gt; +enum LengthMinIntrinsic {MinIntrinsicDisabled = 0, MinIntrinsicEnabled};
&gt; +enum LengthNone {NoneDisabled = 0, NoneEnabled};
&gt; +enum LengthUndefined {UndefinedDisabled = 0, UndefinedEnabled};
&gt; +enum LengthFlexDirection {FlexDirectionDisabled = 0, FlexWidth, FlexHeight};

I don’t understand this change. Why are the &quot;= 0&quot; good and the &quot;= 1&quot; bad? What does this have to do with the rest of the patch.

&gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:335
&gt; +enum StringMapIdentToNull {NothingMapsToNull = 0, MapNoneToNull, MapAutoToNull};

Normal WebKit formatting puts space after the { and before the }.

Why the explicit &quot;= 0&quot;?

Why abbreviate the word identifier to ident? I find it easier to read words than word fragments.

The name of this type is hard for me to understand. What is a &quot;string map ident to null&quot;? I think it needs a word like &quot;policy&quot; or &quot;behavior&quot; in the name to make clear what the type is.

&gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:355
&gt; +    virtual void applyValue(CSSStyleSelector* selector, CSSValue* value) const
&gt; +    {
&gt; +        if (!value-&gt;isPrimitiveValue())
&gt; +            return;
&gt; +        CSSPrimitiveValue* primitiveValue = static_cast&lt;CSSPrimitiveValue*&gt;(value);
&gt; +        if ((mapIdentToNull == MapNoneToNull &amp;&amp; primitiveValue-&gt;getIdent() == CSSValueNone)
&gt; +            || (mapIdentToNull == MapAutoToNull &amp;&amp; primitiveValue-&gt;getIdent() == CSSValueAuto))
&gt; +            setValue(selector-&gt;style(), nullAtom);
&gt; +        else
&gt; +            setValue(selector-&gt;style(), primitiveValue-&gt;getStringValue());
&gt; +    }

I’d rather see this function that won’t be inlined defined out of line rather than indented inside the class definition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448914</commentid>
    <comment_count>3</comment_count>
      <attachid>102871</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-08-09 17:51:11 -0700</bug_when>
    <thetext>Comment on attachment 102871
Patch

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

&gt;&gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:273
&gt;&gt; +enum LengthFlexDirection {FlexDirectionDisabled = 0, FlexWidth, FlexHeight};
&gt; 
&gt; I don’t understand this change. Why are the &quot;= 0&quot; good and the &quot;= 1&quot; bad? What does this have to do with the rest of the patch.

The idea here is to make explicit the result of cast to booleans. The 1s are not necessary as any non-zero value will do, while the 0s help communicate that the order of the elements, and the result of casting to boolean are important.

This is just a change in passing, not related to this CL other than maintaining consistency with the newly added enums.

&gt;&gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:335

&gt; 
&gt; Normal WebKit formatting puts space after the { and before the }.
&gt; 
&gt; Why the explicit &quot;= 0&quot;?
&gt; 
&gt; Why abbreviate the word identifier to ident? I find it easier to read words than word fragments.
&gt; 
&gt; The name of this type is hard for me to understand. What is a &quot;string map ident to null&quot;? I think it needs a word like &quot;policy&quot; or &quot;behavior&quot; in the name to make clear what the type is.

1) spaces around braces fixed.
2) see rationale above.
3) good idea. done.

&gt; Source/WebCore/css/CSSStyleSelector.cpp:-4783
&gt; -    }

I have reverted changes to the CSSPropertyWebkitLocale property because they conflict with code that has just gone in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448927</commentid>
    <comment_count>4</comment_count>
      <attachid>103427</attachid>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-08-09 18:18:37 -0700</bug_when>
    <thetext>Created attachment 103427
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448933</commentid>
    <comment_count>5</comment_count>
      <attachid>103427</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-09 18:44:22 -0700</bug_when>
    <thetext>Comment on attachment 103427
Patch for landing

Clearing flags on attachment: 103427

Committed r92742: &lt;http://trac.webkit.org/changeset/92742&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>448934</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-09 18:44:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>102871</attachid>
            <date>2011-08-03 20:52:04 -0700</date>
            <delta_ts>2011-08-09 18:18:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-65662-20110804135202.patch</filename>
            <type>text/plain</type>
            <size>7899</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDkyMzQ0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTEtMDgtMDMgIEx1a2UgTWFj
cGhlcnNvbiAgIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXBsZW1lbnQg
c3RyaW5nIGJhc2VkIHByb3BlcnRpZXMgaW4gQ1NTU3R5bGVBcHBseVByb3BlcnR5LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjU2NjIKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgLyBy
ZWZhY3RvcmluZyBvbmx5LgorCisgICAgICAgICogY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBseVByb3BlcnR5U3RyaW5nOjpBcHBseVByb3BlcnR5
U3RyaW5nKToKKyAgICAgICAgQWRkZWQgY2xhc3MgdG8gaGFuZGxlIHN0cmluZyBiYXNlZCBwcm9w
ZXJ0aWVzLgorICAgICAgICAoV2ViQ29yZTo6QXBwbHlQcm9wZXJ0eVN0cmluZzo6YXBwbHlWYWx1
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZUFwcGx5UHJvcGVydHk6OkNTU1N0eWxlQXBw
bHlQcm9wZXJ0eSk6CisgICAgICAgIEFkZCBpbml0aWFsaXplcnMgZm9yIENTU1Byb3BlcnR5V2Vi
a2l0SGlnaGxpZ2h0LCBDU1NQcm9wZXJ0eVdlYmtpdEh5cGhlbmF0ZUNoYXJhY3RlciBhbmQgQ1NT
UHJvcGVydHlXZWJraXRMb2NhbGUuCisgICAgICAgICogY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0eSk6Cisg
ICAgICAgIFJlbW92ZSBleGlzdGluZyBpbXBsZW1lbnRhdGlvbnMgZm9yIENTU1Byb3BlcnR5V2Vi
a2l0SGlnaGxpZ2h0LCBDU1NQcm9wZXJ0eVdlYmtpdEh5cGhlbmF0ZUNoYXJhY3RlciBhbmQgQ1NT
UHJvcGVydHlXZWJraXRMb2NhbGUuCisKIDIwMTEtMDgtMDMgIFNhaWxlc2ggQWdyYXdhbCAgPHNh
aWxAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENocm9taXVtIE1hYzogTWFrZSBTY3JvbGxiYXJP
dmVybGF5VXRpbGl0aWVzQ2hyb21pdW1NYWMuaCBjKysgY29tcGF0aWJsZQpJbmRleDogU291cmNl
L1dlYkNvcmUvY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHAJKHJldmlzaW9uIDkyMzQ0
KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI2NSwxMiArMjY1LDEyIEBAIHByaXZhdGU6CiAgICAgfQogfTsKIAotZW51
bSBMZW5ndGhBdXRvIHtBdXRvRGlzYWJsZWQgPSAwLCBBdXRvRW5hYmxlZCA9IDF9OwotZW51bSBM
ZW5ndGhJbnRyaW5zaWMge0ludHJpbnNpY0Rpc2FibGVkID0gMCwgSW50cmluc2ljRW5hYmxlZCA9
IDF9OwotZW51bSBMZW5ndGhNaW5JbnRyaW5zaWMge01pbkludHJpbnNpY0Rpc2FibGVkID0gMCwg
TWluSW50cmluc2ljRW5hYmxlZCA9IDF9OwotZW51bSBMZW5ndGhOb25lIHtOb25lRGlzYWJsZWQg
PSAwLCBOb25lRW5hYmxlZCA9IDF9OwotZW51bSBMZW5ndGhVbmRlZmluZWQge1VuZGVmaW5lZERp
c2FibGVkID0gMCwgVW5kZWZpbmVkRW5hYmxlZCA9IDF9OwotZW51bSBMZW5ndGhGbGV4RGlyZWN0
aW9uIHtGbGV4RGlyZWN0aW9uRGlzYWJsZWQgPSAwLCBGbGV4V2lkdGggPSAxLCBGbGV4SGVpZ2h0
fTsKK2VudW0gTGVuZ3RoQXV0byB7QXV0b0Rpc2FibGVkID0gMCwgQXV0b0VuYWJsZWR9OworZW51
bSBMZW5ndGhJbnRyaW5zaWMge0ludHJpbnNpY0Rpc2FibGVkID0gMCwgSW50cmluc2ljRW5hYmxl
ZH07CitlbnVtIExlbmd0aE1pbkludHJpbnNpYyB7TWluSW50cmluc2ljRGlzYWJsZWQgPSAwLCBN
aW5JbnRyaW5zaWNFbmFibGVkfTsKK2VudW0gTGVuZ3RoTm9uZSB7Tm9uZURpc2FibGVkID0gMCwg
Tm9uZUVuYWJsZWR9OworZW51bSBMZW5ndGhVbmRlZmluZWQge1VuZGVmaW5lZERpc2FibGVkID0g
MCwgVW5kZWZpbmVkRW5hYmxlZH07CitlbnVtIExlbmd0aEZsZXhEaXJlY3Rpb24ge0ZsZXhEaXJl
Y3Rpb25EaXNhYmxlZCA9IDAsIEZsZXhXaWR0aCwgRmxleEhlaWdodH07CiB0ZW1wbGF0ZSA8TGVu
Z3RoQXV0byBhdXRvRW5hYmxlZCA9IEF1dG9EaXNhYmxlZCwKICAgICAgICAgICBMZW5ndGhJbnRy
aW5zaWMgaW50cmluc2ljRW5hYmxlZCA9IEludHJpbnNpY0Rpc2FibGVkLAogICAgICAgICAgIExl
bmd0aE1pbkludHJpbnNpYyBtaW5JbnRyaW5zaWNFbmFibGVkID0gTWluSW50cmluc2ljRGlzYWJs
ZWQsCkBAIC0zMzIsNiArMzMyLDI5IEBAIHByaXZhdGU6CiAgICAgfQogfTsKIAorZW51bSBTdHJp
bmdNYXBJZGVudFRvTnVsbCB7Tm90aGluZ01hcHNUb051bGwgPSAwLCBNYXBOb25lVG9OdWxsLCBN
YXBBdXRvVG9OdWxsfTsKK3RlbXBsYXRlIDxTdHJpbmdNYXBJZGVudFRvTnVsbCBtYXBJZGVudFRv
TnVsbCA9IE5vdGhpbmdNYXBzVG9OdWxsPgorY2xhc3MgQXBwbHlQcm9wZXJ0eVN0cmluZyA6IHB1
YmxpYyBBcHBseVByb3BlcnR5RGVmYXVsdEJhc2U8Y29uc3QgQXRvbWljU3RyaW5nJj4geworcHVi
bGljOgorICAgIEFwcGx5UHJvcGVydHlTdHJpbmcoR2V0dGVyRnVuY3Rpb24gZ2V0dGVyLCBTZXR0
ZXJGdW5jdGlvbiBzZXR0ZXIsIEluaXRpYWxGdW5jdGlvbiBpbml0aWFsKQorICAgICAgICA6IEFw
cGx5UHJvcGVydHlEZWZhdWx0QmFzZTxjb25zdCBBdG9taWNTdHJpbmcmPihnZXR0ZXIsIHNldHRl
ciwgaW5pdGlhbCkKKyAgICB7CisgICAgfQorCitwcml2YXRlOgorICAgIHZpcnR1YWwgdm9pZCBh
cHBseVZhbHVlKENTU1N0eWxlU2VsZWN0b3IqIHNlbGVjdG9yLCBDU1NWYWx1ZSogdmFsdWUpIGNv
bnN0CisgICAgeworICAgICAgICBpZiAoIXZhbHVlLT5pc1ByaW1pdGl2ZVZhbHVlKCkpCisgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1
ZSA9IHN0YXRpY19jYXN0PENTU1ByaW1pdGl2ZVZhbHVlKj4odmFsdWUpOworICAgICAgICBpZiAo
KG1hcElkZW50VG9OdWxsID09IE1hcE5vbmVUb051bGwgJiYgcHJpbWl0aXZlVmFsdWUtPmdldElk
ZW50KCkgPT0gQ1NTVmFsdWVOb25lKQorICAgICAgICAgICAgfHwgKG1hcElkZW50VG9OdWxsID09
IE1hcEF1dG9Ub051bGwgJiYgcHJpbWl0aXZlVmFsdWUtPmdldElkZW50KCkgPT0gQ1NTVmFsdWVB
dXRvKSkKKyAgICAgICAgICAgIHNldFZhbHVlKHNlbGVjdG9yLT5zdHlsZSgpLCBudWxsQXRvbSk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNldFZhbHVlKHNlbGVjdG9yLT5zdHlsZSgpLCBw
cmltaXRpdmVWYWx1ZS0+Z2V0U3RyaW5nVmFsdWUoKSk7CisgICAgfQorfTsKKwogY2xhc3MgQXBw
bHlQcm9wZXJ0eUJvcmRlclJhZGl1cyA6IHB1YmxpYyBBcHBseVByb3BlcnR5RGVmYXVsdEJhc2U8
TGVuZ3RoU2l6ZT4gewogcHVibGljOgogICAgIEFwcGx5UHJvcGVydHlCb3JkZXJSYWRpdXMoR2V0
dGVyRnVuY3Rpb24gZ2V0dGVyLCBTZXR0ZXJGdW5jdGlvbiBzZXR0ZXIsIEluaXRpYWxGdW5jdGlv
biBpbml0aWFsKQpAQCAtOTMxLDYgKzk1NCwxMSBAQCBDU1NTdHlsZUFwcGx5UHJvcGVydHk6OkNT
U1N0eWxlQXBwbHlQcm9wCiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0
Q29sdW1uR2FwLCBuZXcgQXBwbHlQcm9wZXJ0eUF1dG88ZmxvYXQsIENvbXB1dGVMZW5ndGgsIENT
U1ZhbHVlTm9ybWFsPigmUmVuZGVyU3R5bGU6OmNvbHVtbkdhcCwgJlJlbmRlclN0eWxlOjpzZXRD
b2x1bW5HYXAsICZSZW5kZXJTdHlsZTo6aGFzTm9ybWFsQ29sdW1uR2FwLCAmUmVuZGVyU3R5bGU6
OnNldEhhc05vcm1hbENvbHVtbkdhcCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9w
ZXJ0eVdlYmtpdENvbHVtbldpZHRoLCBuZXcgQXBwbHlQcm9wZXJ0eUF1dG88ZmxvYXQsIENvbXB1
dGVMZW5ndGg+KCZSZW5kZXJTdHlsZTo6Y29sdW1uV2lkdGgsICZSZW5kZXJTdHlsZTo6c2V0Q29s
dW1uV2lkdGgsICZSZW5kZXJTdHlsZTo6aGFzQXV0b0NvbHVtbldpZHRoLCAmUmVuZGVyU3R5bGU6
OnNldEhhc0F1dG9Db2x1bW5XaWR0aCkpOwogCisgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1By
b3BlcnR5V2Via2l0SGlnaGxpZ2h0LCBuZXcgQXBwbHlQcm9wZXJ0eVN0cmluZzxNYXBOb25lVG9O
dWxsPigmUmVuZGVyU3R5bGU6OmhpZ2hsaWdodCwgJlJlbmRlclN0eWxlOjpzZXRIaWdobGlnaHQs
ICZSZW5kZXJTdHlsZTo6aW5pdGlhbEhpZ2hsaWdodCkpOworICAgIHNldFByb3BlcnR5SGFuZGxl
cihDU1NQcm9wZXJ0eVdlYmtpdEh5cGhlbmF0ZUNoYXJhY3RlciwgbmV3IEFwcGx5UHJvcGVydHlT
dHJpbmc8TWFwQXV0b1RvTnVsbD4oJlJlbmRlclN0eWxlOjpoeXBoZW5hdGlvblN0cmluZywgJlJl
bmRlclN0eWxlOjpzZXRIeXBoZW5hdGlvblN0cmluZywgJlJlbmRlclN0eWxlOjppbml0aWFsSHlw
aGVuYXRpb25TdHJpbmcpKTsKKyAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJr
aXRMb2NhbGUsIG5ldyBBcHBseVByb3BlcnR5U3RyaW5nPE1hcEF1dG9Ub051bGw+KCZSZW5kZXJT
dHlsZTo6bG9jYWxlLCAmUmVuZGVyU3R5bGU6OnNldExvY2FsZSwgJlJlbmRlclN0eWxlOjppbml0
aWFsTG9jYWxlKSk7CisKKwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtp
dFRleHRDb21iaW5lLCBuZXcgQXBwbHlQcm9wZXJ0eURlZmF1bHQ8VGV4dENvbWJpbmU+KCZSZW5k
ZXJTdHlsZTo6dGV4dENvbWJpbmUsICZSZW5kZXJTdHlsZTo6c2V0VGV4dENvbWJpbmUsICZSZW5k
ZXJTdHlsZTo6aW5pdGlhbFRleHRDb21iaW5lKSk7CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENT
U1Byb3BlcnR5V2Via2l0VGV4dEVtcGhhc2lzUG9zaXRpb24sIG5ldyBBcHBseVByb3BlcnR5RGVm
YXVsdDxUZXh0RW1waGFzaXNQb3NpdGlvbj4oJlJlbmRlclN0eWxlOjp0ZXh0RW1waGFzaXNQb3Np
dGlvbiwgJlJlbmRlclN0eWxlOjpzZXRUZXh0RW1waGFzaXNQb3NpdGlvbiwgJlJlbmRlclN0eWxl
Ojppbml0aWFsVGV4dEVtcGhhc2lzUG9zaXRpb24pKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIo
Q1NTUHJvcGVydHlXZWJraXRUZXh0RW1waGFzaXNTdHlsZSwgbmV3IEFwcGx5UHJvcGVydHlUZXh0
RW1waGFzaXNTdHlsZSgpKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVj
dG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rv
ci5jcHAJKHJldmlzaW9uIDkyMzQ0KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2Vs
ZWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NzM4LDI1ICs0NzM4LDkgQEAgdm9pZCBDU1NT
dHlsZVNlbGVjdG9yOjphcHBseVByb3BlcnR5KGludAogICAgICAgICAgICAgbV9zdHlsZS0+c2V0
TGluZUNsYW1wKExpbmVDbGFtcFZhbHVlKHByaW1pdGl2ZVZhbHVlLT5nZXRJbnRWYWx1ZShDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTX1BFUkNFTlRBR0UpLCBMaW5lQ2xhbXBQZXJjZW50YWdlKSk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEhpZ2hsaWdo
dDogewotICAgICAgICBIQU5ETEVfSU5IRVJJVF9BTkRfSU5JVElBTChoaWdobGlnaHQsIEhpZ2hs
aWdodCk7Ci0gICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+Z2V0SWRlbnQoKSA9PSBDU1NWYWx1
ZU5vbmUpCi0gICAgICAgICAgICBtX3N0eWxlLT5zZXRIaWdobGlnaHQobnVsbEF0b20pOwotICAg
ICAgICBlbHNlCi0gICAgICAgICAgICBtX3N0eWxlLT5zZXRIaWdobGlnaHQocHJpbWl0aXZlVmFs
dWUtPmdldFN0cmluZ1ZhbHVlKCkpOwotICAgICAgICByZXR1cm47Ci0gICAgfQogICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRIeXBoZW5zOgogICAgICAgICBIQU5ETEVfSU5IRVJJVF9BTkRfSU5J
VElBTF9BTkRfUFJJTUlUSVZFKGh5cGhlbnMsIEh5cGhlbnMpOwogICAgICAgICByZXR1cm47Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEh5cGhlbmF0ZUNoYXJhY3RlcjogewotICAgICAgICBI
QU5ETEVfSU5IRVJJVF9BTkRfSU5JVElBTChoeXBoZW5hdGlvblN0cmluZywgSHlwaGVuYXRpb25T
dHJpbmcpOwotICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmdldElkZW50KCkgPT0gQ1NTVmFs
dWVBdXRvKQotICAgICAgICAgICAgbV9zdHlsZS0+c2V0SHlwaGVuYXRpb25TdHJpbmcobnVsbEF0
b20pOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBtX3N0eWxlLT5zZXRIeXBoZW5hdGlvblN0
cmluZyhwcmltaXRpdmVWYWx1ZS0+Z2V0U3RyaW5nVmFsdWUoKSk7Ci0gICAgICAgIHJldHVybjsK
LSAgICB9CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEh5cGhlbmF0ZUxpbWl0QWZ0ZXI6IHsK
ICAgICAgICAgSEFORExFX0lOSEVSSVRfQU5EX0lOSVRJQUwoaHlwaGVuYXRpb25MaW1pdEFmdGVy
LCBIeXBoZW5hdGlvbkxpbWl0QWZ0ZXIpOwogICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmdl
dElkZW50KCkgPT0gQ1NTVmFsdWVBdXRvKQpAQCAtNDc3MywxNCArNDc1Nyw2IEBAIHZvaWQgQ1NT
U3R5bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0eShpbnQKICAgICAgICAgICAgIG1fc3R5bGUtPnNl
dEh5cGhlbmF0aW9uTGltaXRCZWZvcmUocHJpbWl0aXZlVmFsdWUtPmdldFZhbHVlPHNob3J0PihD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikpOwogICAgICAgICByZXR1cm47CiAgICAgfQot
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRMb2NhbGU6IHsKLSAgICAgICAgSEFORExFX0lOSEVS
SVRfQU5EX0lOSVRJQUwobG9jYWxlLCBMb2NhbGUpOwotICAgICAgICBpZiAocHJpbWl0aXZlVmFs
dWUtPmdldElkZW50KCkgPT0gQ1NTVmFsdWVBdXRvKQotICAgICAgICAgICAgbV9zdHlsZS0+c2V0
TG9jYWxlKG51bGxBdG9tKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgbV9zdHlsZS0+c2V0
TG9jYWxlKHByaW1pdGl2ZVZhbHVlLT5nZXRTdHJpbmdWYWx1ZSgpKTsKLSAgICAgICAgcmV0dXJu
OwotICAgIH0KICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyRml0OiB7CiAgICAgICAg
IEhBTkRMRV9JTkhFUklUX0FORF9JTklUSUFMKGJvcmRlckZpdCwgQm9yZGVyRml0KTsKICAgICAg
ICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRJZGVudCgpID09IENTU1ZhbHVlQm9yZGVyKQpAQCAt
NTE5NCw2ICs1MTcwLDkgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphcHBseVByb3BlcnR5KGlu
dAogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRDb2x1bW5Db3VudDoKICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0Q29sdW1uR2FwOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRDb2x1bW5X
aWR0aDoKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0SGlnaGxpZ2h0OgorICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRIeXBoZW5hdGVDaGFyYWN0ZXI6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdExvY2FsZToKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VGV4dENvbWJpbmU6CiAgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRleHRFbXBoYXNpc1Bvc2l0aW9uOgogICAgIGNhc2UgQ1NT
UHJvcGVydHlXZWJraXRUZXh0RW1waGFzaXNTdHlsZToK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>103427</attachid>
            <date>2011-08-09 18:18:37 -0700</date>
            <delta_ts>2011-08-09 18:44:22 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-65662-20110810111835.patch</filename>
            <type>text/plain</type>
            <size>6963</size>
            <attacher name="Luke Macpherson">macpherson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDkyNzMyKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTEtMDgtMDkgIEx1a2UgTWFj
cGhlcnNvbiAgIDxtYWNwaGVyc29uQGNocm9taXVtLm9yZz4KKworICAgICAgICBJbXBsZW1lbnQg
c3RyaW5nIGJhc2VkIHByb3BlcnRpZXMgaW4gQ1NTU3R5bGVBcHBseVByb3BlcnR5LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjU2NjIKKworICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBObyBuZXcgdGVzdHMgLyByZWZh
Y3RvcmluZyBvbmx5LgorCisgICAgICAgICogY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpBcHBseVByb3BlcnR5U3RyaW5nOjpBcHBseVByb3BlcnR5U3Ry
aW5nKToKKyAgICAgICAgQWRkZWQgY2xhc3MgdG8gaGFuZGxlIHN0cmluZyBiYXNlZCBwcm9wZXJ0
aWVzLgorICAgICAgICAoV2ViQ29yZTo6QXBwbHlQcm9wZXJ0eVN0cmluZzo6YXBwbHlWYWx1ZSk6
CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZUFwcGx5UHJvcGVydHk6OkNTU1N0eWxlQXBwbHlQ
cm9wZXJ0eSk6CisgICAgICAgIEFkZCBpbml0aWFsaXplcnMgZm9yIENTU1Byb3BlcnR5V2Via2l0
SGlnaGxpZ2h0IGFuZCBDU1NQcm9wZXJ0eVdlYmtpdEh5cGhlbmF0ZUNoYXJhY3Rlci4KKyAgICAg
ICAgKiBjc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHls
ZVNlbGVjdG9yOjphcHBseVByb3BlcnR5KToKKyAgICAgICAgUmVtb3ZlIGV4aXN0aW5nIGltcGxl
bWVudGF0aW9ucyBmb3IgQ1NTUHJvcGVydHlXZWJraXRIaWdobGlnaHQgYW5kIENTU1Byb3BlcnR5
V2Via2l0SHlwaGVuYXRlQ2hhcmFjdGVyLgorCiAyMDExLTA4LTA5ICBFbWlsIEEgRWtsdW5kICA8
ZWFlQGNocm9taXVtLm9yZz4KIAogICAgICAgICBTd2l0Y2ggUmVuZGVyQmxvY2sgdG8gdG8gbmV3
IGxheW91dCB0eXBlcwpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlQXBwbHlQcm9w
ZXJ0eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlQXBwbHlQ
cm9wZXJ0eS5jcHAJKHJldmlzaW9uIDkyNzMyKQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0
eWxlQXBwbHlQcm9wZXJ0eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2NSwxMiArMjY1LDEyIEBA
IHByaXZhdGU6CiAgICAgfQogfTsKIAotZW51bSBMZW5ndGhBdXRvIHtBdXRvRGlzYWJsZWQgPSAw
LCBBdXRvRW5hYmxlZCA9IDF9OwotZW51bSBMZW5ndGhJbnRyaW5zaWMge0ludHJpbnNpY0Rpc2Fi
bGVkID0gMCwgSW50cmluc2ljRW5hYmxlZCA9IDF9OwotZW51bSBMZW5ndGhNaW5JbnRyaW5zaWMg
e01pbkludHJpbnNpY0Rpc2FibGVkID0gMCwgTWluSW50cmluc2ljRW5hYmxlZCA9IDF9OwotZW51
bSBMZW5ndGhOb25lIHtOb25lRGlzYWJsZWQgPSAwLCBOb25lRW5hYmxlZCA9IDF9OwotZW51bSBM
ZW5ndGhVbmRlZmluZWQge1VuZGVmaW5lZERpc2FibGVkID0gMCwgVW5kZWZpbmVkRW5hYmxlZCA9
IDF9OwotZW51bSBMZW5ndGhGbGV4RGlyZWN0aW9uIHtGbGV4RGlyZWN0aW9uRGlzYWJsZWQgPSAw
LCBGbGV4V2lkdGggPSAxLCBGbGV4SGVpZ2h0fTsKK2VudW0gTGVuZ3RoQXV0byB7IEF1dG9EaXNh
YmxlZCA9IDAsIEF1dG9FbmFibGVkIH07CitlbnVtIExlbmd0aEludHJpbnNpYyB7IEludHJpbnNp
Y0Rpc2FibGVkID0gMCwgSW50cmluc2ljRW5hYmxlZCB9OworZW51bSBMZW5ndGhNaW5JbnRyaW5z
aWMgeyBNaW5JbnRyaW5zaWNEaXNhYmxlZCA9IDAsIE1pbkludHJpbnNpY0VuYWJsZWQgfTsKK2Vu
dW0gTGVuZ3RoTm9uZSB7IE5vbmVEaXNhYmxlZCA9IDAsIE5vbmVFbmFibGVkIH07CitlbnVtIExl
bmd0aFVuZGVmaW5lZCB7IFVuZGVmaW5lZERpc2FibGVkID0gMCwgVW5kZWZpbmVkRW5hYmxlZCB9
OworZW51bSBMZW5ndGhGbGV4RGlyZWN0aW9uIHsgRmxleERpcmVjdGlvbkRpc2FibGVkID0gMCwg
RmxleFdpZHRoLCBGbGV4SGVpZ2h0IH07CiB0ZW1wbGF0ZSA8TGVuZ3RoQXV0byBhdXRvRW5hYmxl
ZCA9IEF1dG9EaXNhYmxlZCwKICAgICAgICAgICBMZW5ndGhJbnRyaW5zaWMgaW50cmluc2ljRW5h
YmxlZCA9IEludHJpbnNpY0Rpc2FibGVkLAogICAgICAgICAgIExlbmd0aE1pbkludHJpbnNpYyBt
aW5JbnRyaW5zaWNFbmFibGVkID0gTWluSW50cmluc2ljRGlzYWJsZWQsCkBAIC0zMzIsNiArMzMy
LDI5IEBAIHByaXZhdGU6CiAgICAgfQogfTsKIAorZW51bSBTdHJpbmdJZGVudEJlaGF2aW9yIHsg
Tm90aGluZ01hcHNUb051bGwgPSAwLCBNYXBOb25lVG9OdWxsLCBNYXBBdXRvVG9OdWxsIH07Cit0
ZW1wbGF0ZSA8U3RyaW5nSWRlbnRCZWhhdmlvciBpZGVudEJlaGF2aW9yID0gTm90aGluZ01hcHNU
b051bGw+CitjbGFzcyBBcHBseVByb3BlcnR5U3RyaW5nIDogcHVibGljIEFwcGx5UHJvcGVydHlE
ZWZhdWx0QmFzZTxjb25zdCBBdG9taWNTdHJpbmcmPiB7CitwdWJsaWM6CisgICAgQXBwbHlQcm9w
ZXJ0eVN0cmluZyhHZXR0ZXJGdW5jdGlvbiBnZXR0ZXIsIFNldHRlckZ1bmN0aW9uIHNldHRlciwg
SW5pdGlhbEZ1bmN0aW9uIGluaXRpYWwpCisgICAgICAgIDogQXBwbHlQcm9wZXJ0eURlZmF1bHRC
YXNlPGNvbnN0IEF0b21pY1N0cmluZyY+KGdldHRlciwgc2V0dGVyLCBpbml0aWFsKQorICAgIHsK
KyAgICB9CisKK3ByaXZhdGU6CisgICAgdmlydHVhbCB2b2lkIGFwcGx5VmFsdWUoQ1NTU3R5bGVT
ZWxlY3Rvciogc2VsZWN0b3IsIENTU1ZhbHVlKiB2YWx1ZSkgY29uc3QKKyAgICB7CisgICAgICAg
IGlmICghdmFsdWUtPmlzUHJpbWl0aXZlVmFsdWUoKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAg
ICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gc3RhdGljX2Nhc3Q8Q1NT
UHJpbWl0aXZlVmFsdWUqPih2YWx1ZSk7CisgICAgICAgIGlmICgoaWRlbnRCZWhhdmlvciA9PSBN
YXBOb25lVG9OdWxsICYmIHByaW1pdGl2ZVZhbHVlLT5nZXRJZGVudCgpID09IENTU1ZhbHVlTm9u
ZSkKKyAgICAgICAgICAgIHx8IChpZGVudEJlaGF2aW9yID09IE1hcEF1dG9Ub051bGwgJiYgcHJp
bWl0aXZlVmFsdWUtPmdldElkZW50KCkgPT0gQ1NTVmFsdWVBdXRvKSkKKyAgICAgICAgICAgIHNl
dFZhbHVlKHNlbGVjdG9yLT5zdHlsZSgpLCBudWxsQXRvbSk7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHNldFZhbHVlKHNlbGVjdG9yLT5zdHlsZSgpLCBwcmltaXRpdmVWYWx1ZS0+Z2V0U3Ry
aW5nVmFsdWUoKSk7CisgICAgfQorfTsKKwogY2xhc3MgQXBwbHlQcm9wZXJ0eUJvcmRlclJhZGl1
cyA6IHB1YmxpYyBBcHBseVByb3BlcnR5RGVmYXVsdEJhc2U8TGVuZ3RoU2l6ZT4gewogcHVibGlj
OgogICAgIEFwcGx5UHJvcGVydHlCb3JkZXJSYWRpdXMoR2V0dGVyRnVuY3Rpb24gZ2V0dGVyLCBT
ZXR0ZXJGdW5jdGlvbiBzZXR0ZXIsIEluaXRpYWxGdW5jdGlvbiBpbml0aWFsKQpAQCAtOTMxLDYg
Kzk1NCw5IEBAIENTU1N0eWxlQXBwbHlQcm9wZXJ0eTo6Q1NTU3R5bGVBcHBseVByb3AKICAgICBz
ZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRDb2x1bW5HYXAsIG5ldyBBcHBseVBy
b3BlcnR5QXV0bzxmbG9hdCwgQ29tcHV0ZUxlbmd0aCwgQ1NTVmFsdWVOb3JtYWw+KCZSZW5kZXJT
dHlsZTo6Y29sdW1uR2FwLCAmUmVuZGVyU3R5bGU6OnNldENvbHVtbkdhcCwgJlJlbmRlclN0eWxl
OjpoYXNOb3JtYWxDb2x1bW5HYXAsICZSZW5kZXJTdHlsZTo6c2V0SGFzTm9ybWFsQ29sdW1uR2Fw
KSk7CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0Q29sdW1uV2lkdGgs
IG5ldyBBcHBseVByb3BlcnR5QXV0bzxmbG9hdCwgQ29tcHV0ZUxlbmd0aD4oJlJlbmRlclN0eWxl
Ojpjb2x1bW5XaWR0aCwgJlJlbmRlclN0eWxlOjpzZXRDb2x1bW5XaWR0aCwgJlJlbmRlclN0eWxl
OjpoYXNBdXRvQ29sdW1uV2lkdGgsICZSZW5kZXJTdHlsZTo6c2V0SGFzQXV0b0NvbHVtbldpZHRo
KSk7CiAKKyAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRIaWdobGlnaHQs
IG5ldyBBcHBseVByb3BlcnR5U3RyaW5nPE1hcE5vbmVUb051bGw+KCZSZW5kZXJTdHlsZTo6aGln
aGxpZ2h0LCAmUmVuZGVyU3R5bGU6OnNldEhpZ2hsaWdodCwgJlJlbmRlclN0eWxlOjppbml0aWFs
SGlnaGxpZ2h0KSk7CisgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0SHlw
aGVuYXRlQ2hhcmFjdGVyLCBuZXcgQXBwbHlQcm9wZXJ0eVN0cmluZzxNYXBBdXRvVG9OdWxsPigm
UmVuZGVyU3R5bGU6Omh5cGhlbmF0aW9uU3RyaW5nLCAmUmVuZGVyU3R5bGU6OnNldEh5cGhlbmF0
aW9uU3RyaW5nLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxIeXBoZW5hdGlvblN0cmluZykpOworCiAg
ICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0VGV4dENvbWJpbmUsIG5ldyBB
cHBseVByb3BlcnR5RGVmYXVsdDxUZXh0Q29tYmluZT4oJlJlbmRlclN0eWxlOjp0ZXh0Q29tYmlu
ZSwgJlJlbmRlclN0eWxlOjpzZXRUZXh0Q29tYmluZSwgJlJlbmRlclN0eWxlOjppbml0aWFsVGV4
dENvbWJpbmUpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRUZXh0
RW1waGFzaXNQb3NpdGlvbiwgbmV3IEFwcGx5UHJvcGVydHlEZWZhdWx0PFRleHRFbXBoYXNpc1Bv
c2l0aW9uPigmUmVuZGVyU3R5bGU6OnRleHRFbXBoYXNpc1Bvc2l0aW9uLCAmUmVuZGVyU3R5bGU6
OnNldFRleHRFbXBoYXNpc1Bvc2l0aW9uLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RW1waGFz
aXNQb3NpdGlvbikpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdFRl
eHRFbXBoYXNpc1N0eWxlLCBuZXcgQXBwbHlQcm9wZXJ0eVRleHRFbXBoYXNpc1N0eWxlKCkpOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAkocmV2aXNpb24gOTI3
MzIpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTQ3NDEsMjUgKzQ3NDEsOSBAQCB2b2lkIENTU1N0eWxlU2VsZWN0b3I6OmFwcGx5
UHJvcGVydHkoaW50CiAgICAgICAgICAgICBtX3N0eWxlLT5zZXRMaW5lQ2xhbXAoTGluZUNsYW1w
VmFsdWUocHJpbWl0aXZlVmFsdWUtPmdldEludFZhbHVlKENTU1ByaW1pdGl2ZVZhbHVlOjpDU1Nf
UEVSQ0VOVEFHRSksIExpbmVDbGFtcFBlcmNlbnRhZ2UpKTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0SGlnaGxpZ2h0OiB7Ci0gICAgICAgIEhBTkRM
RV9JTkhFUklUX0FORF9JTklUSUFMKGhpZ2hsaWdodCwgSGlnaGxpZ2h0KTsKLSAgICAgICAgaWYg
KHByaW1pdGl2ZVZhbHVlLT5nZXRJZGVudCgpID09IENTU1ZhbHVlTm9uZSkKLSAgICAgICAgICAg
IG1fc3R5bGUtPnNldEhpZ2hsaWdodChudWxsQXRvbSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAg
ICAgIG1fc3R5bGUtPnNldEhpZ2hsaWdodChwcmltaXRpdmVWYWx1ZS0+Z2V0U3RyaW5nVmFsdWUo
KSk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEh5
cGhlbnM6CiAgICAgICAgIEhBTkRMRV9JTkhFUklUX0FORF9JTklUSUFMX0FORF9QUklNSVRJVkUo
aHlwaGVucywgSHlwaGVucyk7CiAgICAgICAgIHJldHVybjsKLSAgICBjYXNlIENTU1Byb3BlcnR5
V2Via2l0SHlwaGVuYXRlQ2hhcmFjdGVyOiB7Ci0gICAgICAgIEhBTkRMRV9JTkhFUklUX0FORF9J
TklUSUFMKGh5cGhlbmF0aW9uU3RyaW5nLCBIeXBoZW5hdGlvblN0cmluZyk7Ci0gICAgICAgIGlm
IChwcmltaXRpdmVWYWx1ZS0+Z2V0SWRlbnQoKSA9PSBDU1NWYWx1ZUF1dG8pCi0gICAgICAgICAg
ICBtX3N0eWxlLT5zZXRIeXBoZW5hdGlvblN0cmluZyhudWxsQXRvbSk7Ci0gICAgICAgIGVsc2UK
LSAgICAgICAgICAgIG1fc3R5bGUtPnNldEh5cGhlbmF0aW9uU3RyaW5nKHByaW1pdGl2ZVZhbHVl
LT5nZXRTdHJpbmdWYWx1ZSgpKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KICAgICBjYXNlIENT
U1Byb3BlcnR5V2Via2l0SHlwaGVuYXRlTGltaXRBZnRlcjogewogICAgICAgICBIQU5ETEVfSU5I
RVJJVF9BTkRfSU5JVElBTChoeXBoZW5hdGlvbkxpbWl0QWZ0ZXIsIEh5cGhlbmF0aW9uTGltaXRB
ZnRlcik7CiAgICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+Z2V0SWRlbnQoKSA9PSBDU1NWYWx1
ZUF1dG8pCkBAIC01MjIyLDYgKzUyMDYsOCBAQCB2b2lkIENTU1N0eWxlU2VsZWN0b3I6OmFwcGx5
UHJvcGVydHkoaW50CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdENvbHVtbkNvdW50OgogICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRDb2x1bW5HYXA6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdENvbHVtbldpZHRoOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRIaWdobGlnaHQ6Cisg
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEh5cGhlbmF0ZUNoYXJhY3RlcjoKICAgICBjYXNlIENT
U1Byb3BlcnR5V2Via2l0VGV4dENvbWJpbmU6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFRl
eHRFbXBoYXNpc1Bvc2l0aW9uOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0RW1waGFz
aXNTdHlsZToK
</data>

          </attachment>
      

    </bug>

</bugzilla>