<?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>131874</bug_id>
          
          <creation_ts>2014-04-18 19:35:38 -0700</creation_ts>
          <short_desc>[iOS][WK2] Make dynamic viewport size update content aware</short_desc>
          <delta_ts>2014-04-21 13:11:10 -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="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>enrica</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1002122</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-04-18 19:35:38 -0700</bug_when>
    <thetext>[iOS][WK2] Make dynamic viewport size update content aware</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002125</commentid>
    <comment_count>1</comment_count>
      <attachid>229705</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-04-18 19:58:21 -0700</bug_when>
    <thetext>Created attachment 229705
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002150</commentid>
    <comment_count>2</comment_count>
      <attachid>229705</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-04-18 21:13:36 -0700</bug_when>
    <thetext>Comment on attachment 229705
Patch

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

&gt; Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm:1777
&gt; +    m_dynamicSizeUpdateHistory.add(std::pair&lt;IntSize, float&gt;(oldContentSize, oldPageScaleFactor), IntPoint(frameView.scrollOffset()));

I think you can use make_pair with no template arguments?

&gt; Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm:1794
&gt; +                Frame&amp; containingFrame = *node-&gt;document().frame();

why the containingFrame temporary?

&gt; Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm:1848
&gt; +        const auto&amp; previousPosition = m_dynamicSizeUpdateHistory.find(std::pair&lt;IntSize, float&gt;(newContentSize, scale));

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002634</commentid>
    <comment_count>3</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-04-21 13:11:10 -0700</bug_when>
    <thetext>Committed r167614: &lt;http://trac.webkit.org/changeset/167614&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229705</attachid>
            <date>2014-04-18 19:58:21 -0700</date>
            <delta_ts>2014-04-18 21:13:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-131874-20140418195759.patch</filename>
            <type>text/plain</type>
            <size>13481</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY3NTE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWNmODAxYmZlZjkyOGMy
