<?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>105961</bug_id>
          
          <creation_ts>2013-01-02 15:31:56 -0800</creation_ts>
          <short_desc>Fix overflow in LayoutUnit::ceil and floor for SATURATED_LAYOUT_ARITHMETIC</short_desc>
          <delta_ts>2013-01-03 13:52:29 -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>Platform</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>95053</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Emil A Eklund">eae</reporter>
          <assigned_to name="Emil A Eklund">eae</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>inferno</cc>
    
    <cc>leviw</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>798993</commentid>
    <comment_count>0</comment_count>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-01-02 15:31:56 -0800</bug_when>
    <thetext>The LayoutUnit::ceil and floor methods overflows if given the intMaxForLayoutUnit and intMinForLayoutUnit values respectively.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799001</commentid>
    <comment_count>1</comment_count>
      <attachid>181086</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-01-02 15:37:11 -0800</bug_when>
    <thetext>Created attachment 181086
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799034</commentid>
    <comment_count>2</comment_count>
      <attachid>181095</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-01-02 16:02:11 -0800</bug_when>
    <thetext>Created attachment 181095
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799097</commentid>
    <comment_count>3</comment_count>
      <attachid>181112</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-01-02 17:06:48 -0800</bug_when>
    <thetext>Created attachment 181112
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799098</commentid>
    <comment_count>4</comment_count>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-01-02 17:07:17 -0800</bug_when>
    <thetext>Updated tests to also cover MAX - 1, MAX - 0.5, MIN + 1 and MIN + 0.5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799584</commentid>
    <comment_count>5</comment_count>
      <attachid>181112</attachid>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2013-01-03 12:54:45 -0800</bug_when>
    <thetext>Comment on attachment 181112
Patch

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

This seems fine to me. I&apos;d be curious to see the perf results (which I suspect are negligible), but since this flag isn&apos;t enabled, I think it&apos;s enough to watch the overall impact of enabling it.

&gt; Source/WebCore/ChangeLog:3
&gt; +        Fix overflow in LayoutUnit::ceil and flor for SATURATED_LAYOUT_ARITHMETIC

Typo: &apos;flor&apos;

&gt; Source/WebCore/platform/LayoutUnit.h:230
&gt; +        if (UNLIKELY(m_value &lt;= INT_MIN + kEffectiveFixedPointDenominator - 1))
&gt; +            return intMinForLayoutUnit;

I&apos;m not used to seeing UNLIKELY in WebCore code, but I imagine if I&apos;m going to run into it, I&apos;d expect it in platform/.

&gt; Tools/ChangeLog:3
&gt; +        Fix overflow in LayoutUnit::ceil and flor for SATURATED_LAYOUT_ARITHMETIC

&apos;flor&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799593</commentid>
    <comment_count>6</comment_count>
      <attachid>181208</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2013-01-03 13:05:16 -0800</bug_when>
    <thetext>Created attachment 181208
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799643</commentid>
    <comment_count>7</comment_count>
      <attachid>181208</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-03 13:52:26 -0800</bug_when>
    <thetext>Comment on attachment 181208
Patch for landing

Clearing flags on attachment: 181208

Committed r138736: &lt;http://trac.webkit.org/changeset/138736&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799644</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-03 13:52:29 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181086</attachid>
            <date>2013-01-02 15:37:11 -0800</date>
            <delta_ts>2013-01-02 15:48:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105961-20130102153419.patch</filename>
            <type>text/plain</type>
            <size>4516</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzODY2MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAxLTAyICBFbWlsIEEg
RWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4KKworICAgICAgICBGaXggb3ZlcmZsb3cgaW4gTGF5
b3V0VW5pdDo6Y2VpbCBhbmQgZmxvciBmb3IgU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElDCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU5NjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFRo
ZSBMYXlvdXRVbml0OjpjZWlsIGFuZCBmbG9vciBtZXRob2RzIG92ZXJmbG93cyBpZiBnaXZlbiB0
aGUKKyAgICAgICAgaW50TWF4Rm9yTGF5b3V0VW5pdCBhbmQgaW50TWluRm9yTGF5b3V0VW5pdCB2
YWx1ZXMgcmVzcGVjdGl2ZWx5LgorICAgICAgICBDaGVjayBmb3IgdGhlIG1heC9taW4gdmFsdWUg
dG8gYXZvaWQgdGhpcy4KKworICAgICAgICBUZXN0OiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvTGF5b3V0VW5pdC5jcHAKKworICAgICAgICAqIHBsYXRmb3JtL0xheW91dFVuaXQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dFVuaXQ6OmNlaWwpOgorICAgICAgICAoV2ViQ29yZTo6TGF5
b3V0VW5pdDo6Zmxvb3IpOgorICAgICAgICBDaGVjayBmb3IgdGhlIG1heC9taW4gdmFsdWUgYW5k
IHJldHVybiBlYXJseSB0byBhdm9pZCBvdmVyZmxvdy4KKyAgICAgICAgVXNlIHRoZSBVTkxJS0VM
WSBtYWNybyB0byBhdm9pZCB0aGUgY29zdCBvZiBicmFuY2ggbWlzcHJlZGljdGlvbgorICAgICAg
ICBmb3IgdGhlIGNvbW1vbiBjYXNlLgorCiAyMDEzLTAxLTAyICBUb255IENoYW5nICA8dG9ueUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgR2VuZXJhdGUgaW50ZXJuYWwuc2V0dGluZ3MgZnJvbSBT
ZXR0aW5ncy5pbgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGF5b3V0VW5pdC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xheW91dFVuaXQuaAkocmV2aXNp
b24gMTM4NTQ4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGF5b3V0VW5pdC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xOTYsNiArMTk2LDEwIEBAIHB1YmxpYzoKICNlbmRpZgogICAgIHsKICNp
ZiBFTkFCTEUoU1VCUElYRUxfTEFZT1VUKQorI2lmIEVOQUJMRShTQVRVUkFURURfTEFZT1VUX0FS
SVRITUVUSUMpCisgICAgICAgIGlmIChVTkxJS0VMWShtX3ZhbHVlID09IElOVF9NQVgpKQorICAg
ICAgICAgICAgcmV0dXJuIGludE1heEZvckxheW91dFVuaXQ7CisjZW5kaWYKICAgICAgICAgaWYg
KG1fdmFsdWUgPj0gMCkKICAgICAgICAgICAgIHJldHVybiAobV92YWx1ZSArIGtFZmZlY3RpdmVG
aXhlZFBvaW50RGVub21pbmF0b3IgLSAxKSAvIGtFZmZlY3RpdmVGaXhlZFBvaW50RGVub21pbmF0
b3I7CiAgICAgICAgIHJldHVybiB0b0ludCgpOwpAQCAtMjIxLDYgKzIyNSwxMCBAQCBwdWJsaWM6
CiAgICAgaW50IGZsb29yKCkgY29uc3QKICAgICB7CiAjaWYgRU5BQkxFKFNVQlBJWEVMX0xBWU9V
VCkKKyNpZiBFTkFCTEUoU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElDKQorICAgICAgICBpZiAo
VU5MSUtFTFkobV92YWx1ZSA9PSBJTlRfTUlOKSkKKyAgICAgICAgICAgIHJldHVybiBpbnRNaW5G
b3JMYXlvdXRVbml0OworI2VuZGlmCiAgICAgICAgIGlmIChtX3ZhbHVlID49IDApCiAgICAgICAg
ICAgICByZXR1cm4gdG9JbnQoKTsKICAgICAgICAgcmV0dXJuIChtX3ZhbHVlIC0ga0VmZmVjdGl2
ZUZpeGVkUG9pbnREZW5vbWluYXRvciArIDEpIC8ga0VmZmVjdGl2ZUZpeGVkUG9pbnREZW5vbWlu
YXRvcjsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VM
b2cJKHJldmlzaW9uIDEzODY2MikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE2IEBACisyMDEzLTAxLTAyICBFbWlsIEEgRWtsdW5kICA8ZWFlQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBGaXggb3ZlcmZsb3cgaW4gTGF5b3V0VW5pdDo6Y2VpbCBhbmQgZmxv
ciBmb3IgU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElDCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU5NjEKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEFkZCB0ZXN0cyBmb3IgTGF5b3V0VW5p
dDo6Y2VpbCBhbmQgZmxvb3IuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvTGF5b3V0VW5pdC5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAg
ICAgKFRlc3RXZWJLaXRBUEkpOgorCiAyMDEzLTAxLTAyICBUb255IENoYW5nICA8dG9ueUBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgR2VuZXJhdGUgaW50ZXJuYWwuc2V0dGluZ3MgZnJvbSBTZXR0
aW5ncy5pbgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0xheW91dFVu
aXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9M
YXlvdXRVbml0LmNwcAkocmV2aXNpb24gMTM4NTQ4KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJDb3JlL0xheW91dFVuaXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODcsNSArMTg3
LDQxIEBAIFRFU1QoV2ViQ29yZUxheW91dFVuaXQsIExheW91dFVuaXREaXZpc2kKICAgICBBU1NF
UlRfRVEoKExheW91dFVuaXQoaW50TWF4Rm9yTGF5b3V0VW5pdCkgLyBMYXlvdXRVbml0KDAuNSkp
LnRvSW50KCksIGludE1heEZvckxheW91dFVuaXQpOwogfQogCitURVNUKFdlYkNvcmVMYXlvdXRV
bml0LCBMYXlvdXRVbml0Q2VpbCkKK3sKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgwKS5jZWls
KCksIDApOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDAuMSkuY2VpbCgpLCAxKTsKKyAgICBB
U1NFUlRfRVEoTGF5b3V0VW5pdCgwLjUpLmNlaWwoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91
dFVuaXQoMC45KS5jZWlsKCksIDEpOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDEuMCkuY2Vp
bCgpLCAxKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgxLjEpLmNlaWwoKSwgMik7CisgICAg
CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTAuMSkuY2VpbCgpLCAwKTsKKyAgICBBU1NFUlRf
RVEoTGF5b3V0VW5pdCgtMC41KS5jZWlsKCksIDApOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0
KC0wLjkpLmNlaWwoKSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTEuMCkuY2VpbCgp
LCAtMSk7CisgICAgCisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoaW50TWF4Rm9yTGF5b3V0VW5p
dCkuY2VpbCgpLCBpbnRNYXhGb3JMYXlvdXRVbml0KTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5p
dChpbnRNaW5Gb3JMYXlvdXRVbml0KS5jZWlsKCksIGludE1pbkZvckxheW91dFVuaXQpOworfQor
CitURVNUKFdlYkNvcmVMYXlvdXRVbml0LCBMYXlvdXRVbml0Rmxvb3IpCit7CisgICAgQVNTRVJU
X0VRKExheW91dFVuaXQoMCkuZmxvb3IoKSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQo
MC4xKS5mbG9vcigpLCAwKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgwLjUpLmZsb29yKCks
IDApOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDAuOSkuZmxvb3IoKSwgMCk7CisgICAgQVNT
RVJUX0VRKExheW91dFVuaXQoMS4wKS5mbG9vcigpLCAxKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0
VW5pdCgxLjEpLmZsb29yKCksIDEpOworICAgIAorICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KC0w
LjEpLmZsb29yKCksIC0xKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgtMC41KS5mbG9vcigp
LCAtMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTAuOSkuZmxvb3IoKSwgLTEpOworICAg
IEFTU0VSVF9FUShMYXlvdXRVbml0KC0xLjApLmZsb29yKCksIC0xKTsKKyAgICAKKyAgICBBU1NF
UlRfRVEoTGF5b3V0VW5pdChpbnRNYXhGb3JMYXlvdXRVbml0KS5mbG9vcigpLCBpbnRNYXhGb3JM
YXlvdXRVbml0KTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdChpbnRNaW5Gb3JMYXlvdXRVbml0
KS5mbG9vcigpLCBpbnRNaW5Gb3JMYXlvdXRVbml0KTsKK30KKwogCiB9IC8vIG5hbWVzcGFjZSBU
ZXN0V2ViS2l0QVBJCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181095</attachid>
            <date>2013-01-02 16:02:11 -0800</date>
            <delta_ts>2013-01-02 17:06:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105961-20130102155919.patch</filename>
            <type>text/plain</type>
            <size>4992</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzODY2MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAxLTAyICBFbWlsIEEg
RWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4KKworICAgICAgICBGaXggb3ZlcmZsb3cgaW4gTGF5
b3V0VW5pdDo6Y2VpbCBhbmQgZmxvciBmb3IgU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElDCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU5NjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFRo
ZSBMYXlvdXRVbml0OjpjZWlsIGFuZCBmbG9vciBtZXRob2RzIG92ZXJmbG93cyBpZiBnaXZlbiB0
aGUKKyAgICAgICAgaW50TWF4Rm9yTGF5b3V0VW5pdCBhbmQgaW50TWluRm9yTGF5b3V0VW5pdCB2
YWx1ZXMgcmVzcGVjdGl2ZWx5LgorICAgICAgICBDaGVjayBmb3IgdGhlIG1heC9taW4gdmFsdWUg
dG8gYXZvaWQgdGhpcy4KKworICAgICAgICBUZXN0OiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvTGF5b3V0VW5pdC5jcHAKKworICAgICAgICAqIHBsYXRmb3JtL0xheW91dFVuaXQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dFVuaXQ6OmNlaWwpOgorICAgICAgICAoV2ViQ29yZTo6TGF5
b3V0VW5pdDo6Zmxvb3IpOgorICAgICAgICBDaGVjayBmb3IgdGhlIG1heC9taW4gdmFsdWUgYW5k
IHJldHVybiBlYXJseSB0byBhdm9pZCBvdmVyZmxvdy4KKyAgICAgICAgVXNlIHRoZSBVTkxJS0VM
WSBtYWNybyB0byBhdm9pZCB0aGUgY29zdCBvZiBicmFuY2ggbWlzcHJlZGljdGlvbgorICAgICAg
ICBmb3IgdGhlIGNvbW1vbiBjYXNlLgorCiAyMDEzLTAxLTAyICBUb255IENoYW5nICA8dG9ueUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgR2VuZXJhdGUgaW50ZXJuYWwuc2V0dGluZ3MgZnJvbSBT
ZXR0aW5ncy5pbgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGF5b3V0VW5pdC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xheW91dFVuaXQuaAkocmV2aXNp
b24gMTM4NTQ4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGF5b3V0VW5pdC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xOTYsNiArMTk2LDEwIEBAIHB1YmxpYzoKICNlbmRpZgogICAgIHsKICNp
ZiBFTkFCTEUoU1VCUElYRUxfTEFZT1VUKQorI2lmIEVOQUJMRShTQVRVUkFURURfTEFZT1VUX0FS
SVRITUVUSUMpCisgICAgICAgIGlmIChVTkxJS0VMWShtX3ZhbHVlID49IElOVF9NQVggLSBrRWZm
ZWN0aXZlRml4ZWRQb2ludERlbm9taW5hdG9yICsgMSkpCisgICAgICAgICAgICByZXR1cm4gaW50
TWF4Rm9yTGF5b3V0VW5pdDsKKyNlbmRpZgogICAgICAgICBpZiAobV92YWx1ZSA+PSAwKQogICAg
ICAgICAgICAgcmV0dXJuIChtX3ZhbHVlICsga0VmZmVjdGl2ZUZpeGVkUG9pbnREZW5vbWluYXRv
ciAtIDEpIC8ga0VmZmVjdGl2ZUZpeGVkUG9pbnREZW5vbWluYXRvcjsKICAgICAgICAgcmV0dXJu
IHRvSW50KCk7CkBAIC0yMjEsNiArMjI1LDEwIEBAIHB1YmxpYzoKICAgICBpbnQgZmxvb3IoKSBj
b25zdAogICAgIHsKICNpZiBFTkFCTEUoU1VCUElYRUxfTEFZT1VUKQorI2lmIEVOQUJMRShTQVRV
UkFURURfTEFZT1VUX0FSSVRITUVUSUMpCisgICAgICAgIGlmIChVTkxJS0VMWShtX3ZhbHVlIDw9
IElOVF9NSU4gKyBrRWZmZWN0aXZlRml4ZWRQb2ludERlbm9taW5hdG9yIC0gMSkpCisgICAgICAg
ICAgICByZXR1cm4gaW50TWluRm9yTGF5b3V0VW5pdDsKKyNlbmRpZgogICAgICAgICBpZiAobV92
YWx1ZSA+PSAwKQogICAgICAgICAgICAgcmV0dXJuIHRvSW50KCk7CiAgICAgICAgIHJldHVybiAo
bV92YWx1ZSAtIGtFZmZlY3RpdmVGaXhlZFBvaW50RGVub21pbmF0b3IgKyAxKSAvIGtFZmZlY3Rp
dmVGaXhlZFBvaW50RGVub21pbmF0b3I7CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMzg2NjIpCisrKyBUb29scy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAxMy0wMS0wMiAgRW1pbCBBIEVr
bHVuZCAgPGVhZUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRml4IG92ZXJmbG93IGluIExheW91
dFVuaXQ6OmNlaWwgYW5kIGZsb3IgZm9yIFNBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1OTYxCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBBZGQg
dGVzdHMgZm9yIExheW91dFVuaXQ6OmNlaWwgYW5kIGZsb29yLgorCisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJDb3JlL0xheW91dFVuaXQuY3BwOgorICAgICAgICAoVGVzdFdlYktp
dEFQSTo6VEVTVCk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJKToKKwogMjAxMy0wMS0wMiAgVG9u
eSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEdlbmVyYXRlIGludGVybmFs
LnNldHRpbmdzIGZyb20gU2V0dGluZ3MuaW4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9MYXlvdXRVbml0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYkNvcmUvTGF5b3V0VW5pdC5jcHAJKHJldmlzaW9uIDEzODU0OCkKKysrIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9MYXlvdXRVbml0LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTg3LDUgKzE4Nyw0NiBAQCBURVNUKFdlYkNvcmVMYXlvdXRVbml0LCBMYXlvdXRV
bml0RGl2aXNpCiAgICAgQVNTRVJUX0VRKChMYXlvdXRVbml0KGludE1heEZvckxheW91dFVuaXQp
IC8gTGF5b3V0VW5pdCgwLjUpKS50b0ludCgpLCBpbnRNYXhGb3JMYXlvdXRVbml0KTsKIH0KIAor
VEVTVChXZWJDb3JlTGF5b3V0VW5pdCwgTGF5b3V0VW5pdENlaWwpCit7CisgICAgQVNTRVJUX0VR
KExheW91dFVuaXQoMCkuY2VpbCgpLCAwKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgwLjEp
LmNlaWwoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMC41KS5jZWlsKCksIDEpOwor
ICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDAuOSkuY2VpbCgpLCAxKTsKKyAgICBBU1NFUlRfRVEo
TGF5b3V0VW5pdCgxLjApLmNlaWwoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMS4x
KS5jZWlsKCksIDIpOworICAgIAorICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KC0wLjEpLmNlaWwo
KSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTAuNSkuY2VpbCgpLCAwKTsKKyAgICBB
U1NFUlRfRVEoTGF5b3V0VW5pdCgtMC45KS5jZWlsKCksIDApOworICAgIEFTU0VSVF9FUShMYXlv
dXRVbml0KC0xLjApLmNlaWwoKSwgLTEpOworICAgIAorICAgIEFTU0VSVF9FUShMYXlvdXRVbml0
KGludE1heEZvckxheW91dFVuaXQpLmNlaWwoKSwgaW50TWF4Rm9yTGF5b3V0VW5pdCk7CisgICAg
QVNTRVJUX0VRKExheW91dFVuaXQoaW50TWluRm9yTGF5b3V0VW5pdCkuY2VpbCgpLCBpbnRNaW5G
b3JMYXlvdXRVbml0KTsKK30KKworVEVTVChXZWJDb3JlTGF5b3V0VW5pdCwgTGF5b3V0VW5pdEZs
b29yKQoreworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDApLmZsb29yKCksIDApOworICAgIEFT
U0VSVF9FUShMYXlvdXRVbml0KDAuMSkuZmxvb3IoKSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91
dFVuaXQoMC41KS5mbG9vcigpLCAwKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgwLjkpLmZs
b29yKCksIDApOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDEuMCkuZmxvb3IoKSwgMSk7Cisg
ICAgQVNTRVJUX0VRKExheW91dFVuaXQoMS4xKS5mbG9vcigpLCAxKTsKKyAgICAKKyAgICBBU1NF
UlRfRVEoTGF5b3V0VW5pdCgtMC4xKS5mbG9vcigpLCAtMSk7CisgICAgQVNTRVJUX0VRKExheW91
dFVuaXQoLTAuNSkuZmxvb3IoKSwgLTEpOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KC0wLjkp
LmZsb29yKCksIC0xKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgtMS4wKS5mbG9vcigpLCAt
MSk7CisgICAgCisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoaW50TWF4Rm9yTGF5b3V0VW5pdCku
Zmxvb3IoKSwgaW50TWF4Rm9yTGF5b3V0VW5pdCk7CisgICAgQVNTRVJUX0VRKChMYXlvdXRVbml0
KGludE1heEZvckxheW91dFVuaXQpIC0gTGF5b3V0VW5pdCgwLjUpKS5jZWlsKCksIGludE1heEZv
ckxheW91dFVuaXQpOworICAgIEFTU0VSVF9FUSgoTGF5b3V0VW5pdChpbnRNYXhGb3JMYXlvdXRV
bml0KSAtIExheW91dFVuaXQoMSkpLmNlaWwoKSwgaW50TWF4Rm9yTGF5b3V0VW5pdCAtIDEpOwor
ICAgIAorICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KGludE1pbkZvckxheW91dFVuaXQpLmZsb29y
KCksIGludE1pbkZvckxheW91dFVuaXQpOworICAgIEFTU0VSVF9FUSgoTGF5b3V0VW5pdChpbnRN
aW5Gb3JMYXlvdXRVbml0KSArIExheW91dFVuaXQoMC41KSkuZmxvb3IoKSwgaW50TWluRm9yTGF5
b3V0VW5pdCk7CisgICAgQVNTRVJUX0VRKChMYXlvdXRVbml0KGludE1pbkZvckxheW91dFVuaXQp
ICsgTGF5b3V0VW5pdCgxKSkuZmxvb3IoKSwgaW50TWluRm9yTGF5b3V0VW5pdCArIDEpOworfQor
CiAKIH0gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181112</attachid>
            <date>2013-01-02 17:06:48 -0800</date>
            <delta_ts>2013-01-03 13:05:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105961-20130102170356.patch</filename>
            <type>text/plain</type>
            <size>4990</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzODY2MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAxLTAyICBFbWlsIEEg
RWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4KKworICAgICAgICBGaXggb3ZlcmZsb3cgaW4gTGF5
b3V0VW5pdDo6Y2VpbCBhbmQgZmxvciBmb3IgU0FUVVJBVEVEX0xBWU9VVF9BUklUSE1FVElDCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU5NjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFRo
ZSBMYXlvdXRVbml0OjpjZWlsIGFuZCBmbG9vciBtZXRob2RzIG92ZXJmbG93cyBpZiBnaXZlbiB0
aGUKKyAgICAgICAgaW50TWF4Rm9yTGF5b3V0VW5pdCBhbmQgaW50TWluRm9yTGF5b3V0VW5pdCB2
YWx1ZXMgcmVzcGVjdGl2ZWx5LgorICAgICAgICBDaGVjayBmb3IgdGhlIG1heC9taW4gdmFsdWUg
dG8gYXZvaWQgdGhpcy4KKworICAgICAgICBUZXN0OiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvTGF5b3V0VW5pdC5jcHAKKworICAgICAgICAqIHBsYXRmb3JtL0xheW91dFVuaXQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dFVuaXQ6OmNlaWwpOgorICAgICAgICAoV2ViQ29yZTo6TGF5
b3V0VW5pdDo6Zmxvb3IpOgorICAgICAgICBDaGVjayBmb3IgdGhlIG1heC9taW4gdmFsdWUgYW5k
IHJldHVybiBlYXJseSB0byBhdm9pZCBvdmVyZmxvdy4KKyAgICAgICAgVXNlIHRoZSBVTkxJS0VM
WSBtYWNybyB0byBhdm9pZCB0aGUgY29zdCBvZiBicmFuY2ggbWlzcHJlZGljdGlvbgorICAgICAg
ICBmb3IgdGhlIGNvbW1vbiBjYXNlLgorCiAyMDEzLTAxLTAyICBUb255IENoYW5nICA8dG9ueUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgR2VuZXJhdGUgaW50ZXJuYWwuc2V0dGluZ3MgZnJvbSBT
ZXR0aW5ncy5pbgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGF5b3V0VW5pdC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xheW91dFVuaXQuaAkocmV2aXNp
b24gMTM4NTQ4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGF5b3V0VW5pdC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xOTYsNiArMTk2LDEwIEBAIHB1YmxpYzoKICNlbmRpZgogICAgIHsKICNp
ZiBFTkFCTEUoU1VCUElYRUxfTEFZT1VUKQorI2lmIEVOQUJMRShTQVRVUkFURURfTEFZT1VUX0FS
SVRITUVUSUMpCisgICAgICAgIGlmIChVTkxJS0VMWShtX3ZhbHVlID49IElOVF9NQVggLSBrRWZm
ZWN0aXZlRml4ZWRQb2ludERlbm9taW5hdG9yICsgMSkpCisgICAgICAgICAgICByZXR1cm4gaW50
TWF4Rm9yTGF5b3V0VW5pdDsKKyNlbmRpZgogICAgICAgICBpZiAobV92YWx1ZSA+PSAwKQogICAg
ICAgICAgICAgcmV0dXJuIChtX3ZhbHVlICsga0VmZmVjdGl2ZUZpeGVkUG9pbnREZW5vbWluYXRv
ciAtIDEpIC8ga0VmZmVjdGl2ZUZpeGVkUG9pbnREZW5vbWluYXRvcjsKICAgICAgICAgcmV0dXJu
IHRvSW50KCk7CkBAIC0yMjEsNiArMjI1LDEwIEBAIHB1YmxpYzoKICAgICBpbnQgZmxvb3IoKSBj
b25zdAogICAgIHsKICNpZiBFTkFCTEUoU1VCUElYRUxfTEFZT1VUKQorI2lmIEVOQUJMRShTQVRV
UkFURURfTEFZT1VUX0FSSVRITUVUSUMpCisgICAgICAgIGlmIChVTkxJS0VMWShtX3ZhbHVlIDw9
IElOVF9NSU4gKyBrRWZmZWN0aXZlRml4ZWRQb2ludERlbm9taW5hdG9yIC0gMSkpCisgICAgICAg
ICAgICByZXR1cm4gaW50TWluRm9yTGF5b3V0VW5pdDsKKyNlbmRpZgogICAgICAgICBpZiAobV92
YWx1ZSA+PSAwKQogICAgICAgICAgICAgcmV0dXJuIHRvSW50KCk7CiAgICAgICAgIHJldHVybiAo
bV92YWx1ZSAtIGtFZmZlY3RpdmVGaXhlZFBvaW50RGVub21pbmF0b3IgKyAxKSAvIGtFZmZlY3Rp
dmVGaXhlZFBvaW50RGVub21pbmF0b3I7CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMzg2NjIpCisrKyBUb29scy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAxMy0wMS0wMiAgRW1pbCBBIEVr
bHVuZCAgPGVhZUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRml4IG92ZXJmbG93IGluIExheW91
dFVuaXQ6OmNlaWwgYW5kIGZsb3IgZm9yIFNBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1OTYxCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBBZGQg
dGVzdHMgZm9yIExheW91dFVuaXQ6OmNlaWwgYW5kIGZsb29yLgorCisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJDb3JlL0xheW91dFVuaXQuY3BwOgorICAgICAgICAoVGVzdFdlYktp
dEFQSTo6VEVTVCk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJKToKKwogMjAxMy0wMS0wMiAgVG9u
eSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEdlbmVyYXRlIGludGVybmFs
LnNldHRpbmdzIGZyb20gU2V0dGluZ3MuaW4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9MYXlvdXRVbml0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYkNvcmUvTGF5b3V0VW5pdC5jcHAJKHJldmlzaW9uIDEzODU0OCkKKysrIFRv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9MYXlvdXRVbml0LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTg3LDUgKzE4Nyw0NyBAQCBURVNUKFdlYkNvcmVMYXlvdXRVbml0LCBMYXlvdXRV
bml0RGl2aXNpCiAgICAgQVNTRVJUX0VRKChMYXlvdXRVbml0KGludE1heEZvckxheW91dFVuaXQp
IC8gTGF5b3V0VW5pdCgwLjUpKS50b0ludCgpLCBpbnRNYXhGb3JMYXlvdXRVbml0KTsKIH0KIAor
VEVTVChXZWJDb3JlTGF5b3V0VW5pdCwgTGF5b3V0VW5pdENlaWwpCit7CisgICAgQVNTRVJUX0VR
KExheW91dFVuaXQoMCkuY2VpbCgpLCAwKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgwLjEp
LmNlaWwoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMC41KS5jZWlsKCksIDEpOwor
ICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDAuOSkuY2VpbCgpLCAxKTsKKyAgICBBU1NFUlRfRVEo
TGF5b3V0VW5pdCgxLjApLmNlaWwoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMS4x
KS5jZWlsKCksIDIpOworICAgIAorICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KC0wLjEpLmNlaWwo
KSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTAuNSkuY2VpbCgpLCAwKTsKKyAgICBB
U1NFUlRfRVEoTGF5b3V0VW5pdCgtMC45KS5jZWlsKCksIDApOworICAgIEFTU0VSVF9FUShMYXlv
dXRVbml0KC0xLjApLmNlaWwoKSwgLTEpOworICAgIAorICAgIEFTU0VSVF9FUShMYXlvdXRVbml0
KGludE1heEZvckxheW91dFVuaXQpLmNlaWwoKSwgaW50TWF4Rm9yTGF5b3V0VW5pdCk7CisgICAg
QVNTRVJUX0VRKChMYXlvdXRVbml0KGludE1heEZvckxheW91dFVuaXQpIC0gTGF5b3V0VW5pdCgw
LjUpKS5jZWlsKCksIGludE1heEZvckxheW91dFVuaXQpOworICAgIEFTU0VSVF9FUSgoTGF5b3V0
VW5pdChpbnRNYXhGb3JMYXlvdXRVbml0KSAtIExheW91dFVuaXQoMSkpLmNlaWwoKSwgaW50TWF4
Rm9yTGF5b3V0VW5pdCAtIDEpOworCisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoaW50TWluRm9y
TGF5b3V0VW5pdCkuY2VpbCgpLCBpbnRNaW5Gb3JMYXlvdXRVbml0KTsKK30KKworVEVTVChXZWJD
b3JlTGF5b3V0VW5pdCwgTGF5b3V0VW5pdEZsb29yKQoreworICAgIEFTU0VSVF9FUShMYXlvdXRV
bml0KDApLmZsb29yKCksIDApOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDAuMSkuZmxvb3Io
KSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMC41KS5mbG9vcigpLCAwKTsKKyAgICBB
U1NFUlRfRVEoTGF5b3V0VW5pdCgwLjkpLmZsb29yKCksIDApOworICAgIEFTU0VSVF9FUShMYXlv
dXRVbml0KDEuMCkuZmxvb3IoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMS4xKS5m
bG9vcigpLCAxKTsKKyAgICAKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgtMC4xKS5mbG9vcigp
LCAtMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTAuNSkuZmxvb3IoKSwgLTEpOworICAg
IEFTU0VSVF9FUShMYXlvdXRVbml0KC0wLjkpLmZsb29yKCksIC0xKTsKKyAgICBBU1NFUlRfRVEo
TGF5b3V0VW5pdCgtMS4wKS5mbG9vcigpLCAtMSk7CisgICAgCisgICAgQVNTRVJUX0VRKExheW91
dFVuaXQoaW50TWF4Rm9yTGF5b3V0VW5pdCkuZmxvb3IoKSwgaW50TWF4Rm9yTGF5b3V0VW5pdCk7
CisKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdChpbnRNaW5Gb3JMYXlvdXRVbml0KS5mbG9vcigp
LCBpbnRNaW5Gb3JMYXlvdXRVbml0KTsKKyAgICBBU1NFUlRfRVEoKExheW91dFVuaXQoaW50TWlu
Rm9yTGF5b3V0VW5pdCkgKyBMYXlvdXRVbml0KDAuNSkpLmZsb29yKCksIGludE1pbkZvckxheW91
dFVuaXQpOworICAgIEFTU0VSVF9FUSgoTGF5b3V0VW5pdChpbnRNaW5Gb3JMYXlvdXRVbml0KSAr
IExheW91dFVuaXQoMSkpLmZsb29yKCksIGludE1pbkZvckxheW91dFVuaXQgKyAxKTsKK30KKwog
CiB9IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181208</attachid>
            <date>2013-01-03 13:05:16 -0800</date>
            <delta_ts>2013-01-03 13:52:26 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-105961-20130103130223.patch</filename>
            <type>text/plain</type>
            <size>5056</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzODcyOCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAxLTAyICBFbWlsIEEg
RWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4KKworICAgICAgICBGaXggb3ZlcmZsb3cgaW4gTGF5
b3V0VW5pdDo6Y2VpbCBhbmQgZmxvb3IgZm9yIFNBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1OTYxCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTGV2aSBXZWludHJhdWIuCisgICAgICAgIAorICAgICAgICBU
aGUgTGF5b3V0VW5pdDo6Y2VpbCBhbmQgZmxvb3IgbWV0aG9kcyBvdmVyZmxvd3MgaWYgZ2l2ZW4g
dGhlCisgICAgICAgIGludE1heEZvckxheW91dFVuaXQgYW5kIGludE1pbkZvckxheW91dFVuaXQg
dmFsdWVzIHJlc3BlY3RpdmVseS4KKyAgICAgICAgQ2hlY2sgZm9yIHRoZSBtYXgvbWluIHZhbHVl
IHRvIGF2b2lkIHRoaXMuCisKKyAgICAgICAgVGVzdDogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJD
b3JlL0xheW91dFVuaXQuY3BwCisKKyAgICAgICAgKiBwbGF0Zm9ybS9MYXlvdXRVbml0Lmg6Cisg
ICAgICAgIChXZWJDb3JlOjpMYXlvdXRVbml0OjpjZWlsKToKKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dFVuaXQ6OmZsb29yKToKKyAgICAgICAgQ2hlY2sgZm9yIHRoZSBtYXgvbWluIHZhbHVlIGFu
ZCByZXR1cm4gZWFybHkgdG8gYXZvaWQgb3ZlcmZsb3cuCisgICAgICAgIFVzZSB0aGUgVU5MSUtF
TFkgbWFjcm8gdG8gYXZvaWQgdGhlIGNvc3Qgb2YgYnJhbmNoIG1pc3ByZWRpY3Rpb24KKyAgICAg
ICAgZm9yIHRoZSBjb21tb24gY2FzZS4KKwogMjAxMy0wMS0wMyAgQWxleGlzIE1lbmFyZCAgPGFs
ZXhpc0B3ZWJraXQub3JnPgogCiAgICAgICAgIFF1ZXJ5aW5nIHRyYW5zaXRpb24tdGltaW5nLWZ1
bmN0aW9uIHZhbHVlIG9uIHRoZSBjb21wdXRlZCBzdHlsZSBkb2VzIG5vdCByZXR1cm4ga2V5d29y
ZHMgd2hlbiBpdCBzaG91bGQuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9MYXlvdXRV
bml0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGF5b3V0VW5pdC5o
CShyZXZpc2lvbiAxMzg3MjgpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9MYXlvdXRVbml0
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE5Niw2ICsxOTYsMTAgQEAgcHVibGljOgogI2VuZGlmCiAg
ICAgewogI2lmIEVOQUJMRShTVUJQSVhFTF9MQVlPVVQpCisjaWYgRU5BQkxFKFNBVFVSQVRFRF9M
QVlPVVRfQVJJVEhNRVRJQykKKyAgICAgICAgaWYgKFVOTElLRUxZKG1fdmFsdWUgPj0gSU5UX01B
WCAtIGtFZmZlY3RpdmVGaXhlZFBvaW50RGVub21pbmF0b3IgKyAxKSkKKyAgICAgICAgICAgIHJl
dHVybiBpbnRNYXhGb3JMYXlvdXRVbml0OworI2VuZGlmCiAgICAgICAgIGlmIChtX3ZhbHVlID49
IDApCiAgICAgICAgICAgICByZXR1cm4gKG1fdmFsdWUgKyBrRWZmZWN0aXZlRml4ZWRQb2ludERl
bm9taW5hdG9yIC0gMSkgLyBrRWZmZWN0aXZlRml4ZWRQb2ludERlbm9taW5hdG9yOwogICAgICAg
ICByZXR1cm4gdG9JbnQoKTsKQEAgLTIyMSw2ICsyMjUsMTAgQEAgcHVibGljOgogICAgIGludCBm
bG9vcigpIGNvbnN0CiAgICAgewogI2lmIEVOQUJMRShTVUJQSVhFTF9MQVlPVVQpCisjaWYgRU5B
QkxFKFNBVFVSQVRFRF9MQVlPVVRfQVJJVEhNRVRJQykKKyAgICAgICAgaWYgKFVOTElLRUxZKG1f
dmFsdWUgPD0gSU5UX01JTiArIGtFZmZlY3RpdmVGaXhlZFBvaW50RGVub21pbmF0b3IgLSAxKSkK
KyAgICAgICAgICAgIHJldHVybiBpbnRNaW5Gb3JMYXlvdXRVbml0OworI2VuZGlmCiAgICAgICAg
IGlmIChtX3ZhbHVlID49IDApCiAgICAgICAgICAgICByZXR1cm4gdG9JbnQoKTsKICAgICAgICAg
cmV0dXJuIChtX3ZhbHVlIC0ga0VmZmVjdGl2ZUZpeGVkUG9pbnREZW5vbWluYXRvciArIDEpIC8g
a0VmZmVjdGl2ZUZpeGVkUG9pbnREZW5vbWluYXRvcjsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzODcyOCkKKysrIFRvb2xz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDEzLTAxLTAyICBF
bWlsIEEgRWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4KKworICAgICAgICBGaXggb3ZlcmZsb3cg
aW4gTGF5b3V0VW5pdDo6Y2VpbCBhbmQgZmxvb3IgZm9yIFNBVFVSQVRFRF9MQVlPVVRfQVJJVEhN
RVRJQworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1
OTYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTGV2aSBXZWludHJhdWIuCisgICAgICAgIAorICAg
ICAgICBBZGQgdGVzdHMgZm9yIExheW91dFVuaXQ6OmNlaWwgYW5kIGZsb29yLgorCisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL0xheW91dFVuaXQuY3BwOgorICAgICAgICAo
VGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJKToKKwogMjAxMy0w
MS0wMyAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEdlbmVyYXRl
IGludGVybmFsLnNldHRpbmdzIGZyb20gU2V0dGluZ3MuaW4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViQ29yZS9MYXlvdXRVbml0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvTGF5b3V0VW5pdC5jcHAJKHJldmlzaW9uIDEzODcy
OCkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9MYXlvdXRVbml0LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTg3LDUgKzE4Nyw0NyBAQCBURVNUKFdlYkNvcmVMYXlvdXRVbml0
LCBMYXlvdXRVbml0RGl2aXNpCiAgICAgQVNTRVJUX0VRKChMYXlvdXRVbml0KGludE1heEZvckxh
eW91dFVuaXQpIC8gTGF5b3V0VW5pdCgwLjUpKS50b0ludCgpLCBpbnRNYXhGb3JMYXlvdXRVbml0
KTsKIH0KIAorVEVTVChXZWJDb3JlTGF5b3V0VW5pdCwgTGF5b3V0VW5pdENlaWwpCit7CisgICAg
QVNTRVJUX0VRKExheW91dFVuaXQoMCkuY2VpbCgpLCAwKTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0
VW5pdCgwLjEpLmNlaWwoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMC41KS5jZWls
KCksIDEpOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDAuOSkuY2VpbCgpLCAxKTsKKyAgICBB
U1NFUlRfRVEoTGF5b3V0VW5pdCgxLjApLmNlaWwoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91
dFVuaXQoMS4xKS5jZWlsKCksIDIpOworICAgIAorICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KC0w
LjEpLmNlaWwoKSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTAuNSkuY2VpbCgpLCAw
KTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgtMC45KS5jZWlsKCksIDApOworICAgIEFTU0VS
VF9FUShMYXlvdXRVbml0KC0xLjApLmNlaWwoKSwgLTEpOworICAgIAorICAgIEFTU0VSVF9FUShM
YXlvdXRVbml0KGludE1heEZvckxheW91dFVuaXQpLmNlaWwoKSwgaW50TWF4Rm9yTGF5b3V0VW5p
dCk7CisgICAgQVNTRVJUX0VRKChMYXlvdXRVbml0KGludE1heEZvckxheW91dFVuaXQpIC0gTGF5
b3V0VW5pdCgwLjUpKS5jZWlsKCksIGludE1heEZvckxheW91dFVuaXQpOworICAgIEFTU0VSVF9F
USgoTGF5b3V0VW5pdChpbnRNYXhGb3JMYXlvdXRVbml0KSAtIExheW91dFVuaXQoMSkpLmNlaWwo
KSwgaW50TWF4Rm9yTGF5b3V0VW5pdCAtIDEpOworCisgICAgQVNTRVJUX0VRKExheW91dFVuaXQo
aW50TWluRm9yTGF5b3V0VW5pdCkuY2VpbCgpLCBpbnRNaW5Gb3JMYXlvdXRVbml0KTsKK30KKwor
VEVTVChXZWJDb3JlTGF5b3V0VW5pdCwgTGF5b3V0VW5pdEZsb29yKQoreworICAgIEFTU0VSVF9F
UShMYXlvdXRVbml0KDApLmZsb29yKCksIDApOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KDAu
MSkuZmxvb3IoKSwgMCk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoMC41KS5mbG9vcigpLCAw
KTsKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgwLjkpLmZsb29yKCksIDApOworICAgIEFTU0VS
VF9FUShMYXlvdXRVbml0KDEuMCkuZmxvb3IoKSwgMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVu
aXQoMS4xKS5mbG9vcigpLCAxKTsKKyAgICAKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdCgtMC4x
KS5mbG9vcigpLCAtMSk7CisgICAgQVNTRVJUX0VRKExheW91dFVuaXQoLTAuNSkuZmxvb3IoKSwg
LTEpOworICAgIEFTU0VSVF9FUShMYXlvdXRVbml0KC0wLjkpLmZsb29yKCksIC0xKTsKKyAgICBB
U1NFUlRfRVEoTGF5b3V0VW5pdCgtMS4wKS5mbG9vcigpLCAtMSk7CisgICAgCisgICAgQVNTRVJU
X0VRKExheW91dFVuaXQoaW50TWF4Rm9yTGF5b3V0VW5pdCkuZmxvb3IoKSwgaW50TWF4Rm9yTGF5
b3V0VW5pdCk7CisKKyAgICBBU1NFUlRfRVEoTGF5b3V0VW5pdChpbnRNaW5Gb3JMYXlvdXRVbml0
KS5mbG9vcigpLCBpbnRNaW5Gb3JMYXlvdXRVbml0KTsKKyAgICBBU1NFUlRfRVEoKExheW91dFVu
aXQoaW50TWluRm9yTGF5b3V0VW5pdCkgKyBMYXlvdXRVbml0KDAuNSkpLmZsb29yKCksIGludE1p
bkZvckxheW91dFVuaXQpOworICAgIEFTU0VSVF9FUSgoTGF5b3V0VW5pdChpbnRNaW5Gb3JMYXlv
dXRVbml0KSArIExheW91dFVuaXQoMSkpLmZsb29yKCksIGludE1pbkZvckxheW91dFVuaXQgKyAx
KTsKK30KKwogCiB9IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>