<?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>99003</bug_id>
          
          <creation_ts>2012-10-11 00:55:03 -0700</creation_ts>
          <short_desc>[CSS3 Media Queries] Aspect ratio value re-parsed when media query expression is evaluated</short_desc>
          <delta_ts>2012-10-11 03:12:02 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</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="Alexander Shalamov">alexander.shalamov</reporter>
          <assigned_to name="Alexander Shalamov">alexander.shalamov</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>kenneth</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>739676</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Shalamov">alexander.shalamov</who>
    <bug_when>2012-10-11 00:55:03 -0700</bug_when>
    <thetext>Aspect ratio css value is parsed every time when media query expression is evaluated.
That would degrade performance if there are multiple media queries or multiple media query listeners.

Aspect ratio css value should be constructed once and should not be parsed during expression evaluation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739700</commentid>
    <comment_count>1</comment_count>
      <attachid>168166</attachid>
    <who name="Alexander Shalamov">alexander.shalamov</who>
    <bug_when>2012-10-11 01:19:17 -0700</bug_when>
    <thetext>Created attachment 168166
Patch 1

Use CSSAspectRatioValue instead of CSSValueList to avoid aspect-ratio re-parsing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739733</commentid>
    <comment_count>2</comment_count>
      <attachid>168166</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-10-11 02:13:28 -0700</bug_when>
    <thetext>Comment on attachment 168166
Patch 1

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