YjJhYWUxN2YzMGQ3MDVjODdmNDM5ZDZkMS4uMDIxNDYyNDcyNWVlYjkzMzQxYzE3ZjJjMTc5MjQw
YmQzNGZmOWE1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE0LTA0LTE4ICBCZW5q
YW1pbiBQb3VsYWluICA8YnBvdWxhaW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdW1dLMl0g
TWFrZSBkeW5hbWljIHZpZXdwb3J0IHNpemUgdXBkYXRlIGNvbnRlbnQgYXdhcmUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTg3NAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gcG9zc2libGUsIGFk
anVzdCB0aGUgc2Nyb2xsIHBvc2l0aW9uIGJhc2VkIG9uIHRoZSBjb250ZW50IG9uIGR5bmFtaWMg
dmlld3BvcnQgcmVzaXplLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpXZWJQYWdlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6c2NhbGVQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cGFnZURp
ZFNjcm9sbCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAg
ICAgVGhlIHNjcm9sbGluZyBoZXVyaXN0aWMgYXJlIG5vdCBpbnZlcnRpYmxlLCBlc3BlY2lhbGx5
IHRoZSBjb250ZW50IGhldXJpc3RpYy4gVG8gaGF2ZSB0aGUgcmlnaHQKKyAgICAgICAgYmVoYXZp
b3Igd2hlbiBkb2luZyByZXNpemUgd2l0aG91dCBjaGFuZ2luZyB0aGUgcGFnZSwgd2Ugc2F2ZSB0
aGUgb2xkIHNjcm9sbCBwb3NpdGlvbiBhbmQgcmVzdG9yZQorICAgICAgICBpdCB3aGVuIHRoZSBj
b250ZW50IHNpemUgYW5kIHNjYWxlIGlzIHJlc3RvcmVkLgorCisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpk
eW5hbWljVmlld3BvcnRTaXplVXBkYXRlKToKKyAgICAgICAgT24gZHluYW1pYyB1cGRhdGUsIHN0
YXJ0IGJ5IGZpbmRpbmcgd2hhdCBub2RlIGlzIGF0IHRoZSBjZW50ZXIgb2YgdGhlIHNjcmVlbi4g
QWZ0ZXIgdGhlIGxheW91dCwgcHV0IHRoYXQKKyAgICAgICAgbm9kZSBiYWNrIGluIHRoZSBjZW50
ZXIuCisKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlVmlzaWJsZUNvbnRlbnRSZWN0
cyk6CisKIDIwMTQtMDQtMTggIEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4K
IAogICAgICAgICBDb3JyZWN0IHNvbWUgaXNzdWVzIHNtYWxsIGlzc3VlcyBpbiBXSzIgZmlsZSB1
cGxvYWQgSW5qZWN0ZWRCdW5kbGUgQVBJcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IGU0ZDIxYTAxNWZlNTdkNzVlYmVjNjc5NGNkZDJjNDEx
MjE5MjdhNzUuLjZkZmQxNjNkODc0ZWI1YmZmNDQ2MzgwZjhjNWZlYjBhM2FjYzIwNTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTI4OCw2
ICsyODgsNyBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFn
ZUNyZWF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKICAgICAsIG1fdXNlckhhc0NoYW5nZWRQ
YWdlU2NhbGVGYWN0b3IoZmFsc2UpCiAgICAgLCBtX3NjcmVlblNpemUocGFyYW1ldGVycy5zY3Jl
ZW5TaXplKQogICAgICwgbV9hdmFpbGFibGVTY3JlZW5TaXplKHBhcmFtZXRlcnMuYXZhaWxhYmxl
U2NyZWVuU2l6ZSkKKyAgICAsIG1faW5EeW5hbWljU2l6ZVVwZGF0ZShmYWxzZSkKICNlbmRpZgog
ICAgICwgbV9pbnNwZWN0b3JDbGllbnQoMCkKICAgICAsIG1fYmFja2dyb3VuZENvbG9yKENvbG9y
Ojp3aGl0ZSkKQEAgLTEyODAsNiArMTI4MSw4IEBAIHZvaWQgV2ViUGFnZTo6c2NhbGVQYWdlKGRv
dWJsZSBzY2FsZSwgY29uc3QgSW50UG9pbnQmIG9yaWdpbikKICAgICAgICAgcmV0dXJuOwogCiAj
aWYgUExBVEZPUk0oSU9TKQorICAgIGlmICghbV9pbkR5bmFtaWNTaXplVXBkYXRlKQorICAgICAg
ICBtX2R5bmFtaWNTaXplVXBkYXRlSGlzdG9yeS5jbGVhcigpOwogICAgIG1fc2NhbGVXYXNTZXRC
eVVJUHJvY2VzcyA9IGZhbHNlOwogI2VuZGlmCiAgICAgUGx1Z2luVmlldyogcGx1Z2luVmlldyA9
IHBsdWdpblZpZXdGb3JGcmFtZSgmbV9wYWdlLT5tYWluRnJhbWUoKSk7CkBAIC0xNjE0LDYgKzE2
MTcsMTAgQEAgUGFzc1JlZlB0cjxXZWJJbWFnZT4gV2ViUGFnZTo6c25hcHNob3RBdFNpemUoY29u
c3QgSW50UmVjdCYgcmVjdCwgY29uc3QgSW50U2l6ZSYKIAogdm9pZCBXZWJQYWdlOjpwYWdlRGlk
U2Nyb2xsKCkKIHsKKyNpZiBQTEFURk9STShJT1MpCisgICAgaWYgKCFtX2luRHluYW1pY1NpemVV
cGRhdGUpCisgICAgICAgIG1fZHluYW1pY1NpemVVcGRhdGVIaXN0b3J5LmNsZWFyKCk7CisjZW5k
aWYKICAgICBtX3VpQ2xpZW50LT5wYWdlRGlkU2Nyb2xsKHRoaXMpOwogCiAgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpQYWdlRGlkU2Nyb2xsKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggYTc3NDAyMmFmODU2NGQ0ZTFmOTdlOTNm
Y2JmZGQ4Y2ZhOGY5N2RmZC4uNTYzZWU5YmVkMTRjMzJmMzZiMDhkNGQ5ODE4MGQ3NTA5YmJjYjll
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC01
MCw2ICs1MCw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9FZGl0b3IuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL0ZyYW1lTG9hZGVyVHlwZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFJlY3QuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL0ludFNpemVIYXNoLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9QYWdlLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9QYWdlVmlzaWJpbGl0eVN0YXRlLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9TY3JvbGxUeXBlcy5oPgpAQCAtMTE1OCw2ICsxMTU5LDggQEAgcHJpdmF0ZToKICAgICBX
ZWJDb3JlOjpGbG9hdFNpemUgbV9zY3JlZW5TaXplOwogICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBt
X2F2YWlsYWJsZVNjcmVlblNpemU7CiAgICAgV2ViQ29yZTo6SW50U2l6ZSBtX2Jsb2NrU2VsZWN0
aW9uRGVzaXJlZFNpemU7CisgICAgYm9vbCBtX2luRHluYW1pY1NpemVVcGRhdGU7CisgICAgSGFz
aE1hcDxzdGQ6OnBhaXI8V2ViQ29yZTo6SW50U2l6ZSwgZG91YmxlPiwgV2ViQ29yZTo6SW50UG9p
bnQ+IG1fZHluYW1pY1NpemVVcGRhdGVIaXN0b3J5OwogI2VuZGlmCiAKICAgICBXZWJJbnNwZWN0
b3JDbGllbnQqIG1faW5zcGVjdG9yQ2xpZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCmluZGV4IDNjZGM3MTRhMDNjMzNmYWU2
YWNiMGUxNDhhMzhhNGNmZDMxYzRhZjUuLjM1NDA4ZWJmN2ZkYmQ0MTAyYTc4NDMwMmMxZTgyMTkx
ZjQ4ZDc2YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9p
b3MvV2ViUGFnZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
aW9zL1dlYlBhZ2VJT1MubW0KQEAgLTc1LDEyICs3NSwxNCBAQAogI2ltcG9ydCA8V2ViQ29yZS9Q
bGF0Zm9ybU1vdXNlRXZlbnQuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmVuZGVyQmxvY2suaD4KICNp
bXBvcnQgPFdlYkNvcmUvUmVuZGVySW1hZ2UuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUmVuZGVyVmll
dy5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZXNvdXJjZUJ1ZmZlci5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9TaGFyZWRCdWZmZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEl0ZXJhdG9yLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1Zpc2libGVVbml0cy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XS0NvbnRlbnRP
YnNlcnZhdGlvbi5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJFdmVudC5oPgorI2ltcG9ydCA8d3Rm
L1RlbXBvcmFyeUNoYW5nZS5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIApAQCAtMTc2
NCwxMSArMTc2Niw0MCBAQCB2b2lkIFdlYlBhZ2U6OnNldFZpZXdwb3J0Q29uZmlndXJhdGlvbk1p
bmltdW1MYXlvdXRTaXplKGNvbnN0IEludFNpemUmIHNpemUpCiAKIHZvaWQgV2ViUGFnZTo6ZHlu
YW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZShjb25zdCBJbnRTaXplJiBtaW5pbXVtTGF5b3V0U2l6ZSwg
Y29uc3QgRmxvYXRSZWN0JiB0YXJnZXRFeHBvc2VkQ29udGVudFJlY3QsIGNvbnN0IEZsb2F0UmVj
dCYgdGFyZ2V0VW5vYnNjdXJlZFJlY3QsIGRvdWJsZSB0YXJnZXRTY2FsZSkKIHsKKyAgICBUZW1w
b3JhcnlDaGFuZ2U8Ym9vbD4gZHluYW1pY1NpemVVcGRhdGVHdWFyZChtX2luRHluYW1pY1NpemVV
cGRhdGUsIHRydWUpOwogICAgIC8vIEZJWE1FOiB0aGlzIGRvZXMgbm90IGhhbmRsZSB0aGUgY2Fz
ZXMgd2hlcmUgdGhlIGNvbnRlbnQgd291bGQgY2hhbmdlIHRoZSBjb250ZW50IHNpemUgb3Igc2Ny
b2xsIHBvc2l0aW9uIGZyb20gSmF2YVNjcmlwdC4KICAgICAvLyBUbyBoYW5kbGUgdGhvc2UgY2Fz
ZXMsIHdlIHdvdWxkIG5lZWQgdG8gcmVkbyB0aGlzIGNvbXB1dGF0aW9uIG9uIGV2ZXJ5IGNoYW5n
ZSB1bnRpbCB0aGUgbmV4dCB2aXNpYmxlIGNvbnRlbnQgcmVjdCB1cGRhdGUuCiAKICAgICBGcmFt
ZVZpZXcmIGZyYW1lVmlldyA9ICptX3BhZ2UtPm1haW5GcmFtZSgpLnZpZXcoKTsKICAgICBJbnRT
aXplIG9sZENvbnRlbnRTaXplID0gZnJhbWVWaWV3LmNvbnRlbnRzU2l6ZSgpOworICAgIGZsb2F0
IG9sZFBhZ2VTY2FsZUZhY3RvciA9IG1fcGFnZS0+cGFnZVNjYWxlRmFjdG9yKCk7CisKKyAgICBt
X2R5bmFtaWNTaXplVXBkYXRlSGlzdG9yeS5hZGQoc3RkOjpwYWlyPEludFNpemUsIGZsb2F0Pihv
bGRDb250ZW50U2l6ZSwgb2xkUGFnZVNjYWxlRmFjdG9yKSwgSW50UG9pbnQoZnJhbWVWaWV3LnNj
cm9sbE9mZnNldCgpKSk7CisKKyAgICBSZWZQdHI8Tm9kZT4gb2xkTm9kZUF0Q2VudGVyOworICAg
IGZsb2F0IHJlbGF0aXZlSG9yaXpvbnRhbFBvc2l0aW9uSW5Ob2RlQXRDZW50ZXIgPSAwOworICAg
IGZsb2F0IHJlbGF0aXZlVmVydGljYWxQb3NpdGlvbkluTm9kZUF0Q2VudGVyID0gMDsKKyAgICB7
CisgICAgICAgIEludFJlY3QgdW5vYnNjdXJlZENvbnRlbnRSZWN0ID0gZnJhbWVWaWV3LnVub2Jz
Y3VyZWRDb250ZW50UmVjdCgpOworICAgICAgICBJbnRQb2ludCB1bm9ic2N1cmVkQ29udGVudFJl
Y3RDZW50ZXIgPSB1bm9ic2N1cmVkQ29udGVudFJlY3QuY2VudGVyKCk7CisKKyAgICAgICAgSGl0
VGVzdFJlcXVlc3QgcmVxdWVzdChIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHkgfCBIaXRUZXN0UmVx
dWVzdDo6QWN0aXZlIHwgSGl0VGVzdFJlcXVlc3Q6OkRpc2FsbG93U2hhZG93Q29udGVudCk7Cisg
ICAgICAgIEhpdFRlc3RSZXN1bHQgaGl0VGVzdFJlc3VsdCA9IEhpdFRlc3RSZXN1bHQodW5vYnNj
dXJlZENvbnRlbnRSZWN0Q2VudGVyKTsKKworICAgICAgICBSZW5kZXJWaWV3KiBtYWluRnJhbWVS
ZW5kZXJWaWV3ID0gZnJhbWVWaWV3LnJlbmRlclZpZXcoKTsKKyAgICAgICAgbWFpbkZyYW1lUmVu
ZGVyVmlldy0+aGl0VGVzdChyZXF1ZXN0LCBoaXRUZXN0UmVzdWx0KTsKKworICAgICAgICBpZiAo
Tm9kZSogbm9kZSA9IGhpdFRlc3RSZXN1bHQuaW5uZXJOb2RlKCkpIHsKKyAgICAgICAgICAgIGlm
IChSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gbm9kZS0+cmVuZGVyZXIoKSkgeworICAgICAgICAg
ICAgICAgIEZyYW1lJiBjb250YWluaW5nRnJhbWUgPSAqbm9kZS0+ZG9jdW1lbnQoKS5mcmFtZSgp
OworICAgICAgICAgICAgICAgIEZyYW1lVmlldyYgY29udGFpbmluZ1ZpZXcgPSAqY29udGFpbmlu
Z0ZyYW1lLnZpZXcoKTsKKyAgICAgICAgICAgICAgICBGbG9hdFJlY3QgYm91bmRpbmdCb3ggPSBj
b250YWluaW5nVmlldy5jb250ZW50c1RvUm9vdFZpZXcocmVuZGVyZXItPmFic29sdXRlQm91bmRp
bmdCb3hSZWN0KHRydWUpKTsKKyAgICAgICAgICAgICAgICByZWxhdGl2ZUhvcml6b250YWxQb3Np
dGlvbkluTm9kZUF0Q2VudGVyID0gKHVub2JzY3VyZWRDb250ZW50UmVjdENlbnRlci54KCkgLSBi
b3VuZGluZ0JveC54KCkpIC8gYm91bmRpbmdCb3gud2lkdGgoKTsKKyAgICAgICAgICAgICAgICBy
ZWxhdGl2ZVZlcnRpY2FsUG9zaXRpb25Jbk5vZGVBdENlbnRlciA9ICh1bm9ic2N1cmVkQ29udGVu
dFJlY3RDZW50ZXIueSgpIC0gYm91bmRpbmdCb3gueSgpKSAvIGJvdW5kaW5nQm94LmhlaWdodCgp
OworICAgICAgICAgICAgICAgIG9sZE5vZGVBdENlbnRlciA9IG5vZGU7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKyAgICB9CiAKICAgICBtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5zZXRNaW5p
bXVtTGF5b3V0U2l6ZShtaW5pbXVtTGF5b3V0U2l6ZSk7CiAgICAgSW50U2l6ZSBuZXdMYXlvdXRT
aXplID0gbV92aWV3cG9ydENvbmZpZ3VyYXRpb24ubGF5b3V0U2l6ZSgpOwpAQCAtMTgwNywyMSAr
MTgzOCwzNSBAQCB2b2lkIFdlYlBhZ2U6OmR5bmFtaWNWaWV3cG9ydFNpemVVcGRhdGUoY29uc3Qg
SW50U2l6ZSYgbWluaW11bUxheW91dFNpemUsIGNvbnN0CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBuZXdVbm9ic2N1cmVkUmVjdFkgLSBvYnNjdXJlZFRvcE1hcmdp
biwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1Vub2JzY3Vy
ZWRSZWN0V2lkdGggKyBvYnNjdXJlZExlZnRNYXJnaW4gKyBvYnNjdXJlZFJpZ2h0TWFyZ2luLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3VW5vYnNjdXJlZFJl
Y3RIZWlnaHQgKyBvYnNjdXJlZFRvcE1hcmdpbiArIG9ic2N1cmVkQm90dG9tTWFyZ2luKTsKLQot
ICAgICAgICAvLyBGSVhNRTogQWRqdXN0IHRoZSByZWN0cyBiYXNlZCBvbiB0aGUgY29udGVudC4K
ICAgICB9CiAKICAgICBpZiAob2xkQ29udGVudFNpemUgIT0gbmV3Q29udGVudFNpemUgfHwgc2Nh
bGUgIT0gdGFyZ2V0U2NhbGUpIHsKICAgICAgICAgLy8gU25hcCB0aGUgbmV3IHVub2JzY3VyZWQg
cmVjdCBiYWNrIGludG8gdGhlIGNvbnRlbnQgcmVjdC4KLSAgICAgICAgbmV3VW5vYnNjdXJlZENv
bnRlbnRSZWN0LnNldFdpZHRoKHN0ZDo6bWluKHN0YXRpY19jYXN0PGZsb2F0PihuZXdDb250ZW50
U2l6ZS53aWR0aCgpKSwgbmV3RXhwb3NlZENvbnRlbnRSZWN0LndpZHRoKCkpKTsKLSAgICAgICAg
bmV3VW5vYnNjdXJlZENvbnRlbnRSZWN0LnNldEhlaWdodChzdGQ6Om1pbihzdGF0aWNfY2FzdDxm
bG9hdD4obmV3Q29udGVudFNpemUuaGVpZ2h0KCkpLCBuZXdFeHBvc2VkQ29udGVudFJlY3QuaGVp
Z2h0KCkpKTsKLQotICAgICAgICBpZiAob2xkQ29udGVudFNpemUgIT0gbmV3Q29udGVudFNpemUp
IHsKLSAgICAgICAgICAgIC8vIElmIHRoZSBjb250ZW50IHNpemUgaGFzIGNoYW5nZWQsIGtlZXAg
dGhlIHNhbWUgcmVsYXRpdmUgcG9zaXRpb24uCi0gICAgICAgICAgICBGbG9hdFBvaW50IG9sZENv
bnRlbnRDZW50ZXIgPSB0YXJnZXRVbm9ic2N1cmVkUmVjdC5jZW50ZXIoKTsKLSAgICAgICAgICAg
IGZsb2F0IHJlbGF0aXZlSG9yaXpvbnRhbFBvc2l0aW9uID0gb2xkQ29udGVudENlbnRlci54KCkg
LyBvbGRDb250ZW50U2l6ZS53aWR0aCgpOwotICAgICAgICAgICAgZmxvYXQgcmVsYXRpdmVWZXJ0
aWNhbFBvc2l0aW9uID0gIG9sZENvbnRlbnRDZW50ZXIueSgpIC8gb2xkQ29udGVudFNpemUuaGVp
Z2h0KCk7Ci0gICAgICAgICAgICBGbG9hdFBvaW50IG5ld1JlbGF0aXZlQ29udGVudENlbnRlcihy
ZWxhdGl2ZUhvcml6b250YWxQb3NpdGlvbiAqIG5ld0NvbnRlbnRTaXplLndpZHRoKCksIHJlbGF0
aXZlVmVydGljYWxQb3NpdGlvbiAqIG5ld0NvbnRlbnRTaXplLmhlaWdodCgpKTsKKyAgICAgICAg
bmV3VW5vYnNjdXJlZENvbnRlbnRSZWN0LnNldFdpZHRoKHN0ZDo6bWluKHN0YXRpY19jYXN0PGZs
b2F0PihuZXdDb250ZW50U2l6ZS53aWR0aCgpKSwgbmV3VW5vYnNjdXJlZENvbnRlbnRSZWN0Lndp
ZHRoKCkpKTsKKyAgICAgICAgbmV3VW5vYnNjdXJlZENvbnRlbnRSZWN0LnNldEhlaWdodChzdGQ6
Om1pbihzdGF0aWNfY2FzdDxmbG9hdD4obmV3Q29udGVudFNpemUuaGVpZ2h0KCkpLCBuZXdVbm9i
c2N1cmVkQ29udGVudFJlY3QuaGVpZ2h0KCkpKTsKKworICAgICAgICBjb25zdCBhdXRvJiBwcmV2
aW91c1Bvc2l0aW9uID0gbV9keW5hbWljU2l6ZVVwZGF0ZUhpc3RvcnkuZmluZChzdGQ6OnBhaXI8
SW50U2l6ZSwgZmxvYXQ+KG5ld0NvbnRlbnRTaXplLCBzY2FsZSkpOworICAgICAgICBpZiAocHJl
dmlvdXNQb3NpdGlvbiAhPSBtX2R5bmFtaWNTaXplVXBkYXRlSGlzdG9yeS5lbmQoKSkgeworICAg
ICAgICAgICAgSW50UG9pbnQgcmVzdG9yZWRQb3NpdGlvbiA9IHByZXZpb3VzUG9zaXRpb24tPnZh
bHVlOworICAgICAgICAgICAgRmxvYXRQb2ludCBkZWx0YVBvc2l0aW9uKHJlc3RvcmVkUG9zaXRp
b24ueCgpIC0gbmV3VW5vYnNjdXJlZENvbnRlbnRSZWN0LngoKSwgcmVzdG9yZWRQb3NpdGlvbi55
KCkgLSBuZXdVbm9ic2N1cmVkQ29udGVudFJlY3QueSgpKTsKKyAgICAgICAgICAgIG5ld1Vub2Jz
Y3VyZWRDb250ZW50UmVjdC5tb3ZlQnkoZGVsdGFQb3NpdGlvbik7CisgICAgICAgICAgICBuZXdF
eHBvc2VkQ29udGVudFJlY3QubW92ZUJ5KGRlbHRhUG9zaXRpb24pOworICAgICAgICB9IGVsc2Ug
aWYgKG9sZENvbnRlbnRTaXplICE9IG5ld0NvbnRlbnRTaXplKSB7CisgICAgICAgICAgICBGbG9h
dFBvaW50IG5ld1JlbGF0aXZlQ29udGVudENlbnRlcjsKKworICAgICAgICAgICAgaWYgKFJlbmRl
ck9iamVjdCogcmVuZGVyZXIgPSBvbGROb2RlQXRDZW50ZXIgPyBvbGROb2RlQXRDZW50ZXItPnJl
bmRlcmVyKCkgOiBudWxscHRyKSB7CisgICAgICAgICAgICAgICAgRnJhbWUmIGNvbnRhaW5pbmdG
cmFtZSA9ICpvbGROb2RlQXRDZW50ZXItPmRvY3VtZW50KCkuZnJhbWUoKTsKKyAgICAgICAgICAg
ICAgICBGcmFtZVZpZXcmIGNvbnRhaW5pbmdWaWV3ID0gKmNvbnRhaW5pbmdGcmFtZS52aWV3KCk7
CisgICAgICAgICAgICAgICAgRmxvYXRSZWN0IG5ld0JvdW5kaW5nQm94ID0gY29udGFpbmluZ1Zp
ZXcuY29udGVudHNUb1Jvb3RWaWV3KHJlbmRlcmVyLT5hYnNvbHV0ZUJvdW5kaW5nQm94UmVjdCh0
cnVlKSk7CisgICAgICAgICAgICAgICAgbmV3UmVsYXRpdmVDb250ZW50Q2VudGVyID0gRmxvYXRQ
b2ludChuZXdCb3VuZGluZ0JveC54KCkgKyByZWxhdGl2ZUhvcml6b250YWxQb3NpdGlvbkluTm9k
ZUF0Q2VudGVyICogbmV3Qm91bmRpbmdCb3gud2lkdGgoKSwgbmV3Qm91bmRpbmdCb3gueSgpICsg
cmVsYXRpdmVWZXJ0aWNhbFBvc2l0aW9uSW5Ob2RlQXRDZW50ZXIgKiBuZXdCb3VuZGluZ0JveC5o
ZWlnaHQoKSk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIC8vIElmIHRo
ZSBjb250ZW50IHNpemUgaGFzIGNoYW5nZWQsIGtlZXAgdGhlIHNhbWUgcmVsYXRpdmUgcG9zaXRp
b24uCisgICAgICAgICAgICAgICAgRmxvYXRQb2ludCBvbGRDb250ZW50Q2VudGVyID0gdGFyZ2V0
VW5vYnNjdXJlZFJlY3QuY2VudGVyKCk7CisgICAgICAgICAgICAgICAgZmxvYXQgcmVsYXRpdmVI
b3Jpem9udGFsUG9zaXRpb24gPSBvbGRDb250ZW50Q2VudGVyLngoKSAvIG9sZENvbnRlbnRTaXpl
LndpZHRoKCk7CisgICAgICAgICAgICAgICAgZmxvYXQgcmVsYXRpdmVWZXJ0aWNhbFBvc2l0aW9u
ID0gIG9sZENvbnRlbnRDZW50ZXIueSgpIC8gb2xkQ29udGVudFNpemUuaGVpZ2h0KCk7CisgICAg
ICAgICAgICAgICAgbmV3UmVsYXRpdmVDb250ZW50Q2VudGVyID0gRmxvYXRQb2ludChyZWxhdGl2
ZUhvcml6b250YWxQb3NpdGlvbiAqIG5ld0NvbnRlbnRTaXplLndpZHRoKCksIHJlbGF0aXZlVmVy
dGljYWxQb3NpdGlvbiAqIG5ld0NvbnRlbnRTaXplLmhlaWdodCgpKTsKKyAgICAgICAgICAgIH0K
KwogICAgICAgICAgICAgRmxvYXRQb2ludCBuZXdVbm9ic2N1cmVkQ29udGVudFJlY3RDZW50ZXIg
PSBuZXdVbm9ic2N1cmVkQ29udGVudFJlY3QuY2VudGVyKCk7CiAgICAgICAgICAgICBGbG9hdFBv
aW50IHBvc2l0aW9uRGVsdGEobmV3UmVsYXRpdmVDb250ZW50Q2VudGVyLngoKSAtIG5ld1Vub2Jz
Y3VyZWRDb250ZW50UmVjdENlbnRlci54KCksIG5ld1JlbGF0aXZlQ29udGVudENlbnRlci55KCkg
LSBuZXdVbm9ic2N1cmVkQ29udGVudFJlY3RDZW50ZXIueSgpKTsKICAgICAgICAgICAgIG5ld1Vu
b2JzY3VyZWRDb250ZW50UmVjdC5tb3ZlQnkocG9zaXRpb25EZWx0YSk7CkBAIC0xODYzLDEwICsx
OTA4LDEwIEBAIHZvaWQgV2ViUGFnZTo6ZHluYW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZShjb25zdCBJ
bnRTaXplJiBtaW5pbXVtTGF5b3V0U2l6ZSwgY29uc3QKICAgICBtX2RyYXdpbmdBcmVhLT5zZXRF
eHBvc2VkQ29udGVudFJlY3QobmV3RXhwb3NlZENvbnRlbnRSZWN0KTsKIAogICAgIGlmIChzY2Fs
ZSA9PSB0YXJnZXRTY2FsZSkKLSAgICAgICAgc2NhbGVQYWdlKHNjYWxlLCBmcmFtZVZpZXcuc2Ny
b2xsUG9zaXRpb24oKSk7CisgICAgICAgIHNjYWxlUGFnZShzY2FsZSwgcm91bmRlZFVub2JzY3Vy
ZWRDb250ZW50UmVjdC5sb2NhdGlvbigpKTsKIAogICAgIGlmIChzY2FsZSAhPSB0YXJnZXRTY2Fs
ZSB8fCByb3VuZGVkSW50UG9pbnQodGFyZ2V0VW5vYnNjdXJlZFJlY3QubG9jYXRpb24oKSkgIT0g
cm91bmRlZFVub2JzY3VyZWRDb250ZW50UmVjdC5sb2NhdGlvbigpKQotICAgICAgICBzZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkR5bmFtaWNWaWV3cG9ydFVwZGF0ZUNoYW5nZWRUYXJnZXQo
c2NhbGUsIGZyYW1lVmlldy5zY3JvbGxQb3NpdGlvbigpKSk7CisgICAgICAgIHNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6RHluYW1pY1ZpZXdwb3J0VXBkYXRlQ2hhbmdlZFRhcmdldChzY2Fs
ZSwgcm91bmRlZFVub2JzY3VyZWRDb250ZW50UmVjdC5sb2NhdGlvbigpKSk7CiB9CiAKIHZvaWQg
V2ViUGFnZTo6dmlld3BvcnRDb25maWd1cmF0aW9uQ2hhbmdlZCgpCkBAIC0xOTU3LDIxICsyMDAy
LDI3IEBAIHZvaWQgV2ViUGFnZTo6dXBkYXRlVmlzaWJsZUNvbnRlbnRSZWN0cyhjb25zdCBWaXNp
YmxlQ29udGVudFJlY3RVcGRhdGVJbmZvJiB2aXNpCiAgICAgaWYgKGZsb2F0Qm91bmRlZFNjYWxl
ICE9IG1fcGFnZS0+cGFnZVNjYWxlRmFjdG9yKCkpIHsKICAgICAgICAgbV9zY2FsZVdhc1NldEJ5
VUlQcm9jZXNzID0gdHJ1ZTsKIAorICAgICAgICBtX2R5bmFtaWNTaXplVXBkYXRlSGlzdG9yeS5j
bGVhcigpOworCiAgICAgICAgIG1fcGFnZS0+c2V0UGFnZVNjYWxlRmFjdG9yKGZsb2F0Qm91bmRl
ZFNjYWxlLCBzY3JvbGxQb3NpdGlvbik7Ci0gICAgICAgIGlmIChtX2RyYXdpbmdBcmVhLT5sYXll
clRyZWVIb3N0KCkpCi0gICAgICAgICAgICBtX2RyYXdpbmdBcmVhLT5sYXllclRyZWVIb3N0KCkt
PmRldmljZU9yUGFnZVNjYWxlRmFjdG9yQ2hhbmdlZCgpOworICAgICAgICBpZiAoTGF5ZXJUcmVl
SG9zdCogbGF5ZXJUcmVlSG9zdCA9IG1fZHJhd2luZ0FyZWEtPmxheWVyVHJlZUhvc3QoKSkKKyAg
ICAgICAgICAgIGxheWVyVHJlZUhvc3QtPmRldmljZU9yUGFnZVNjYWxlRmFjdG9yQ2hhbmdlZCgp
OwogICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBhZ2VTY2FsZUZhY3RvckRp
ZENoYW5nZShmbG9hdEJvdW5kZWRTY2FsZSkpOwogICAgIH0KIAotICAgIG1fcGFnZS0+bWFpbkZy
YW1lKCkudmlldygpLT5zZXRTY3JvbGxPZmZzZXQoc2Nyb2xsUG9zaXRpb24pOwotICAgIG1fcGFn
ZS0+bWFpbkZyYW1lKCkudmlldygpLT5zZXRVbm9ic2N1cmVkQ29udGVudFJlY3Qocm91bmRlZFVu
b2JzY3VyZWRSZWN0KTsKKyAgICBGcmFtZVZpZXcmIGZyYW1lVmlldyA9ICptX3BhZ2UtPm1haW5G
cmFtZSgpLnZpZXcoKTsKKyAgICBpZiAoc2Nyb2xsUG9zaXRpb24gIT0gSW50UG9pbnQoZnJhbWVW
aWV3LnNjcm9sbE9mZnNldCgpKSkKKyAgICAgICAgbV9keW5hbWljU2l6ZVVwZGF0ZUhpc3Rvcnku
Y2xlYXIoKTsKKworICAgIGZyYW1lVmlldy5zZXRTY3JvbGxPZmZzZXQoc2Nyb2xsUG9zaXRpb24p
OworICAgIGZyYW1lVmlldy5zZXRVbm9ic2N1cmVkQ29udGVudFJlY3Qocm91bmRlZFVub2JzY3Vy
ZWRSZWN0KTsKIAogICAgIGRvdWJsZSBob3Jpem9udGFsVmVsb2NpdHkgPSB2aXNpYmxlQ29udGVu
dFJlY3RVcGRhdGVJbmZvLmhvcml6b250YWxWZWxvY2l0eSgpOwogICAgIGRvdWJsZSB2ZXJ0aWNh
bFZlbG9jaXR5ID0gdmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mby52ZXJ0aWNhbFZlbG9jaXR5
KCk7CiAgICAgZG91YmxlIHNjYWxlQ2hhbmdlUmF0ZSA9IHZpc2libGVDb250ZW50UmVjdFVwZGF0
ZUluZm8uc2NhbGVDaGFuZ2VSYXRlKCk7CiAgICAgYWRqdXN0VmVsb2NpdHlEYXRhRm9yQm91bmRl
ZFNjYWxlKGhvcml6b250YWxWZWxvY2l0eSwgdmVydGljYWxWZWxvY2l0eSwgc2NhbGVDaGFuZ2VS
YXRlLCB2aXNpYmxlQ29udGVudFJlY3RVcGRhdGVJbmZvLnNjYWxlKCksIGJvdW5kZWRTY2FsZSk7
CiAKLSAgICBtX3BhZ2UtPm1haW5GcmFtZSgpLnZpZXcoKS0+c2V0U2Nyb2xsVmVsb2NpdHkoaG9y
aXpvbnRhbFZlbG9jaXR5LCB2ZXJ0aWNhbFZlbG9jaXR5LCBzY2FsZUNoYW5nZVJhdGUsIHZpc2li
bGVDb250ZW50UmVjdFVwZGF0ZUluZm8udGltZXN0YW1wKCkpOworICAgIGZyYW1lVmlldy5zZXRT
Y3JvbGxWZWxvY2l0eShob3Jpem9udGFsVmVsb2NpdHksIHZlcnRpY2FsVmVsb2NpdHksIHNjYWxl
Q2hhbmdlUmF0ZSwgdmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mby50aW1lc3RhbXAoKSk7CiAK
ICAgICBpZiAodmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mby5pblN0YWJsZVN0YXRlKCkpCiAg
ICAgICAgIG1fcGFnZS0+bWFpbkZyYW1lKCkudmlldygpLT5zZXRDdXN0b21GaXhlZFBvc2l0aW9u
TGF5b3V0UmVjdChlbmNsb3NpbmdJbnRSZWN0KHZpc2libGVDb250ZW50UmVjdFVwZGF0ZUluZm8u
Y3VzdG9tRml4ZWRQb3NpdGlvblJlY3QoKSkpOwo=
</data>
<flag name="review"
          id="254072"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>