<?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>61700</bug_id>
          
          <creation_ts>2011-05-28 21:06:18 -0700</creation_ts>
          <short_desc>Need WebKit2 API to get the size of the render tree</short_desc>
          <delta_ts>2011-05-29 14:25:16 -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>WebKit API</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Beth Dakin">bdakin</reporter>
          <assigned_to name="Beth Dakin">bdakin</assigned_to>
          <cc>bdakin</cc>
    
    <cc>darin</cc>
    
    <cc>mitz</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>411934</commentid>
    <comment_count>0</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-05-28 21:06:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/9512733&gt;

We need a WebKit 2 API to get the size of the render tree.

Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>411938</commentid>
    <comment_count>1</comment_count>
      <attachid>95280</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-05-28 21:12:39 -0700</bug_when>
    <thetext>Created attachment 95280
Patch

Right now this is set up to send the updated render tree size to the UI process in every FrameView::performPostLayoutTasks(). Then the value is cached in the UIProcess. While convenient, we may want to improve on this later to avoid sending so many messages. In the meantime, this does not have any measurable affect on performance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>411939</commentid>
    <comment_count>2</comment_count>
      <attachid>95280</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-05-28 21:19:13 -0700</bug_when>
    <thetext>Comment on attachment 95280
Patch

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

&gt; Source/WebCore/page/ChromeClient.h:328
&gt; +        virtual void setRenderTreeSize(size_t) { }

&apos;size&apos; is ambiguous: memory use, renderer count? A more explicit name would help.

&gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:801
&gt; +    m_page-&gt;send(Messages::WebPageProxy::SetRenderTreeSize(treeSize));

Is there an existing message that we pass whose payload can be expanded to carry these data?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>411943</commentid>
    <comment_count>3</comment_count>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2011-05-28 23:44:20 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 95280 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=95280&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/ChromeClient.h:328
&gt; &gt; +        virtual void setRenderTreeSize(size_t) { }
&gt; 
&gt; &apos;size&apos; is ambiguous: memory use, renderer count? A more explicit name would help.
&gt; 

I&apos;ll think on this.

&gt; &gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:801
&gt; &gt; +    m_page-&gt;send(Messages::WebPageProxy::SetRenderTreeSize(treeSize));
&gt; 
&gt; Is there an existing message that we pass whose payload can be expanded to carry these data?

We could be mistaken (must consult Sam or Anders), but Geoff and I think CoreIPC automatically bundles small messages into one bigger message.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>411986</commentid>
    <comment_count>4</comment_count>
      <attachid>95280</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-29 11:10:13 -0700</bug_when>
    <thetext>Comment on attachment 95280
Patch

Patch looks fine. No obvious better terminology to use beyond “render tree size”. I could imagine more-abstract names or more-concrete names.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>411987</commentid>
    <comment_count>5</comment_count>
      <attachid>95280</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-29 11:13:18 -0700</bug_when>
    <thetext>Comment on attachment 95280
Patch

Clearing flags on attachment: 95280

Committed r87638: &lt;http://trac.webkit.org/changeset/87638&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>411988</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-29 11:13:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>411992</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-29 12:02:46 -0700</bug_when>
    <thetext>Half the patch wasn’t landed the first time.

Committed the other half as r87639: &lt;http://trac.webkit.org/changeset/87639&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412026</commentid>
    <comment_count>8</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-05-29 14:25:16 -0700</bug_when>
    <thetext>&gt; We could be mistaken (must consult Sam or Anders), but Geoff and I think CoreIPC automatically bundles small messages into one bigger message.

CoreIPC doesn&apos;t have this functionality.  All messages get a mach message.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>95280</attachid>
            <date>2011-05-28 21:12:39 -0700</date>
            <delta_ts>2011-05-29 11:13:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>for-review.txt</filename>
            <type>text/plain</type>
            <size>9474</size>
            <attacher name="Beth Dakin">bdakin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg3NjMyKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTEtMDUtMjggIEJldGggRGFr
