<?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>24017</bug_id>
          
          <creation_ts>2009-02-18 18:46:41 -0800</creation_ts>
          <short_desc>Remove some usage of Document in Worker.</short_desc>
          <delta_ts>2009-02-19 23:28:19 -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>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>24016</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dmitry Titov">dimich</reporter>
          <assigned_to name="Dmitry Titov">dimich</assigned_to>
          <cc>ap</cc>
    
    <cc>jianli</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>110161</commentid>
    <comment_count>0</comment_count>
    <who name="Dmitry Titov">dimich</who>
    <bug_when>2009-02-18 18:46:41 -0800</bug_when>
    <thetext>This is a small step toward making workers nestable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>110162</commentid>
    <comment_count>1</comment_count>
      <attachid>27774</attachid>
    <who name="Dmitry Titov">dimich</who>
    <bug_when>2009-02-18 19:11:23 -0800</bug_when>
    <thetext>Created attachment 27774
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>110186</commentid>
    <comment_count>2</comment_count>
      <attachid>27774</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-02-19 02:11:23 -0800</bug_when>
    <thetext>Comment on attachment 27774
Proposed patch

I don&apos;t think that the Worker object is the right place to store m_userAgent. It should be available from ScriptExecutionContext (calculated for Document, stored in WorkerContext).

We should de-virtualize completeURL() some day, as it&apos;s pretty much the same in both cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>110275</commentid>
    <comment_count>3</comment_count>
      <attachid>27808</attachid>
    <who name="Dmitry Titov">dimich</who>
    <bug_when>2009-02-19 12:44:09 -0800</bug_when>
    <thetext>Created attachment 27808
Updated patch.

Made userAgent a virtual on SEC.
Fixed couple of typos.

The un-virtualization of completeURL - I think it deserves a separate patch, together with charset. I&apos;l do that soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>110299</commentid>
    <comment_count>4</comment_count>
      <attachid>27808</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-02-19 14:22:15 -0800</bug_when>
    <thetext>Comment on attachment 27808
Updated patch.

r=me

&gt; +        virtual String userAgent(const KURL&amp;) const { return m_userAgent; }

There isn&apos;t much good in inlining this virtual function - it is unlikely to ever be called in a way that can be inlined. There also isn&apos;t a lot of use in keeping the implementation in header as documentation, nor a significant win in brevity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>110353</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry Titov">dimich</who>
    <bug_when>2009-02-19 23:28:19 -0800</bug_when>
    <thetext>Landed as http://trac.webkit.org/changeset/41102

Before landing, I&apos;ve removed inlining of WorkerContext::userAgent() as was suggested above.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>27774</attachid>
            <date>2009-02-18 19:11:23 -0800</date>
            <delta_ts>2009-02-19 12:44:09 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>5371</size>
            <attacher name="Dmitry Titov">dimich</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MDE5NDk2MS4uOTdmMGZiNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAwOS0wMi0xOCAgRG1pdHJ5IFRpdG92