&gt; Source/WebCore/css/MediaQueryExp.cpp:177
&gt; +            for (int i = 0; i &lt; 3; ++i, valueList-&gt;next()) {

I would use unsigned

&gt; Source/WebCore/css/MediaQueryExp.cpp:180
&gt; +                    !i ? numeratorValue = value-&gt;fValue : denominatorValue = value-&gt;fValue;

I think an if sentence would be more readable

&gt; Source/WebCore/css/MediaQueryExp.cpp:182
&gt; +                else if (i == 1 &amp;&amp; value-&gt;unit == CSSParserValue::Operator &amp;&amp; value-&gt;iValue == &apos;/&apos;)
&gt; +                    continue;

So can you get an integer in 0 and then nothing in 1? and then another integer in 2? What if there is no operator</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739743</commentid>
    <comment_count>3</comment_count>
    <who name="Alexander Shalamov">alexander.shalamov</who>
    <bug_when>2012-10-11 02:27:16 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 168166 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=168166&amp;action=review
&gt; 
&gt; So can you get an integer in 0 and then nothing in 1? and then another integer in 2? What if there is no operator

if there is nothing in 1, then else if (i == 1... will check that value at 1 must be operator &apos;/&apos;, otherwise aspect-ratio is invalid.

http://www.w3.org/TR/css3-mediaqueries/#values

&quot;The &lt;ratio&gt; value is a positive (not zero or negative) &lt;integer&gt; followed by optional whitespace, followed by a solidus (‘/’), followed by optional whitespace, followed by a positive &lt;integer&gt;.&quot;

I&apos;m fixing patch according to your comments. Will upload in few minutes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739752</commentid>
    <comment_count>4</comment_count>
      <attachid>168177</attachid>
    <who name="Alexander Shalamov">alexander.shalamov</who>
    <bug_when>2012-10-11 02:40:56 -0700</bug_when>
    <thetext>Created attachment 168177
Patch 2

- Use unsigned instead of int in for loop. MediaQueryExp.cpp:177
- Use if statement instead of ternary operator. MediaQueryExp.cpp:180</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739777</commentid>
    <comment_count>5</comment_count>
      <attachid>168177</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-11 03:11:59 -0700</bug_when>
    <thetext>Comment on attachment 168177
Patch 2

Clearing flags on attachment: 168177

Committed r131037: &lt;http://trac.webkit.org/changeset/131037&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739778</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-11 03:12:02 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168166</attachid>
            <date>2012-10-11 01:19:17 -0700</date>
            <delta_ts>2012-10-11 02:40:56 -0700</delta_ts>
            <desc>Patch 1</desc>
            <filename>webcore_mq_aspect_ratio_1.patch</filename>
            <type>text/plain</type>
            <size>7262</size>
            <attacher name="Alexander Shalamov">alexander.shalamov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNzQwYjk1Li4xZTI2MTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTItMTAtMTEgIEFsZXhhbmRlciBTaGFsYW1vdiAgPGFsZXhhbmRlci5zaGFsYW1vdkBp
bnRlbC5jb20+CisKKyAgICAgICAgW0NTUzMgTWVkaWEgUXVlcmllc10gQXNwZWN0IHJhdGlvIHZh
bHVlIHJlLXBhcnNlZCB3aGVuIG1lZGlhIHF1ZXJ5IGV4cHJlc3Npb24gaXMgZXZhbHVhdGVkCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05OTAwMworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBDU1NBc3Bl
Y3RSYXRpb1ZhbHVlIGluc3RlYWQgb2YgQ1NTVmFsdWVMaXN0IHRvIHN0b3JlIGFzcGVjdCByYXRp
byB2YWx1ZQorICAgICAgICBpbiBvcmRlciB0byBhdm9pZCByZS1wYXJzaW5nIG9mIGFzcGVjdCBy
YXRpbyBkYXRhIGR1cmluZyBtZWRpYSBleHByZXNzaW9uIGV2YWx1YXRpb24uCisKKyAgICAgICAg
dGVzdDogZmFzdC9tZWRpYS93M2MvdGVzdF9tZWRpYV9xdWVyaWVzLmh0bWwKKworICAgICAgICAq
IGNzcy9NZWRpYVF1ZXJ5RXZhbHVhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbXBhcmVB
c3BlY3RSYXRpb1ZhbHVlKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6
YXNwZWN0X3JhdGlvTWVkaWFGZWF0dXJlRXZhbCk6CisgICAgICAgIChXZWJDb3JlOjpkZXZpY2Vf
YXNwZWN0X3JhdGlvTWVkaWFGZWF0dXJlRXZhbCk6CisgICAgICAgICogY3NzL01lZGlhUXVlcnlF
eHAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFRdWVyeUV4cDo6TWVkaWFRdWVyeUV4cCk6
CisKIDIwMTItMTAtMTAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgRGlzYWxsb3cgZnVsbCBzY3JlZW4gbW9kZSBrZXlib2FyZCBhY2Nlc3MgYnkgZGVmYXVsdC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5RXZhbHVhdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5RXZhbHVhdG9yLmNwcAppbmRleCA3MTczZTEw
Li5kYWE0OTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFRdWVyeUV2YWx1
YXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVlcnlFdmFsdWF0b3IuY3Bw
CkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVkaWFR
dWVyeUV2YWx1YXRvci5oIgogCisjaW5jbHVkZSAiQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIgogI2lu
Y2x1ZGUgIkNocm9tZS5oIgogI2luY2x1ZGUgIkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUgIkNT
U1ByaW1pdGl2ZVZhbHVlLmgiCkBAIC0xNzIsMjkgKzE3Myw2IEBAIGJvb2wgTWVkaWFRdWVyeUV2
YWx1YXRvcjo6ZXZhbChjb25zdCBNZWRpYVF1ZXJ5U2V0KiBxdWVyeVNldCwgU3R5bGVSZXNvbHZl
ciogc3R5CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RhdGljIGJvb2wgcGFyc2VBc3BlY3RS
YXRpbyhDU1NWYWx1ZSogdmFsdWUsIGludCYgaCwgaW50JiB2KQotewotICAgIGlmICh2YWx1ZS0+
aXNWYWx1ZUxpc3QoKSkgewotICAgICAgICBDU1NWYWx1ZUxpc3QqIHZhbHVlTGlzdCA9IHN0YXRp
Y19jYXN0PENTU1ZhbHVlTGlzdCo+KHZhbHVlKTsKLSAgICAgICAgaWYgKHZhbHVlTGlzdC0+bGVu
Z3RoKCkgPT0gMykgewotICAgICAgICAgICAgQ1NTVmFsdWUqIGkwID0gdmFsdWVMaXN0LT5pdGVt
V2l0aG91dEJvdW5kc0NoZWNrKDApOwotICAgICAgICAgICAgQ1NTVmFsdWUqIGkxID0gdmFsdWVM
aXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDEpOwotICAgICAgICAgICAgQ1NTVmFsdWUqIGky
ID0gdmFsdWVMaXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDIpOwotICAgICAgICAgICAgaWYg
KGkwLT5pc1ByaW1pdGl2ZVZhbHVlKCkgJiYgc3RhdGljX2Nhc3Q8Q1NTUHJpbWl0aXZlVmFsdWUq
PihpMCktPmlzTnVtYmVyKCkKLSAgICAgICAgICAgICAgICAmJiBpMS0+aXNQcmltaXRpdmVWYWx1
ZSgpICYmIHN0YXRpY19jYXN0PENTU1ByaW1pdGl2ZVZhbHVlKj4oaTEpLT5pc1N0cmluZygpCi0g
ICAgICAgICAgICAgICAgJiYgaTItPmlzUHJpbWl0aXZlVmFsdWUoKSAmJiBzdGF0aWNfY2FzdDxD
U1NQcmltaXRpdmVWYWx1ZSo+KGkyKS0+aXNOdW1iZXIoKSkgewotICAgICAgICAgICAgICAgIFN0
cmluZyBzdHIgPSBzdGF0aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+KGkxKS0+Z2V0U3RyaW5n
VmFsdWUoKTsKLSAgICAgICAgICAgICAgICBpZiAoIXN0ci5pc051bGwoKSAmJiBzdHIubGVuZ3Ro
KCkgPT0gMSAmJiBzdHJbMF0gPT0gJy8nKSB7Ci0gICAgICAgICAgICAgICAgICAgIGggPSBzdGF0
aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+KGkwKS0+Z2V0SW50VmFsdWUoQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU19OVU1CRVIpOwotICAgICAgICAgICAgICAgICAgICB2ID0gc3RhdGljX2Nhc3Q8
Q1NTUHJpbWl0aXZlVmFsdWUqPihpMiktPmdldEludFZhbHVlKENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NfTlVNQkVSKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgICAg
ICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybiBmYWxz
ZTsKLX0KLQogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIGJvb2wgY29tcGFyZVZhbHVlKFQgYSwgVCBi
LCBNZWRpYUZlYXR1cmVQcmVmaXggb3ApCiB7CkBAIC0yMDksNiArMTg3LDE2IEBAIGJvb2wgY29t
cGFyZVZhbHVlKFQgYSwgVCBiLCBNZWRpYUZlYXR1cmVQcmVmaXggb3ApCiAgICAgcmV0dXJuIGZh
bHNlOwogfQogCitzdGF0aWMgYm9vbCBjb21wYXJlQXNwZWN0UmF0aW9WYWx1ZShDU1NWYWx1ZSog
dmFsdWUsIGludCB3aWR0aCwgaW50IGhlaWdodCwgTWVkaWFGZWF0dXJlUHJlZml4IG9wKQorewor
ICAgIGlmICh2YWx1ZS0+aXNBc3BlY3RSYXRpb1ZhbHVlKCkpIHsKKyAgICAgICAgQ1NTQXNwZWN0
UmF0aW9WYWx1ZSogYXNwZWN0UmF0aW8gPSBzdGF0aWNfY2FzdDxDU1NBc3BlY3RSYXRpb1ZhbHVl
Kj4odmFsdWUpOworICAgICAgICByZXR1cm4gY29tcGFyZVZhbHVlKHdpZHRoICogc3RhdGljX2Nh
c3Q8aW50Pihhc3BlY3RSYXRpby0+ZGVub21pbmF0b3JWYWx1ZSgpKSwgaGVpZ2h0ICogc3RhdGlj
X2Nhc3Q8aW50Pihhc3BlY3RSYXRpby0+bnVtZXJhdG9yVmFsdWUoKSksIG9wKTsKKyAgICB9CisK
KyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHN0YXRpYyBib29sIG51bWJlclZhbHVlKENTU1ZhbHVl
KiB2YWx1ZSwgZmxvYXQmIHJlc3VsdCkKIHsKICAgICBpZiAodmFsdWUtPmlzUHJpbWl0aXZlVmFs
dWUoKQpAQCAtMjYyLDEzICsyNTAsNyBAQCBzdGF0aWMgYm9vbCBhc3BlY3RfcmF0aW9NZWRpYUZl
YXR1cmVFdmFsKENTU1ZhbHVlKiB2YWx1ZSwgUmVuZGVyU3R5bGUqLCBGcmFtZSogZgogewogICAg
IGlmICh2YWx1ZSkgewogICAgICAgICBGcmFtZVZpZXcqIHZpZXcgPSBmcmFtZS0+dmlldygpOwot
ICAgICAgICBpbnQgd2lkdGggPSB2aWV3LT5sYXlvdXRXaWR0aCgpOwotICAgICAgICBpbnQgaGVp
Z2h0ID0gdmlldy0+bGF5b3V0SGVpZ2h0KCk7Ci0gICAgICAgIGludCBoID0gMDsKLSAgICAgICAg
aW50IHYgPSAwOwotICAgICAgICBpZiAocGFyc2VBc3BlY3RSYXRpbyh2YWx1ZSwgaCwgdikpCi0g
ICAgICAgICAgICByZXR1cm4gdiAhPSAwICYmIGNvbXBhcmVWYWx1ZSh3aWR0aCAqIHYsIGhlaWdo
dCAqIGgsIG9wKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICByZXR1cm4gY29tcGFy
ZUFzcGVjdFJhdGlvVmFsdWUodmFsdWUsIHZpZXctPmxheW91dFdpZHRoKCksIHZpZXctPmxheW91
dEhlaWdodCgpLCBvcCk7CiAgICAgfQogCiAgICAgLy8gKHssbWluLSxtYXgtfWFzcGVjdC1yYXRp
bykKQEAgLTI4MCwxMSArMjYyLDcgQEAgc3RhdGljIGJvb2wgZGV2aWNlX2FzcGVjdF9yYXRpb01l
ZGlhRmVhdHVyZUV2YWwoQ1NTVmFsdWUqIHZhbHVlLCBSZW5kZXJTdHlsZSosIEYKIHsKICAgICBp
ZiAodmFsdWUpIHsKICAgICAgICAgRmxvYXRSZWN0IHNnID0gc2NyZWVuUmVjdChmcmFtZS0+cGFn
ZSgpLT5tYWluRnJhbWUoKS0+dmlldygpKTsKLSAgICAgICAgaW50IGggPSAwOwotICAgICAgICBp
bnQgdiA9IDA7Ci0gICAgICAgIGlmIChwYXJzZUFzcGVjdFJhdGlvKHZhbHVlLCBoLCB2KSkKLSAg
ICAgICAgICAgIHJldHVybiB2ICE9IDAgICYmIGNvbXBhcmVWYWx1ZShzdGF0aWNfY2FzdDxpbnQ+
KHNnLndpZHRoKCkpICogdiwgc3RhdGljX2Nhc3Q8aW50PihzZy5oZWlnaHQoKSkgKiBoLCBvcCk7
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIGNvbXBhcmVBc3BlY3RSYXRp
b1ZhbHVlKHZhbHVlLCBzdGF0aWNfY2FzdDxpbnQ+KHNnLndpZHRoKCkpLCBzdGF0aWNfY2FzdDxp
bnQ+KHNnLmhlaWdodCgpKSwgb3ApOwogICAgIH0KIAogICAgIC8vICh7LG1pbi0sbWF4LX1kZXZp
Y2UtYXNwZWN0LXJhdGlvKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVl
cnlFeHAuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVlcnlFeHAuY3BwCmluZGV4IGRi
MjM5NDEuLmFmMDhmYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5
RXhwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFRdWVyeUV4cC5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJNZWRpYVF1ZXJ5RXhw
LmgiCiAKKyNpbmNsdWRlICJDU1NBc3BlY3RSYXRpb1ZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTUGFy
c2VyLmgiCiAjaW5jbHVkZSAiQ1NTUHJpbWl0aXZlVmFsdWUuaCIKICNpbmNsdWRlICJDU1NWYWx1
ZUxpc3QuaCIKQEAgLTE2NCwyOCArMTY1LDI5IEBAIGlubGluZSBNZWRpYVF1ZXJ5RXhwOjpNZWRp
YVF1ZXJ5RXhwKGNvbnN0IEF0b21pY1N0cmluZyYgbWVkaWFGZWF0dXJlLCBDU1NQYXJzZXJWCiAg
ICAgICAgICAgICAgICAgbV92YWx1ZSA9IENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUodmFsdWUt
PmZWYWx1ZSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpOwogCiAgICAgICAgICAgICBt
X2lzVmFsaWQgPSBtX3ZhbHVlOwotICAgICAgICB9IGVsc2UgaWYgKHZhbHVlTGlzdC0+c2l6ZSgp
ID4gMSAmJiBmZWF0dXJlV2l0aEFzcGVjdFJhdGlvKG1lZGlhRmVhdHVyZSkpIHsKKyAgICAgICAg
fSBlbHNlIGlmICh2YWx1ZUxpc3QtPnNpemUoKSA9PSAzICYmIGZlYXR1cmVXaXRoQXNwZWN0UmF0
aW8obWVkaWFGZWF0dXJlKSkgewogICAgICAgICAgICAgLy8gQ3JlYXRlIGxpc3Qgb2YgdmFsdWVz
LgogICAgICAgICAgICAgLy8gQ3VycmVudGx5IGFjY2VwdHMgb25seSA8aW50ZWdlcj4vPGludGVn
ZXI+LgogICAgICAgICAgICAgLy8gQXBwbGljYWJsZSB0byBkZXZpY2UtYXNwZWN0LXJhdGlvIGFu
ZCBhc3BlYy1yYXRpby4KLQotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKLSAgICAgICAgICAgIENTU1Bh
cnNlclZhbHVlKiB2YWx1ZSA9IHZhbHVlTGlzdC0+Y3VycmVudCgpOwogICAgICAgICAgICAgYm9v
bCBpc1ZhbGlkID0gdHJ1ZTsKLQotICAgICAgICAgICAgd2hpbGUgKHZhbHVlICYmIGlzVmFsaWQp
IHsKLSAgICAgICAgICAgICAgICBpZiAodmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFsdWU6Ok9w
ZXJhdG9yICYmIHZhbHVlLT5pVmFsdWUgPT0gJy8nKQotICAgICAgICAgICAgICAgICAgICBsaXN0
LT5hcHBlbmQoQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSgiLyIsIENTU1ByaW1pdGl2ZVZhbHVl
OjpDU1NfU1RSSU5HKSk7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAodmFsdWUtPnVuaXQgPT0g
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIgJiYgdmFsdWUtPmZWYWx1ZSA+IDAgJiYgdmFs
dWUtPmlzSW50KQotICAgICAgICAgICAgICAgICAgICBsaXN0LT5hcHBlbmQoQ1NTUHJpbWl0aXZl
VmFsdWU6OmNyZWF0ZSh2YWx1ZS0+ZlZhbHVlLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJF
UikpOwotICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGZsb2F0IG51bWVyYXRvclZh
bHVlID0gMDsKKyAgICAgICAgICAgIGZsb2F0IGRlbm9taW5hdG9yVmFsdWUgPSAwOworCisgICAg
ICAgICAgICAvLyBUaGUgYXNwZWN0LXJhdGlvIG11c3QgYmUgPGludGVnZXI+ICh3aGl0ZXNwYWNl
KT8gLyAod2hpdGVzcGFjZSk/IDxpbnRlZ2VyPi4KKyAgICAgICAgICAgIGZvciAoaW50IGkgPSAw
OyBpIDwgMzsgKytpLCB2YWx1ZUxpc3QtPm5leHQoKSkgeworICAgICAgICAgICAgICAgIGNvbnN0
IENTU1BhcnNlclZhbHVlKiB2YWx1ZSA9IHZhbHVlTGlzdC0+Y3VycmVudCgpOworICAgICAgICAg
ICAgICAgIGlmIChpICE9IDEgJiYgdmFsdWUtPnVuaXQgPT0gQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U19OVU1CRVIgJiYgdmFsdWUtPmZWYWx1ZSA+IDAgJiYgdmFsdWUtPmlzSW50KQorICAgICAgICAg
ICAgICAgICAgICAhaSA/IG51bWVyYXRvclZhbHVlID0gdmFsdWUtPmZWYWx1ZSA6IGRlbm9taW5h
dG9yVmFsdWUgPSB2YWx1ZS0+ZlZhbHVlOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGkgPT0g
MSAmJiB2YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6T3BlcmF0b3IgJiYgdmFsdWUtPmlW
YWx1ZSA9PSAnLycpCisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAg
ICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICBpc1ZhbGlkID0gZmFsc2U7Ci0KLSAgICAg
ICAgICAgICAgICB2YWx1ZSA9IHZhbHVlTGlzdC0+bmV4dCgpOworICAgICAgICAgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAg
IGlmIChpc1ZhbGlkKQotICAgICAgICAgICAgICAgIG1fdmFsdWUgPSBsaXN0LnJlbGVhc2UoKTsK
KyAgICAgICAgICAgICAgICBtX3ZhbHVlID0gQ1NTQXNwZWN0UmF0aW9WYWx1ZTo6Y3JlYXRlKG51
bWVyYXRvclZhbHVlLCBkZW5vbWluYXRvclZhbHVlKTsKIAogICAgICAgICAgICAgbV9pc1ZhbGlk
ID0gbV92YWx1ZTsKICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168177</attachid>
            <date>2012-10-11 02:40:56 -0700</date>
            <delta_ts>2012-10-11 03:11:59 -0700</delta_ts>
            <desc>Patch 2</desc>
            <filename>webcore_mq_aspect_ratio_2.patch</filename>
            <type>text/plain</type>
            <size>7349</size>
            <attacher name="Alexander Shalamov">alexander.shalamov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNzQwYjk1Li4xZTI2MTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTItMTAtMTEgIEFsZXhhbmRlciBTaGFsYW1vdiAgPGFsZXhhbmRlci5zaGFsYW1vdkBp
bnRlbC5jb20+CisKKyAgICAgICAgW0NTUzMgTWVkaWEgUXVlcmllc10gQXNwZWN0IHJhdGlvIHZh
bHVlIHJlLXBhcnNlZCB3aGVuIG1lZGlhIHF1ZXJ5IGV4cHJlc3Npb24gaXMgZXZhbHVhdGVkCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05OTAwMworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBDU1NBc3Bl
Y3RSYXRpb1ZhbHVlIGluc3RlYWQgb2YgQ1NTVmFsdWVMaXN0IHRvIHN0b3JlIGFzcGVjdCByYXRp
byB2YWx1ZQorICAgICAgICBpbiBvcmRlciB0byBhdm9pZCByZS1wYXJzaW5nIG9mIGFzcGVjdCBy
YXRpbyBkYXRhIGR1cmluZyBtZWRpYSBleHByZXNzaW9uIGV2YWx1YXRpb24uCisKKyAgICAgICAg
dGVzdDogZmFzdC9tZWRpYS93M2MvdGVzdF9tZWRpYV9xdWVyaWVzLmh0bWwKKworICAgICAgICAq
IGNzcy9NZWRpYVF1ZXJ5RXZhbHVhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbXBhcmVB
c3BlY3RSYXRpb1ZhbHVlKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6
YXNwZWN0X3JhdGlvTWVkaWFGZWF0dXJlRXZhbCk6CisgICAgICAgIChXZWJDb3JlOjpkZXZpY2Vf
YXNwZWN0X3JhdGlvTWVkaWFGZWF0dXJlRXZhbCk6CisgICAgICAgICogY3NzL01lZGlhUXVlcnlF
eHAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFRdWVyeUV4cDo6TWVkaWFRdWVyeUV4cCk6
CisKIDIwMTItMTAtMTAgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgRGlzYWxsb3cgZnVsbCBzY3JlZW4gbW9kZSBrZXlib2FyZCBhY2Nlc3MgYnkgZGVmYXVsdC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5RXZhbHVhdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5RXZhbHVhdG9yLmNwcAppbmRleCA3MTczZTEw
Li5kYWE0OTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFRdWVyeUV2YWx1
YXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVlcnlFdmFsdWF0b3IuY3Bw
CkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVkaWFR
dWVyeUV2YWx1YXRvci5oIgogCisjaW5jbHVkZSAiQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oIgogI2lu
Y2x1ZGUgIkNocm9tZS5oIgogI2luY2x1ZGUgIkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUgIkNT
U1ByaW1pdGl2ZVZhbHVlLmgiCkBAIC0xNzIsMjkgKzE3Myw2IEBAIGJvb2wgTWVkaWFRdWVyeUV2
YWx1YXRvcjo6ZXZhbChjb25zdCBNZWRpYVF1ZXJ5U2V0KiBxdWVyeVNldCwgU3R5bGVSZXNvbHZl
ciogc3R5CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RhdGljIGJvb2wgcGFyc2VBc3BlY3RS
YXRpbyhDU1NWYWx1ZSogdmFsdWUsIGludCYgaCwgaW50JiB2KQotewotICAgIGlmICh2YWx1ZS0+
aXNWYWx1ZUxpc3QoKSkgewotICAgICAgICBDU1NWYWx1ZUxpc3QqIHZhbHVlTGlzdCA9IHN0YXRp
Y19jYXN0PENTU1ZhbHVlTGlzdCo+KHZhbHVlKTsKLSAgICAgICAgaWYgKHZhbHVlTGlzdC0+bGVu
Z3RoKCkgPT0gMykgewotICAgICAgICAgICAgQ1NTVmFsdWUqIGkwID0gdmFsdWVMaXN0LT5pdGVt
V2l0aG91dEJvdW5kc0NoZWNrKDApOwotICAgICAgICAgICAgQ1NTVmFsdWUqIGkxID0gdmFsdWVM
aXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDEpOwotICAgICAgICAgICAgQ1NTVmFsdWUqIGky
ID0gdmFsdWVMaXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKDIpOwotICAgICAgICAgICAgaWYg
KGkwLT5pc1ByaW1pdGl2ZVZhbHVlKCkgJiYgc3RhdGljX2Nhc3Q8Q1NTUHJpbWl0aXZlVmFsdWUq
PihpMCktPmlzTnVtYmVyKCkKLSAgICAgICAgICAgICAgICAmJiBpMS0+aXNQcmltaXRpdmVWYWx1
ZSgpICYmIHN0YXRpY19jYXN0PENTU1ByaW1pdGl2ZVZhbHVlKj4oaTEpLT5pc1N0cmluZygpCi0g
ICAgICAgICAgICAgICAgJiYgaTItPmlzUHJpbWl0aXZlVmFsdWUoKSAmJiBzdGF0aWNfY2FzdDxD
U1NQcmltaXRpdmVWYWx1ZSo+KGkyKS0+aXNOdW1iZXIoKSkgewotICAgICAgICAgICAgICAgIFN0
cmluZyBzdHIgPSBzdGF0aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+KGkxKS0+Z2V0U3RyaW5n
VmFsdWUoKTsKLSAgICAgICAgICAgICAgICBpZiAoIXN0ci5pc051bGwoKSAmJiBzdHIubGVuZ3Ro
KCkgPT0gMSAmJiBzdHJbMF0gPT0gJy8nKSB7Ci0gICAgICAgICAgICAgICAgICAgIGggPSBzdGF0
aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+KGkwKS0+Z2V0SW50VmFsdWUoQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU19OVU1CRVIpOwotICAgICAgICAgICAgICAgICAgICB2ID0gc3RhdGljX2Nhc3Q8
Q1NTUHJpbWl0aXZlVmFsdWUqPihpMiktPmdldEludFZhbHVlKENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NfTlVNQkVSKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgICAg
ICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybiBmYWxz
ZTsKLX0KLQogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIGJvb2wgY29tcGFyZVZhbHVlKFQgYSwgVCBi
LCBNZWRpYUZlYXR1cmVQcmVmaXggb3ApCiB7CkBAIC0yMDksNiArMTg3LDE2IEBAIGJvb2wgY29t
cGFyZVZhbHVlKFQgYSwgVCBiLCBNZWRpYUZlYXR1cmVQcmVmaXggb3ApCiAgICAgcmV0dXJuIGZh
bHNlOwogfQogCitzdGF0aWMgYm9vbCBjb21wYXJlQXNwZWN0UmF0aW9WYWx1ZShDU1NWYWx1ZSog
dmFsdWUsIGludCB3aWR0aCwgaW50IGhlaWdodCwgTWVkaWFGZWF0dXJlUHJlZml4IG9wKQorewor
ICAgIGlmICh2YWx1ZS0+aXNBc3BlY3RSYXRpb1ZhbHVlKCkpIHsKKyAgICAgICAgQ1NTQXNwZWN0
UmF0aW9WYWx1ZSogYXNwZWN0UmF0aW8gPSBzdGF0aWNfY2FzdDxDU1NBc3BlY3RSYXRpb1ZhbHVl
Kj4odmFsdWUpOworICAgICAgICByZXR1cm4gY29tcGFyZVZhbHVlKHdpZHRoICogc3RhdGljX2Nh
c3Q8aW50Pihhc3BlY3RSYXRpby0+ZGVub21pbmF0b3JWYWx1ZSgpKSwgaGVpZ2h0ICogc3RhdGlj
X2Nhc3Q8aW50Pihhc3BlY3RSYXRpby0+bnVtZXJhdG9yVmFsdWUoKSksIG9wKTsKKyAgICB9CisK
KyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHN0YXRpYyBib29sIG51bWJlclZhbHVlKENTU1ZhbHVl
KiB2YWx1ZSwgZmxvYXQmIHJlc3VsdCkKIHsKICAgICBpZiAodmFsdWUtPmlzUHJpbWl0aXZlVmFs
dWUoKQpAQCAtMjYyLDEzICsyNTAsNyBAQCBzdGF0aWMgYm9vbCBhc3BlY3RfcmF0aW9NZWRpYUZl
YXR1cmVFdmFsKENTU1ZhbHVlKiB2YWx1ZSwgUmVuZGVyU3R5bGUqLCBGcmFtZSogZgogewogICAg
IGlmICh2YWx1ZSkgewogICAgICAgICBGcmFtZVZpZXcqIHZpZXcgPSBmcmFtZS0+dmlldygpOwot
ICAgICAgICBpbnQgd2lkdGggPSB2aWV3LT5sYXlvdXRXaWR0aCgpOwotICAgICAgICBpbnQgaGVp
Z2h0ID0gdmlldy0+bGF5b3V0SGVpZ2h0KCk7Ci0gICAgICAgIGludCBoID0gMDsKLSAgICAgICAg
aW50IHYgPSAwOwotICAgICAgICBpZiAocGFyc2VBc3BlY3RSYXRpbyh2YWx1ZSwgaCwgdikpCi0g
ICAgICAgICAgICByZXR1cm4gdiAhPSAwICYmIGNvbXBhcmVWYWx1ZSh3aWR0aCAqIHYsIGhlaWdo
dCAqIGgsIG9wKTsKLSAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICByZXR1cm4gY29tcGFy
ZUFzcGVjdFJhdGlvVmFsdWUodmFsdWUsIHZpZXctPmxheW91dFdpZHRoKCksIHZpZXctPmxheW91
dEhlaWdodCgpLCBvcCk7CiAgICAgfQogCiAgICAgLy8gKHssbWluLSxtYXgtfWFzcGVjdC1yYXRp
bykKQEAgLTI4MCwxMSArMjYyLDcgQEAgc3RhdGljIGJvb2wgZGV2aWNlX2FzcGVjdF9yYXRpb01l
ZGlhRmVhdHVyZUV2YWwoQ1NTVmFsdWUqIHZhbHVlLCBSZW5kZXJTdHlsZSosIEYKIHsKICAgICBp
ZiAodmFsdWUpIHsKICAgICAgICAgRmxvYXRSZWN0IHNnID0gc2NyZWVuUmVjdChmcmFtZS0+cGFn
ZSgpLT5tYWluRnJhbWUoKS0+dmlldygpKTsKLSAgICAgICAgaW50IGggPSAwOwotICAgICAgICBp
bnQgdiA9IDA7Ci0gICAgICAgIGlmIChwYXJzZUFzcGVjdFJhdGlvKHZhbHVlLCBoLCB2KSkKLSAg
ICAgICAgICAgIHJldHVybiB2ICE9IDAgICYmIGNvbXBhcmVWYWx1ZShzdGF0aWNfY2FzdDxpbnQ+
KHNnLndpZHRoKCkpICogdiwgc3RhdGljX2Nhc3Q8aW50PihzZy5oZWlnaHQoKSkgKiBoLCBvcCk7
Ci0gICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIGNvbXBhcmVBc3BlY3RSYXRp
b1ZhbHVlKHZhbHVlLCBzdGF0aWNfY2FzdDxpbnQ+KHNnLndpZHRoKCkpLCBzdGF0aWNfY2FzdDxp
bnQ+KHNnLmhlaWdodCgpKSwgb3ApOwogICAgIH0KIAogICAgIC8vICh7LG1pbi0sbWF4LX1kZXZp
Y2UtYXNwZWN0LXJhdGlvKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVl
cnlFeHAuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL01lZGlhUXVlcnlFeHAuY3BwCmluZGV4IGRi
MjM5NDEuLjFhMDZiNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9NZWRpYVF1ZXJ5
RXhwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvTWVkaWFRdWVyeUV4cC5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJNZWRpYVF1ZXJ5RXhw
LmgiCiAKKyNpbmNsdWRlICJDU1NBc3BlY3RSYXRpb1ZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTUGFy
c2VyLmgiCiAjaW5jbHVkZSAiQ1NTUHJpbWl0aXZlVmFsdWUuaCIKICNpbmNsdWRlICJDU1NWYWx1
ZUxpc3QuaCIKQEAgLTE2NCwyOCArMTY1LDMyIEBAIGlubGluZSBNZWRpYVF1ZXJ5RXhwOjpNZWRp
YVF1ZXJ5RXhwKGNvbnN0IEF0b21pY1N0cmluZyYgbWVkaWFGZWF0dXJlLCBDU1NQYXJzZXJWCiAg
ICAgICAgICAgICAgICAgbV92YWx1ZSA9IENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUodmFsdWUt
PmZWYWx1ZSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIpOwogCiAgICAgICAgICAgICBt
X2lzVmFsaWQgPSBtX3ZhbHVlOwotICAgICAgICB9IGVsc2UgaWYgKHZhbHVlTGlzdC0+c2l6ZSgp
ID4gMSAmJiBmZWF0dXJlV2l0aEFzcGVjdFJhdGlvKG1lZGlhRmVhdHVyZSkpIHsKKyAgICAgICAg
fSBlbHNlIGlmICh2YWx1ZUxpc3QtPnNpemUoKSA9PSAzICYmIGZlYXR1cmVXaXRoQXNwZWN0UmF0
aW8obWVkaWFGZWF0dXJlKSkgewogICAgICAgICAgICAgLy8gQ3JlYXRlIGxpc3Qgb2YgdmFsdWVz
LgogICAgICAgICAgICAgLy8gQ3VycmVudGx5IGFjY2VwdHMgb25seSA8aW50ZWdlcj4vPGludGVn
ZXI+LgogICAgICAgICAgICAgLy8gQXBwbGljYWJsZSB0byBkZXZpY2UtYXNwZWN0LXJhdGlvIGFu
ZCBhc3BlYy1yYXRpby4KLQotICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlQ29tbWFTZXBhcmF0ZWQoKTsKLSAgICAgICAgICAgIENTU1Bh
cnNlclZhbHVlKiB2YWx1ZSA9IHZhbHVlTGlzdC0+Y3VycmVudCgpOwogICAgICAgICAgICAgYm9v
bCBpc1ZhbGlkID0gdHJ1ZTsKLQotICAgICAgICAgICAgd2hpbGUgKHZhbHVlICYmIGlzVmFsaWQp
IHsKLSAgICAgICAgICAgICAgICBpZiAodmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFsdWU6Ok9w
ZXJhdG9yICYmIHZhbHVlLT5pVmFsdWUgPT0gJy8nKQotICAgICAgICAgICAgICAgICAgICBsaXN0
LT5hcHBlbmQoQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSgiLyIsIENTU1ByaW1pdGl2ZVZhbHVl
OjpDU1NfU1RSSU5HKSk7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAodmFsdWUtPnVuaXQgPT0g
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU19OVU1CRVIgJiYgdmFsdWUtPmZWYWx1ZSA+IDAgJiYgdmFs
dWUtPmlzSW50KQotICAgICAgICAgICAgICAgICAgICBsaXN0LT5hcHBlbmQoQ1NTUHJpbWl0aXZl
VmFsdWU6OmNyZWF0ZSh2YWx1ZS0+ZlZhbHVlLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJF
UikpOwotICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGZsb2F0IG51bWVyYXRvclZh
bHVlID0gMDsKKyAgICAgICAgICAgIGZsb2F0IGRlbm9taW5hdG9yVmFsdWUgPSAwOworCisgICAg
ICAgICAgICAvLyBUaGUgYXNwZWN0LXJhdGlvIG11c3QgYmUgPGludGVnZXI+ICh3aGl0ZXNwYWNl
KT8gLyAod2hpdGVzcGFjZSk/IDxpbnRlZ2VyPi4KKyAgICAgICAgICAgIGZvciAodW5zaWduZWQg
aSA9IDA7IGkgPCAzOyArK2ksIHZhbHVlTGlzdC0+bmV4dCgpKSB7CisgICAgICAgICAgICAgICAg
Y29uc3QgQ1NTUGFyc2VyVmFsdWUqIHZhbHVlID0gdmFsdWVMaXN0LT5jdXJyZW50KCk7CisgICAg
ICAgICAgICAgICAgaWYgKGkgIT0gMSAmJiB2YWx1ZS0+dW5pdCA9PSBDU1NQcmltaXRpdmVWYWx1
ZTo6Q1NTX05VTUJFUiAmJiB2YWx1ZS0+ZlZhbHVlID4gMCAmJiB2YWx1ZS0+aXNJbnQpIHsKKyAg
ICAgICAgICAgICAgICAgICAgaWYgKCFpKQorICAgICAgICAgICAgICAgICAgICAgICAgbnVtZXJh
dG9yVmFsdWUgPSB2YWx1ZS0+ZlZhbHVlOworICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgICAgICAgICBkZW5vbWluYXRvclZhbHVlID0gdmFsdWUtPmZWYWx1ZTsKKyAg
ICAgICAgICAgICAgICB9IGVsc2UgaWYgKGkgPT0gMSAmJiB2YWx1ZS0+dW5pdCA9PSBDU1NQYXJz
ZXJWYWx1ZTo6T3BlcmF0b3IgJiYgdmFsdWUtPmlWYWx1ZSA9PSAnLycpCisgICAgICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAg
ICAgICBpc1ZhbGlkID0gZmFsc2U7Ci0KLSAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlTGlz
dC0+bmV4dCgpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGlmIChpc1ZhbGlkKQotICAgICAgICAgICAg
ICAgIG1fdmFsdWUgPSBsaXN0LnJlbGVhc2UoKTsKKyAgICAgICAgICAgICAgICBtX3ZhbHVlID0g
Q1NTQXNwZWN0UmF0aW9WYWx1ZTo6Y3JlYXRlKG51bWVyYXRvclZhbHVlLCBkZW5vbWluYXRvclZh
bHVlKTsKIAogICAgICAgICAgICAgbV9pc1ZhbGlkID0gbV92YWx1ZTsKICAgICAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>