aW4gIDxiZGFraW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
MTcwMAorICAgICAgICBOZWVkIFdlYktpdDIgQVBJIHRvIGdldCB0aGUgc2l6ZSBvZiB0aGUgcmVu
ZGVyIHRyZWUKKyAgICAgICAgLWFuZCBjb3JyZXNwb25kaW5nLQorICAgICAgICA8cmRhcjovL3By
b2JsZW0vOTUxMjczMz4KKworICAgICAgICBOZXcgbWVtYmVyIHZhcmlhYmxlIG9uIFJlbmRlckFy
ZW5hIGtlZXBzIHRyYWNrIG9mIHRoZSBjdXJyZW50IGFtb3VudCBvZiBtZW1vcnkgCisgICAgICAg
IGFsbG9jYXRlZCBpbiB0aGUgYXJlbmEuIFRoZSBuZXcgY2xpZW50IGZ1bmN0aW9uIHNlbmRzIHRo
aXMgcGllY2Ugb2YgZGF0YSB0byAKKyAgICAgICAgV2ViS2l0LgorICAgICAgICAqIHBhZ2UvQ2hy
b21lQ2xpZW50Lmg6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWVDbGllbnQ6OnNldFJlbmRlclRy
ZWVTaXplKToKKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGcmFtZVZpZXc6OnBlcmZvcm1Qb3N0TGF5b3V0VGFza3MpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJBcmVuYS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJBcmVuYTo6UmVuZGVy
QXJlbmEpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQXJlbmE6OmFsbG9jYXRlKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckFyZW5hOjpmcmVlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyQXJlbmEuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckFyZW5hOjp0b3RhbFJlbmRlckFy
ZW5hU2l6ZSk6CisKIDIwMTEtMDUtMjggIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmYgR2FyZW4uCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvQ2hyb21lQ2xpZW50LmgJKHJldmlzaW9uIDg3NjI4KQorKysgU291cmNlL1dlYkNvcmUvcGFn
ZS9DaHJvbWVDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzI0LDYgKzMyNCw4IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIHdpbGxSdW5Nb2RhbERpYWxvZ0R1
cmluZ1BhZ2VEaXNtaXNzYWwoY29uc3QgRGlhbG9nVHlwZSYpIGNvbnN0IHsgfQogCiAgICAgICAg
IHZpcnR1YWwgdm9pZCBudW1XaGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKHVuc2lnbmVkKSA9IDA7
CisKKyAgICAgICAgdmlydHVhbCB2b2lkIHNldFJlbmRlclRyZWVTaXplKHNpemVfdCkgeyB9CiAg
ICAgICAgIAogICAgIHByb3RlY3RlZDoKICAgICAgICAgdmlydHVhbCB+Q2hyb21lQ2xpZW50KCkg
eyB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCShyZXZpc2lvbiA4NzYyOCkKKysr
IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTAs
NiArNTAsNyBAQAogI2luY2x1ZGUgIkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaCIKICNpbmNsdWRl
ICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKICNpbmNsdWRlICJPdmVyZmxvd0V2ZW50Lmgi
CisjaW5jbHVkZSAiUmVuZGVyQXJlbmEuaCIKICNpbmNsdWRlICJSZW5kZXJFbWJlZGRlZE9iamVj
dC5oIgogI2luY2x1ZGUgIlJlbmRlckZ1bGxTY3JlZW4uaCIKICNpbmNsdWRlICJSZW5kZXJMYXll
ci5oIgpAQCAtMjA2MSw2ICsyMDYyLDExIEBAIHZvaWQgRnJhbWVWaWV3OjpwZXJmb3JtUG9zdExh
eW91dFRhc2tzKCkKICAgICAgICAgbV9sYXN0Wm9vbUZhY3RvciA9IGN1cnJlbnRab29tRmFjdG9y
OwogICAgICAgICBpZiAocmVzaXplZCkKICAgICAgICAgICAgIG1fZnJhbWUtPmV2ZW50SGFuZGxl
cigpLT5zZW5kUmVzaXplRXZlbnQoKTsKKworICAgICAgICBpZiAoUGFnZSogcGFnZSA9IG1fZnJh
bWUtPnBhZ2UoKSkgeworICAgICAgICAgICAgaWYgKG1fZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1l
KCkgPT0gbV9mcmFtZSkKKyAgICAgICAgICAgICAgICBwYWdlLT5jaHJvbWUoKS0+Y2xpZW50KCkt
PnNldFJlbmRlclRyZWVTaXplKG1fZnJhbWUtPmRvY3VtZW50KCktPnJlbmRlckFyZW5hKCktPnRv
dGFsUmVuZGVyQXJlbmFTaXplKCkpOworICAgICAgICB9CiAgICAgfQogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQXJlbmEuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJBcmVuYS5jcHAJKHJldmlzaW9uIDg3NjI4KQorKysg
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckFyZW5hLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjYsNiArNjYsOCBAQCBSZW5kZXJBcmVuYTo6UmVuZGVyQXJlbmEodW5zaWduZWQgYXJlbmFT
CiAKICAgICAvLyBaZXJvIG91dCB0aGUgcmVjeWNsZXJzIGFycmF5CiAgICAgbWVtc2V0KG1fcmVj
eWNsZXJzLCAwLCBzaXplb2YobV9yZWN5Y2xlcnMpKTsKKworICAgIG1fdG90YWxTaXplID0gMDsK
IH0KIAogUmVuZGVyQXJlbmE6On5SZW5kZXJBcmVuYSgpCkBAIC03NSw2ICs3Nyw4IEBAIFJlbmRl
ckFyZW5hOjp+UmVuZGVyQXJlbmEoKQogCiB2b2lkKiBSZW5kZXJBcmVuYTo6YWxsb2NhdGUoc2l6
ZV90IHNpemUpCiB7CisgICAgbV90b3RhbFNpemUgKz0gc2l6ZTsKKwogI2lmbmRlZiBOREVCVUcK
ICAgICAvLyBVc2Ugc3RhbmRhcmQgbWFsbG9jIHNvIHRoYXQgbWVtb3J5IGRlYnVnZ2luZyB0b29s
cyB3b3JrLgogICAgIEFTU0VSVCh0aGlzKTsKQEAgLTExMyw2ICsxMTcsOCBAQCB2b2lkKiBSZW5k
ZXJBcmVuYTo6YWxsb2NhdGUoc2l6ZV90IHNpemUpCiAKIHZvaWQgUmVuZGVyQXJlbmE6OmZyZWUo
c2l6ZV90IHNpemUsIHZvaWQqIHB0cikKIHsKKyAgICBtX3RvdGFsU2l6ZSAtPSBzaXplOworCiAj
aWZuZGVmIE5ERUJVRwogICAgIC8vIFVzZSBzdGFuZGFyZCBmcmVlIHNvIHRoYXQgbWVtb3J5IGRl
YnVnZ2luZyB0b29scyB3b3JrLgogICAgIHZvaWQqIGJsb2NrID0gc3RhdGljX2Nhc3Q8Y2hhcio+
KHB0cikgLSBkZWJ1Z0hlYWRlclNpemU7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQXJlbmEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQXJlbmEuaAkocmV2aXNpb24gODc2MjgpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQXJlbmEuaAkod29ya2luZyBjb3B5KQpAQCAtNTMsNiArNTMsOCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCogYWxsb2NhdGUoc2l6ZV90KTsKICAgICB2b2lkIGZyZWUoc2l6ZV90LCB2b2lkKik7
CiAKKyAgICBzaXplX3QgdG90YWxSZW5kZXJBcmVuYVNpemUoKSBjb25zdCB7IHJldHVybiBtX3Rv
dGFsU2l6ZTsgfQorCiBwcml2YXRlOgogICAgIC8vIFVuZGVybHlpbmcgYXJlbmEgcG9vbAogICAg
IEFyZW5hUG9vbCBtX3Bvb2w7CkBAIC02MCw2ICs2Miw4IEBAIHByaXZhdGU6CiAgICAgLy8gVGhl
IHJlY3ljbGVyIGFycmF5IGlzIHNwYXJzZSB3aXRoIHRoZSBpbmRpY2VzIGJlaW5nIG11bHRpcGxl
cyBvZiA0LAogICAgIC8vIGkuZS4sIDAsIDQsIDgsIDEyLCAxNiwgMjAsIC4uLgogICAgIHZvaWQq
IG1fcmVjeWNsZXJzW2dNYXhSZWN5Y2xlZFNpemUgPj4gMl07CisKKyAgICBzaXplX3QgbV90b3Rh
bFNpemU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZp
c2lvbiA4NzYzMikKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDIzIEBACisyMDExLTA1LTI4ICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjE3MDAKKyAgICAgICAgTmVlZCBX
ZWJLaXQyIEFQSSB0byBnZXQgdGhlIHNpemUgb2YgdGhlIHJlbmRlciB0cmVlCisgICAgICAgIC1h
bmQgY29ycmVzcG9uZGluZy0KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzk1MTI3MzM+CisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcDoKKyAgICAgICAgKFdLUGFnZUdldFJl
bmRlclRyZWVTaXplKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
UHJveHk6OnJlbmRlclRyZWVTaXplKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpz
ZXRSZW5kZXJUcmVlU2l6ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNz
YWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6c2V0UmVuZGVyVHJl
ZVNpemUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xp
ZW50Lmg6CisKIDIwMTEtMDUtMjggIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbiwgTWFjaWVqIFN0YWNob3dp
YWsuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCShyZXZpc2lv
biA4NzYyOCkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkod29y
a2luZyBjb3B5KQpAQCAtNTMwLDYgKzUzMCw4IEBAIHB1YmxpYzoKICAgICAvLyBGSVhNRTogVGhp
cyBpcyBpbiB2aW9sYXRpb24gb2YgdGhlIG5vIHN5bmNocm9ub3VzIG1lc3NhZ2VzIHRvIHRoZSBX
ZWIgUHJvY2VzcyBwb2xpY3kgYW5kCiAgICAgLy8gc2hvdWxkIGJlIHJlbW92ZWQgYXMgc29vbiBh
cyBwb3NzaWJsZS4KICAgICBQYXNzUmVmUHRyPFdlYkltYWdlPiBjcmVhdGVTbmFwc2hvdE9mVmlz
aWJsZUNvbnRlbnQoKTsKKworICAgIHVpbnQ2NF90IHJlbmRlclRyZWVTaXplKCkgY29uc3QgeyBy
ZXR1cm4gbV9yZW5kZXJUcmVlU2l6ZTsgfQogIAogcHJpdmF0ZToKICAgICBXZWJQYWdlUHJveHko
UGFnZUNsaWVudCosIFBhc3NSZWZQdHI8V2ViUHJvY2Vzc1Byb3h5PiwgV2ViUGFnZUdyb3VwKiwg
dWludDY0X3QgcGFnZUlEKTsKQEAgLTc1NSw2ICs3NTcsOCBAQCBwcml2YXRlOgogICAgIHZvaWQg
c2NoZWR1bGVDaGlsZFdpbmRvd0dlb21ldHJ5VXBkYXRlKGNvbnN0IFdpbmRvd0dlb21ldHJ5Jik7
CiAjZW5kaWYKIAorICAgIHZvaWQgc2V0UmVuZGVyVHJlZVNpemUodWludDY0X3QgdHJlZVNpemUp
IHsgbV9yZW5kZXJUcmVlU2l6ZSA9IHRyZWVTaXplOyB9CisKICAgICBQYWdlQ2xpZW50KiBtX3Bh
Z2VDbGllbnQ7CiAgICAgV2ViTG9hZGVyQ2xpZW50IG1fbG9hZGVyQ2xpZW50OwogICAgIFdlYlBv
bGljeUNsaWVudCBtX3BvbGljeUNsaWVudDsKQEAgLTg4NCw2ICs4ODgsOCBAQCBwcml2YXRlOgog
CiAgICAgV2ViQ29yZTo6SW50UmVjdCBtX3Zpc2libGVTY3JvbGxlclRodW1iUmVjdDsKIAorICAg
IHVpbnQ2NF90IG1fcmVuZGVyVHJlZVNpemU7CisKICAgICBzdGF0aWMgV0tQYWdlRGVidWdQYWlu
dEZsYWdzIHNfZGVidWdQYWludEZsYWdzOwogfTsKIApJbmRleDogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCShyZXZpc2lvbiA4NzYyOCkK
KysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4JKHdv
cmtpbmcgY29weSkKQEAgLTQxLDYgKzQxLDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsK
ICAgICBUYWtlRm9jdXModWludDMyX3QgZGlyZWN0aW9uKQogICAgIEZvY3VzZWRGcmFtZUNoYW5n
ZWQodWludDY0X3QgZnJhbWVJRCkKICAgICBGcmFtZVNldExhcmdlc3RGcmFtZUNoYW5nZWQodWlu
dDY0X3QgZnJhbWVJRCkKKyAgICBTZXRSZW5kZXJUcmVlU2l6ZSh1aW50NjRfdCB0cmVlU2l6ZSkK
ICAgICBTZXRUb29sYmFyc0FyZVZpc2libGUoYm9vbCB0b29sYmFyc0FyZVZpc2libGUpCiAgICAg
R2V0VG9vbGJhcnNBcmVWaXNpYmxlKCkgLT4gKGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlKQogICAg
IFNldE1lbnVCYXJJc1Zpc2libGUoYm9vbCBtZW51QmFySXNWaXNpYmxlKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCShyZXZpc2lvbiA4NzYyOCkKKysr
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xNzEsNiArMTcxLDExIEBAIFdLRnJhbWVSZWYgV0tQYWdlR2V0RnJhbWVTZXRMYXJnZXN0
RnJhbWUKICAgICByZXR1cm4gdG9BUEkodG9JbXBsKHBhZ2VSZWYpLT5mcmFtZVNldExhcmdlc3RG
cmFtZSgpKTsKIH0KIAordWludDY0X3QgV0tQYWdlR2V0UmVuZGVyVHJlZVNpemUoV0tQYWdlUmVm
IHBhZ2UpCit7CisgICAgcmV0dXJuIHRvSW1wbChwYWdlKS0+cmVuZGVyVHJlZVNpemUoKTsKK30K
KwogI2lmIGRlZmluZWQoRU5BQkxFX0lOU1BFQ1RPUikgJiYgRU5BQkxFX0lOU1BFQ1RPUgogV0tJ
bnNwZWN0b3JSZWYgV0tQYWdlR2V0SW5zcGVjdG9yKFdLUGFnZVJlZiBwYWdlUmVmKQogewpJbmRl
eDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuaAkocmV2aXNpb24gODc2Mjgp
CisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI5OSw2ICsyOTksOCBAQCBXS19FWFBPUlQgV0tGcmFtZVJlZiBXS1BhZ2VHZXRGb2N1
c2VkRnJhCiBXS19FWFBPUlQgV0tGcmFtZVJlZiBXS1BhZ2VHZXRGcmFtZVNldExhcmdlc3RGcmFt
ZShXS1BhZ2VSZWYgcGFnZSk7CiBXS19FWFBPUlQgZG91YmxlIFdLUGFnZUdldEVzdGltYXRlZFBy
b2dyZXNzKFdLUGFnZVJlZiBwYWdlKTsKIAorV0tfRVhQT1JUIHVpbnQ2NF90IFdLUGFnZUdldFJl
bmRlclRyZWVTaXplKFdLUGFnZVJlZiBwYWdlKTsKKwogV0tfRVhQT1JUIHZvaWQgV0tQYWdlU2V0
TWVtb3J5Q2FjaGVDbGllbnRDYWxsc0VuYWJsZWQoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgbWVtb3J5
Q2FjaGVDbGllbnRDYWxsc0VuYWJsZWQpOwogCiAjaWYgZGVmaW5lZChFTkFCTEVfSU5TUEVDVE9S
KSAmJiBFTkFCTEVfSU5TUEVDVE9SCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCShyZXZp
c2lvbiA4NzYyOCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzk2LDQgKzc5Niw5IEBAIHZv
aWQgV2ViQ2hyb21lQ2xpZW50OjpudW1XaGVlbEV2ZW50SGFuZGwKICAgICBtX3BhZ2UtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TnVtV2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChjb3Vu
dCkpOwogfQogCit2b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0UmVuZGVyVHJlZVNpemUoc2l6ZV90
IHRyZWVTaXplKQoreworICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpT
ZXRSZW5kZXJUcmVlU2l6ZSh0cmVlU2l6ZSkpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQK
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAkocmV2aXNpb24gODc2MjgpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMjYsNiArMjI2LDggQEAgcHJpdmF0ZToKICAgICAKICAgICB2aXJ0dWFsIHZv
aWQgbnVtV2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZCh1bnNpZ25lZCk7CiAKKyAgICB2aXJ0dWFs
IHZvaWQgc2V0UmVuZGVyVHJlZVNpemUoc2l6ZV90KTsKKwogICAgIFN0cmluZyBtX2NhY2hlZFRv
b2xUaXA7CiAgICAgbXV0YWJsZSBSZWZQdHI8V2ViRnJhbWU+IG1fY2FjaGVkRnJhbWVTZXRMYXJn
ZXN0RnJhbWU7CiAgICAgbXV0YWJsZSBib29sIG1fY2FjaGVkTWFpbkZyYW1lSGFzSG9yaXpvbnRh
bFNjcm9sbGJhcjsK
</data>

          </attachment>
      

    </bug>

</bugzilla>