ICA8ZGltaWNoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjQwMTcKKyAgICAgICAgUmVtb3ZlIHNvbWUgdXNhZ2Ugb2YgRG9jdW1lbnQgaW4gV29ya2VyLgor
CisgICAgICAgICogZG9tL1dvcmtlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXI6Oldv
cmtlcik6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXI6Om5vdGlmeUZpbmlzaGVkKToKKyAgICAg
ICAgKiBkb20vV29ya2VyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXI6OmNyZWF0ZSk6Cisg
ICAgICAgIEluc3RlYWQgb2YgRG9jdW1lbnQgdGhlIFdvcmtlciBjb25zdHJ1Y3RvciBub3cgZ2V0
cyBhIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuCisgICAgICAgIFN0YXJ0IHVzaW5nIHNvbWUgbWV0
aG9kcyBvbiBTRUMgKGxpa2UgY29tcGxldGVVUkwoKSkuCisgICAgICAgIEZvciBvdGhlcnMsIGV4
cGxpY2l0bHkgY2FzZSB0byBEb2N1bWVudCBhbmQgYWRkIGEgRklNWE1FLgorICAgICAgICBSZW1v
dmUgV29ya2VyOjpkb2N1bWVudCgpIHRvby4KKwogMjAwOS0wMi0xOCAgRGFuIEJlcm5zdGVpbiAg
PG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEJyYWR5IEVpZHNvbi4KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvZG9tL1dvcmtlci5jcHAgYi9XZWJDb3JlL2RvbS9Xb3JrZXIuY3Bw
CmluZGV4IGNjOTY0MTkuLjIwN2VlNjggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL1dvcmtlci5j
cHAKKysrIGIvV2ViQ29yZS9kb20vV29ya2VyLmNwcApAQCAtNDksMjggKzQ5LDMzIEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotV29ya2VyOjpXb3JrZXIoY29uc3QgU3RyaW5nJiB1cmwsIERv
Y3VtZW50KiBkb2MsIEV4Y2VwdGlvbkNvZGUmIGVjKQotICAgIDogQWN0aXZlRE9NT2JqZWN0KGRv
YywgdGhpcykKK1dvcmtlcjo6V29ya2VyKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBjb250ZXh0LCBFeGNlcHRpb25Db2RlJiBlYykKKyAgICA6IEFjdGl2ZURPTU9i
amVjdChjb250ZXh0LCB0aGlzKQogICAgICwgbV9jb250ZXh0UHJveHkoV29ya2VyQ29udGV4dFBy
b3h5OjpjcmVhdGUodGhpcykpCiB7Ci0gICAgbV9zY3JpcHRVUkwgPSBkb2MtPmNvbXBsZXRlVVJM
KHVybCk7CisgICAgbV9zY3JpcHRVUkwgPSBjb250ZXh0LT5jb21wbGV0ZVVSTCh1cmwpOwogICAg
IGlmICh1cmwuaXNFbXB0eSgpIHx8ICFtX3NjcmlwdFVSTC5pc1ZhbGlkKCkpIHsKICAgICAgICAg
ZWMgPSBTWU5UQVhfRVJSOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKCFkb2Mt
PnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2VzcyhTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1fc2Ny
aXB0VVJMKS5nZXQoKSkpIHsKKyAgICBpZiAoIWNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCktPmNh
bkFjY2VzcyhTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1fc2NyaXB0VVJMKS5nZXQoKSkpIHsKICAg
ICAgICAgZWMgPSBTRUNVUklUWV9FUlI7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBt
X2NhY2hlZFNjcmlwdCA9IGRvYy0+ZG9jTG9hZGVyKCktPnJlcXVlc3RTY3JpcHQobV9zY3JpcHRV
UkwsIGRvY3VtZW50KCktPmNoYXJzZXQoKSk7CisgICAgLy8gRklYTUU6ICdpbmhlcml0JyB1c2Vy
QWdlbnQsIGNoYXJzZXQgYW5kIGFjdHVhbCBsb2FkaW5nIHN1cHBvcnQgZnJvbSBvcmlnaW5hbCBk
b2N1bWVudCB0byBlbmFibGUgbmVzdGVkIHdvcmtlcnMuCisgICAgQVNTRVJUKHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKS0+aXNEb2N1bWVudCgpKTsKKyAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBz
dGF0aWNfY2FzdDxEb2N1bWVudCo+KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CisgICAgbV91
c2VyQWdlbnQgPSBkb2N1bWVudC0+ZnJhbWUoKSA/IGRvY3VtZW50LT5mcmFtZSgpLT5sb2FkZXIo
KS0+dXNlckFnZW50KG1fc2NyaXB0VVJMKSA6IFN0cmluZygpOworCisgICAgbV9jYWNoZWRTY3Jp
cHQgPSBkb2N1bWVudC0+ZG9jTG9hZGVyKCktPnJlcXVlc3RTY3JpcHQobV9zY3JpcHRVUkwsIGRv
Y3VtZW50LT5jaGFyc2V0KCkpOwogICAgIGlmICghbV9jYWNoZWRTY3JpcHQpIHsKICAgICAgICAg
ZGlzcGF0Y2hFcnJvckV2ZW50KCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBzZXRQ
ZW5kaW5nQWN0aXZpdHkodGhpcyk7ICAvLyBUaGUgd29ya2VyIGNvbnRleHQgZG9lcyBub3QgZXhp
c3Qgd2hpbGUgbG9hZGluZywgc28gd2UgbXVjaCBlbnN1cmUgdGhhdCB0aGUgd29ya2VyIG9iamVj
dCBpcyBub3QgY29sbGVjdGVkLCBhcyB3ZWxsIGFzIGl0cyBldmVudCBsaXN0ZW5lcnMuCisgICAg
c2V0UGVuZGluZ0FjdGl2aXR5KHRoaXMpOyAgLy8gVGhlIHdvcmtlciBjb250ZXh0IGRvZXMgbm90
IGV4aXN0IHdoaWxlIGxvYWRpbmcsIHNvIHdlIG11c3QgZW5zdXJlIHRoYXQgdGhlIHdvcmtlciBv
YmplY3QgaXMgbm90IGNvbGxlY3RlZCwgYXMgd2VsbCBhcyBpdHMgZXZlbnQgbGlzdGVuZXJzLgog
ICAgIG1fY2FjaGVkU2NyaXB0LT5hZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTgxLDEyICs4Niw2
IEBAIFdvcmtlcjo6fldvcmtlcigpCiAgICAgbV9jb250ZXh0UHJveHktPndvcmtlck9iamVjdERl
c3Ryb3llZCgpOwogfQogCi1Eb2N1bWVudCogV29ya2VyOjpkb2N1bWVudCgpIGNvbnN0Ci17Ci0g
ICAgQVNTRVJUKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+aXNEb2N1bWVudCgpKTsKLSAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwot
fQotCiB2b2lkIFdvcmtlcjo6cG9zdE1lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogewog
ICAgIG1fY29udGV4dFByb3h5LT5wb3N0TWVzc2FnZVRvV29ya2VyQ29udGV4dChtZXNzYWdlKTsK
QEAgLTEyMCw4ICsxMTksNyBAQCB2b2lkIFdvcmtlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVz
b3VyY2UqIHVudXNlZFJlc291cmNlKQogICAgIGlmIChtX2NhY2hlZFNjcmlwdC0+ZXJyb3JPY2N1
cnJlZCgpKQogICAgICAgICBkaXNwYXRjaEVycm9yRXZlbnQoKTsKICAgICBlbHNlIHsKLSAgICAg
ICAgU3RyaW5nIHVzZXJBZ2VudCA9IGRvY3VtZW50KCktPmZyYW1lKCkgPyBkb2N1bWVudCgpLT5m
cmFtZSgpLT5sb2FkZXIoKS0+dXNlckFnZW50KG1fc2NyaXB0VVJMKSA6IFN0cmluZygpOwotICAg
ICAgICBtX2NvbnRleHRQcm94eS0+c3RhcnRXb3JrZXJDb250ZXh0KG1fc2NyaXB0VVJMLCB1c2Vy
QWdlbnQsIG1fY2FjaGVkU2NyaXB0LT5zY3JpcHQoKSk7CisgICAgICAgIG1fY29udGV4dFByb3h5
LT5zdGFydFdvcmtlckNvbnRleHQobV9zY3JpcHRVUkwsIG1fdXNlckFnZW50LCBtX2NhY2hlZFNj
cmlwdC0+c2NyaXB0KCkpOwogICAgIH0KIAogICAgIG1fY2FjaGVkU2NyaXB0LT5yZW1vdmVDbGll
bnQodGhpcyk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9Xb3JrZXIuaCBiL1dlYkNvcmUvZG9t
L1dvcmtlci5oCmluZGV4IDY5ODFkNjEuLjQ0OGIxNzggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9t
L1dvcmtlci5oCisrKyBiL1dlYkNvcmUvZG9tL1dvcmtlci5oCkBAIC00Myw3ICs0Myw2IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIENhY2hlZFJlc291cmNlOwogICAgIGNsYXNz
IENhY2hlZFNjcmlwdDsKLSAgICBjbGFzcyBEb2N1bWVudDsKICAgICBjbGFzcyBTY3JpcHRFeGVj
dXRpb25Db250ZXh0OwogICAgIGNsYXNzIFN0cmluZzsKICAgICBjbGFzcyBXb3JrZXJDb250ZXh0
UHJveHk7CkBAIC01MiwxMSArNTEsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xh
c3MgV29ya2VyIDogcHVibGljIFJlZkNvdW50ZWQ8V29ya2VyPiwgcHVibGljIEFjdGl2ZURPTU9i
amVjdCwgcHJpdmF0ZSBDYWNoZWRSZXNvdXJjZUNsaWVudCwgcHVibGljIEV2ZW50VGFyZ2V0IHsK
ICAgICBwdWJsaWM6Ci0gICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdvcmtlcj4gY3JlYXRlKGNv
bnN0IFN0cmluZyYgdXJsLCBEb2N1bWVudCogZG9jdW1lbnQsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7
IHJldHVybiBhZG9wdFJlZihuZXcgV29ya2VyKHVybCwgZG9jdW1lbnQsIGVjKSk7IH0KKyAgICAg
ICAgc3RhdGljIFBhc3NSZWZQdHI8V29ya2VyPiBjcmVhdGUoY29uc3QgU3RyaW5nJiB1cmwsIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IHJldHVy
biBhZG9wdFJlZihuZXcgV29ya2VyKHVybCwgY29udGV4dCwgZWMpKTsgfQogICAgICAgICB+V29y
a2VyKCk7CiAKICAgICAgICAgdmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRF
eGVjdXRpb25Db250ZXh0KCkgY29uc3QgeyByZXR1cm4gQWN0aXZlRE9NT2JqZWN0OjpzY3JpcHRF
eGVjdXRpb25Db250ZXh0KCk7IH0KLSAgICAgICAgRG9jdW1lbnQqIGRvY3VtZW50KCkgY29uc3Q7
CiAKICAgICAgICAgdmlydHVhbCBXb3JrZXIqIHRvV29ya2VyKCkgeyByZXR1cm4gdGhpczsgfQog
CkBAIC04OSw3ICs4Nyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgRXZlbnRMaXN0
ZW5lciogb25lcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1fb25FcnJvckxpc3RlbmVyLmdldCgpOyB9
CiAKICAgICBwcml2YXRlOgotICAgICAgICBXb3JrZXIoY29uc3QgU3RyaW5nJiwgRG9jdW1lbnQq
LCBFeGNlcHRpb25Db2RlJik7CisgICAgICAgIFdvcmtlcihjb25zdCBTdHJpbmcmLCBTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgICAgIHZpcnR1YWwgdm9p
ZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSopOwogCkBAIC05Nyw2ICs5NSw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJnZXQo
KSB7IGRlcmVmKCk7IH0KIAogICAgICAgICBLVVJMIG1fc2NyaXB0VVJMOworICAgICAgICBTdHJp
bmcgbV91c2VyQWdlbnQ7CiAgICAgICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFNjcmlw
dD4gbV9jYWNoZWRTY3JpcHQ7CiAKICAgICAgICAgV29ya2VyQ29udGV4dFByb3h5KiBtX2NvbnRl
eHRQcm94eTsgLy8gVGhlIHByb3h5IG91dGxpdmVzIHRoZSB3b3JrZXIgdG8gcGVyZm9ybSB0aHJl
YWQgc2h1dGRvd24uCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>27808</attachid>
            <date>2009-02-19 12:44:09 -0800</date>
            <delta_ts>2009-02-19 14:22:15 -0800</delta_ts>
            <desc>Updated patch.</desc>
            <filename>patch_v2.txt</filename>
            <type>text/plain</type>
            <size>7607</size>
            <attacher name="Dmitry Titov">dimich</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MDE5NDk2MS4uMzE3OWY0ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMCBAQAorMjAwOS0wMi0xOSAgRG1pdHJ5IFRpdG92
ICA8ZGltaWNoQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjQwMTcKKyAgICAgICAgUmVtb3ZlIHNvbWUgdXNhZ2Ugb2YgRG9jdW1lbnQgaW4gV29ya2VyLgor
CisgICAgICAgICogZG9tL1dvcmtlckNvbnRleHQuaDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ckNvbnRleHQ6OnVzZXJBZ2VudCk6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50Ojp1c2VyQWdlbnQpOgorICAgICAgICAqIGRvbS9Eb2N1bWVu
dC5oOgorICAgICAgICAqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg6CisgICAgICAgIEFk
ZGVkIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6dXNlckFnZW50KGNvbnN0IEtVUkwm
KS4KKyAgICAgICAgRG9jdW1lbnQgaW1wbGVtZW50YXRpb24gdXNlcyBGcmFtZUxvYWRlcjo6dXNl
ckFnZW50IGFuZAorICAgICAgICBXb3JrZXJDb250ZXh0IHJlY2VpdmVzIHRoZSBzdHJpbmcgb24g
Y3JlYXRpb24gYW5kIHN0b3JlcyBpdCBpbiBhIG1lbWJlci4KKworICAgICAgICAqIGRvbS9Xb3Jr
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyOjpXb3JrZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6V29ya2VyOjpub3RpZnlGaW5pc2hlZCk6CisgICAgICAgICogZG9tL1dvcmtlci5oOgor
ICAgICAgICAoV2ViQ29yZTo6V29ya2VyOjpjcmVhdGUpOgorICAgICAgICBJbnN0ZWFkIG9mIERv
Y3VtZW50IHRoZSBXb3JrZXIgY29uc3RydWN0b3Igbm93IGdldHMgYSBTY3JpcHRFeGVjdXRpb25D
b250ZXh0LgorICAgICAgICBTdGFydCB1c2luZyBzb21lIG1ldGhvZHMgb24gU0VDIChsaWtlIGNv
bXBsZXRlVVJMKCkgYW5kIHVzZXJBZ2VudCgpKS4KKyAgICAgICAgRm9yIG90aGVycywgZXhwbGlj
aXRseSBjYXNlIHRvIERvY3VtZW50IGFuZCBhZGQgYSBGSVhNRS4KKyAgICAgICAgUmVtb3ZlIFdv
cmtlcjo6ZG9jdW1lbnQoKSB0b28uCisKIDIwMDktMDItMTggIERhbiBCZXJuc3RlaW4gIDxtaXR6
QGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBFaWRzb24uCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAK
aW5kZXggMThlNTJiNC4uMDE1OTdiZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCisrKyBiL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMTc5OCw2ICsxNzk4LDExIEBA
IHZvaWQgRG9jdW1lbnQ6OnVwZGF0ZUJhc2VVUkwoKQogICAgICAgICBtX21hcHBlZEVsZW1lbnRT
aGVldC0+c2V0SHJlZihtX2Jhc2VVUkwuc3RyaW5nKCkpOwogfQogCitTdHJpbmcgRG9jdW1lbnQ6
OnVzZXJBZ2VudChjb25zdCBLVVJMJiB1cmwpIGNvbnN0Cit7CisgICAgcmV0dXJuIGZyYW1lKCkg
PyBmcmFtZSgpLT5sb2FkZXIoKS0+dXNlckFnZW50KHVybCkgOiBTdHJpbmcoKTsKK30KKwogdm9p
ZCBEb2N1bWVudDo6c2V0Q1NTU3R5bGVTaGVldChjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3Ry
aW5nJiBjaGFyc2V0LCBjb25zdCBDYWNoZWRDU1NTdHlsZVNoZWV0KiBzaGVldCkKIHsKICAgICBt
X3NoZWV0ID0gQ1NTU3R5bGVTaGVldDo6Y3JlYXRlKHRoaXMsIHVybCwgY2hhcnNldCk7CmRpZmYg
LS1naXQgYS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApp
bmRleCAxMGRmMDBjLi5iZTA2OTYyIDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5o
CisrKyBiL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTQ0OCw2ICs0NDgsOCBAQCBwdWJsaWM6
CiAKICAgICBLVVJMIGNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYpIGNvbnN0OwogCisgICAgdmly
dHVhbCBTdHJpbmcgdXNlckFnZW50KGNvbnN0IEtVUkwmKSBjb25zdDsKKwogICAgIC8vIGZyb20g
Y2FjaGVkT2JqZWN0Q2xpZW50CiAgICAgdmlydHVhbCB2b2lkIHNldENTU1N0eWxlU2hlZXQoY29u
c3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmluZyYgY2hhcnNldCwgY29uc3QgQ2FjaGVkQ1NTU3R5
bGVTaGVldCopOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250
ZXh0LmggYi9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmgKaW5kZXggNmRkYzgw
MC4uY2YzMjdkNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4
dC5oCisrKyBiL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaApAQCAtNTksNiAr
NTksOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGNvbnN0IEtVUkwmIHVybCgpIGNv
bnN0IHsgcmV0dXJuIHZpcnR1YWxVUkwoKTsgfQogICAgICAgICBLVVJMIGNvbXBsZXRlVVJMKGNv
bnN0IFN0cmluZyYgdXJsKSBjb25zdCB7IHJldHVybiB2aXJ0dWFsQ29tcGxldGVVUkwodXJsKTsg
fQogCisgICAgICAgIHZpcnR1YWwgU3RyaW5nIHVzZXJBZ2VudChjb25zdCBLVVJMJikgY29uc3Qg
PSAwOworCiAgICAgICAgIFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbigpIGNvbnN0IHsg
cmV0dXJuIG1fc2VjdXJpdHlPcmlnaW4uZ2V0KCk7IH0KIAogICAgICAgICB2aXJ0dWFsIHZvaWQg
cmVwb3J0RXhjZXB0aW9uKGNvbnN0IFN0cmluZyYgZXJyb3JNZXNzYWdlLCBpbnQgbGluZU51bWJl
ciwgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpID0gMDsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9t
L1dvcmtlci5jcHAgYi9XZWJDb3JlL2RvbS9Xb3JrZXIuY3BwCmluZGV4IGNjOTY0MTkuLjBiYzlk
YTIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL1dvcmtlci5jcHAKKysrIGIvV2ViQ29yZS9kb20v
V29ya2VyLmNwcApAQCAtNDksMjggKzQ5LDMyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
V29ya2VyOjpXb3JrZXIoY29uc3QgU3RyaW5nJiB1cmwsIERvY3VtZW50KiBkb2MsIEV4Y2VwdGlv
bkNvZGUmIGVjKQotICAgIDogQWN0aXZlRE9NT2JqZWN0KGRvYywgdGhpcykKK1dvcmtlcjo6V29y
a2VyKGNvbnN0IFN0cmluZyYgdXJsLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBF
eGNlcHRpb25Db2RlJiBlYykKKyAgICA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0LCB0aGlzKQog
ICAgICwgbV9jb250ZXh0UHJveHkoV29ya2VyQ29udGV4dFByb3h5OjpjcmVhdGUodGhpcykpCiB7
Ci0gICAgbV9zY3JpcHRVUkwgPSBkb2MtPmNvbXBsZXRlVVJMKHVybCk7CisgICAgbV9zY3JpcHRV
UkwgPSBjb250ZXh0LT5jb21wbGV0ZVVSTCh1cmwpOwogICAgIGlmICh1cmwuaXNFbXB0eSgpIHx8
ICFtX3NjcmlwdFVSTC5pc1ZhbGlkKCkpIHsKICAgICAgICAgZWMgPSBTWU5UQVhfRVJSOwogICAg
ICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKCFkb2MtPnNlY3VyaXR5T3JpZ2luKCktPmNh
bkFjY2VzcyhTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1fc2NyaXB0VVJMKS5nZXQoKSkpIHsKKyAg
ICBpZiAoIWNvbnRleHQtPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2VzcyhTZWN1cml0eU9yaWdp
bjo6Y3JlYXRlKG1fc2NyaXB0VVJMKS5nZXQoKSkpIHsKICAgICAgICAgZWMgPSBTRUNVUklUWV9F
UlI7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX2NhY2hlZFNjcmlwdCA9IGRvYy0+
ZG9jTG9hZGVyKCktPnJlcXVlc3RTY3JpcHQobV9zY3JpcHRVUkwsIGRvY3VtZW50KCktPmNoYXJz
ZXQoKSk7CisgICAgLy8gRklYTUU6ICdpbmhlcml0JyBjaGFyc2V0IGFuZCBhY3R1YWwgbG9hZGlu
ZyBzdXBwb3J0IGZyb20gb3JpZ2luYWwgZG9jdW1lbnQgdG8gZW5hYmxlIG5lc3RlZCB3b3JrZXJz
LgorICAgIEFTU0VSVChzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmlzRG9jdW1lbnQoKSk7Cisg
ICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gc3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihzY3JpcHRFeGVj
dXRpb25Db250ZXh0KCkpOworCisgICAgbV9jYWNoZWRTY3JpcHQgPSBkb2N1bWVudC0+ZG9jTG9h
ZGVyKCktPnJlcXVlc3RTY3JpcHQobV9zY3JpcHRVUkwsIGRvY3VtZW50LT5jaGFyc2V0KCkpOwog
ICAgIGlmICghbV9jYWNoZWRTY3JpcHQpIHsKICAgICAgICAgZGlzcGF0Y2hFcnJvckV2ZW50KCk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBzZXRQZW5kaW5nQWN0aXZpdHkodGhpcyk7
ICAvLyBUaGUgd29ya2VyIGNvbnRleHQgZG9lcyBub3QgZXhpc3Qgd2hpbGUgbG9hZGluZywgc28g
d2UgbXVjaCBlbnN1cmUgdGhhdCB0aGUgd29ya2VyIG9iamVjdCBpcyBub3QgY29sbGVjdGVkLCBh
cyB3ZWxsIGFzIGl0cyBldmVudCBsaXN0ZW5lcnMuCisgICAgc2V0UGVuZGluZ0FjdGl2aXR5KHRo
aXMpOyAgLy8gVGhlIHdvcmtlciBjb250ZXh0IGRvZXMgbm90IGV4aXN0IHdoaWxlIGxvYWRpbmcs
IHNvIHdlIG11c3QgZW5zdXJlIHRoYXQgdGhlIHdvcmtlciBvYmplY3QgaXMgbm90IGNvbGxlY3Rl
ZCwgYXMgd2VsbCBhcyBpdHMgZXZlbnQgbGlzdGVuZXJzLgogICAgIG1fY2FjaGVkU2NyaXB0LT5h
ZGRDbGllbnQodGhpcyk7CiB9CiAKQEAgLTgxLDEyICs4NSw2IEBAIFdvcmtlcjo6fldvcmtlcigp
CiAgICAgbV9jb250ZXh0UHJveHktPndvcmtlck9iamVjdERlc3Ryb3llZCgpOwogfQogCi1Eb2N1
bWVudCogV29ya2VyOjpkb2N1bWVudCgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKHNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKS0+aXNEb2N1bWVudCgpKTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8RG9j
dW1lbnQqPihzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwotfQotCiB2b2lkIFdvcmtlcjo6cG9z
dE1lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogewogICAgIG1fY29udGV4dFByb3h5LT5w
b3N0TWVzc2FnZVRvV29ya2VyQ29udGV4dChtZXNzYWdlKTsKQEAgLTExOSwxMCArMTE3LDggQEAg
dm9pZCBXb3JrZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlKiB1bnVzZWRSZXNvdXJj
ZSkKIAogICAgIGlmIChtX2NhY2hlZFNjcmlwdC0+ZXJyb3JPY2N1cnJlZCgpKQogICAgICAgICBk
aXNwYXRjaEVycm9yRXZlbnQoKTsKLSAgICBlbHNlIHsKLSAgICAgICAgU3RyaW5nIHVzZXJBZ2Vu
dCA9IGRvY3VtZW50KCktPmZyYW1lKCkgPyBkb2N1bWVudCgpLT5mcmFtZSgpLT5sb2FkZXIoKS0+
dXNlckFnZW50KG1fc2NyaXB0VVJMKSA6IFN0cmluZygpOwotICAgICAgICBtX2NvbnRleHRQcm94
eS0+c3RhcnRXb3JrZXJDb250ZXh0KG1fc2NyaXB0VVJMLCB1c2VyQWdlbnQsIG1fY2FjaGVkU2Ny
aXB0LT5zY3JpcHQoKSk7Ci0gICAgfQorICAgIGVsc2UKKyAgICAgICAgbV9jb250ZXh0UHJveHkt
PnN0YXJ0V29ya2VyQ29udGV4dChtX3NjcmlwdFVSTCwgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
LT51c2VyQWdlbnQobV9zY3JpcHRVUkwpLCBtX2NhY2hlZFNjcmlwdC0+c2NyaXB0KCkpOwogCiAg
ICAgbV9jYWNoZWRTY3JpcHQtPnJlbW92ZUNsaWVudCh0aGlzKTsKICAgICBtX2NhY2hlZFNjcmlw
dCA9IDA7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9Xb3JrZXIuaCBiL1dlYkNvcmUvZG9tL1dv
cmtlci5oCmluZGV4IDY5ODFkNjEuLmQwNWY5ZDUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL1dv
cmtlci5oCisrKyBiL1dlYkNvcmUvZG9tL1dvcmtlci5oCkBAIC00Myw3ICs0Myw2IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIENhY2hlZFJlc291cmNlOwogICAgIGNsYXNzIENh
Y2hlZFNjcmlwdDsKLSAgICBjbGFzcyBEb2N1bWVudDsKICAgICBjbGFzcyBTY3JpcHRFeGVjdXRp
b25Db250ZXh0OwogICAgIGNsYXNzIFN0cmluZzsKICAgICBjbGFzcyBXb3JrZXJDb250ZXh0UHJv
eHk7CkBAIC01MiwxMSArNTEsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3Mg
V29ya2VyIDogcHVibGljIFJlZkNvdW50ZWQ8V29ya2VyPiwgcHVibGljIEFjdGl2ZURPTU9iamVj
dCwgcHJpdmF0ZSBDYWNoZWRSZXNvdXJjZUNsaWVudCwgcHVibGljIEV2ZW50VGFyZ2V0IHsKICAg
ICBwdWJsaWM6Ci0gICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdvcmtlcj4gY3JlYXRlKGNvbnN0
IFN0cmluZyYgdXJsLCBEb2N1bWVudCogZG9jdW1lbnQsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IHJl
dHVybiBhZG9wdFJlZihuZXcgV29ya2VyKHVybCwgZG9jdW1lbnQsIGVjKSk7IH0KKyAgICAgICAg
c3RhdGljIFBhc3NSZWZQdHI8V29ya2VyPiBjcmVhdGUoY29uc3QgU3RyaW5nJiB1cmwsIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IHJldHVybiBh
ZG9wdFJlZihuZXcgV29ya2VyKHVybCwgY29udGV4dCwgZWMpKTsgfQogICAgICAgICB+V29ya2Vy
KCk7CiAKICAgICAgICAgdmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVj
dXRpb25Db250ZXh0KCkgY29uc3QgeyByZXR1cm4gQWN0aXZlRE9NT2JqZWN0OjpzY3JpcHRFeGVj
dXRpb25Db250ZXh0KCk7IH0KLSAgICAgICAgRG9jdW1lbnQqIGRvY3VtZW50KCkgY29uc3Q7CiAK
ICAgICAgICAgdmlydHVhbCBXb3JrZXIqIHRvV29ya2VyKCkgeyByZXR1cm4gdGhpczsgfQogCkBA
IC04OSw3ICs4Nyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgRXZlbnRMaXN0ZW5l
ciogb25lcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1fb25FcnJvckxpc3RlbmVyLmdldCgpOyB9CiAK
ICAgICBwcml2YXRlOgotICAgICAgICBXb3JrZXIoY29uc3QgU3RyaW5nJiwgRG9jdW1lbnQqLCBF
eGNlcHRpb25Db2RlJik7CisgICAgICAgIFdvcmtlcihjb25zdCBTdHJpbmcmLCBTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgICAgIHZpcnR1YWwgdm9pZCBu
b3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSopOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Rv
bS9Xb3JrZXJDb250ZXh0LmggYi9XZWJDb3JlL2RvbS9Xb3JrZXJDb250ZXh0LmgKaW5kZXggNzQ5
ZTJhMS4uZmFjZmJhNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vV29ya2VyQ29udGV4dC5oCisr
KyBiL1dlYkNvcmUvZG9tL1dvcmtlckNvbnRleHQuaApAQCAtNjIsNiArNjIsOCBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgICAgIGNvbnN0IEtVUkwmIHVybCgpIGNvbnN0IHsgcmV0dXJuIG1f
dXJsOyB9CiAgICAgICAgIEtVUkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAK
KyAgICAgICAgdmlydHVhbCBTdHJpbmcgdXNlckFnZW50KGNvbnN0IEtVUkwmKSBjb25zdCB7IHJl
dHVybiBtX3VzZXJBZ2VudDsgfQorCiAgICAgICAgIFdvcmtlckxvY2F0aW9uKiBsb2NhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fbG9jYXRpb24uZ2V0KCk7IH0KICAgICAgICAgV29ya2VyTmF2aWdh
dG9yKiBuYXZpZ2F0b3IoKSBjb25zdDsKIAo=
</data>
<flag name="review"
          id="13521"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>