<?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>108514</bug_id>
          
          <creation_ts>2013-01-31 12:30:56 -0800</creation_ts>
          <short_desc>Get rid of IncomingMessage</short_desc>
          <delta_ts>2013-01-31 12:48:39 -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>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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>821836</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-01-31 12:30:56 -0800</bug_when>
    <thetext>Get rid of IncomingMessage</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821837</commentid>
    <comment_count>1</comment_count>
      <attachid>185838</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-01-31 12:31:39 -0800</bug_when>
    <thetext>Created attachment 185838
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821848</commentid>
    <comment_count>2</comment_count>
      <attachid>185838</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-01-31 12:40:24 -0800</bug_when>
    <thetext>Comment on attachment 185838
Patch

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

&gt; Source/WebKit2/Platform/CoreIPC/Connection.cpp:92
&gt; +        // FIXME: This should really an be OwnPtr,
&gt; +        // but we need Vector to work with move semantics first.

The bug here is https://bugs.webkit.org/show_bug.cgi?id=87594.  But, is this really true.  Can&apos;t you use VectorTraits?  Vector already knows how to work with OwnPtr for instance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821850</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-01-31 12:41:33 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 185838 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=185838&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/Platform/CoreIPC/Connection.cpp:92
&gt; &gt; +        // FIXME: This should really an be OwnPtr,
&gt; &gt; +        // but we need Vector to work with move semantics first.
&gt; 
&gt; The bug here is https://bugs.webkit.org/show_bug.cgi?id=87594.  But, is this really true.  Can&apos;t you use VectorTraits?  Vector already knows how to work with OwnPtr for instance.

I can&apos;t use VectorTraits because that there&apos;s still copying involved when passing the struct to Vector::append.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821851</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-01-31 12:42:11 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 185838 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=185838&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit2/Platform/CoreIPC/Connection.cpp:92
&gt; &gt; &gt; +        // FIXME: This should really an be OwnPtr,
&gt; &gt; &gt; +        // but we need Vector to work with move semantics first.
&gt; &gt; 
&gt; &gt; The bug here is https://bugs.webkit.org/show_bug.cgi?id=87594.  But, is this really true.  Can&apos;t you use VectorTraits?  Vector already knows how to work with OwnPtr for instance.
&gt; 
&gt; I can&apos;t use VectorTraits because that there&apos;s still copying involved when passing the struct to Vector::append.

I see.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821858</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-01-31 12:48:39 -0800</bug_when>
    <thetext>Committed r141465: &lt;http://trac.webkit.org/changeset/141465&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185838</attachid>
            <date>2013-01-31 12:31:39 -0800</date>
            <delta_ts>2013-01-31 12:40:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108514-20130131122823.patch</filename>
            <type>text/plain</type>
            <size>13823</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggY2U4Y2Q1YzFlZWQyNmY2
Y2FjNWUxOWMyZmMzZmRlNjdjZjJiYjhkOS4uM2FiOGU2ODk0NDUwYTQ1OTI4NjU5MjM1OTc5ZDE1
MzdjNDZiYmE2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI2IEBACiAyMDEzLTAxLTMxICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgR2V0IHJpZCBvZiBJ
bmNvbWluZ01lc3NhZ2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwODUxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy9Db25uZWN0aW9uLmNwcDoKKyAgICAgICAgKENvbm5l
Y3Rpb246OlN5bmNNZXNzYWdlU3RhdGUpOgorICAgICAgICAoQ29ubmVjdGlvbkFuZEluY29taW5n
TWVzc2FnZSk6CisgICAgICAgIChDb3JlSVBDOjpDb25uZWN0aW9uOjpTeW5jTWVzc2FnZVN0YXRl
Ojp+U3luY01lc3NhZ2VTdGF0ZSk6CisgICAgICAgIChDb3JlSVBDOjpDb25uZWN0aW9uOjpTeW5j
TWVzc2FnZVN0YXRlOjpwcm9jZXNzSW5jb21pbmdNZXNzYWdlKToKKyAgICAgICAgKENvcmVJUEM6
OkNvbm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6OmRpc3BhdGNoTWVzc2FnZXMpOgorICAgICAg
ICAoQ29yZUlQQzo6Q29ubmVjdGlvbjo6d2FpdEZvck1lc3NhZ2UpOgorICAgICAgICAoQ29yZUlQ
Qzo6Q29ubmVjdGlvbjo6cHJvY2Vzc0luY29taW5nTWVzc2FnZSk6CisgICAgICAgIChDb3JlSVBD
OjpDb25uZWN0aW9uOjplbnF1ZXVlSW5jb21pbmdNZXNzYWdlKToKKyAgICAgICAgKENvcmVJUEM6
OkNvbm5lY3Rpb246OmRpc3BhdGNoTWVzc2FnZSk6CisgICAgICAgIChDb3JlSVBDOjpDb25uZWN0
aW9uOjpkaXNwYXRjaE9uZU1lc3NhZ2UpOgorICAgICAgICAqIFBsYXRmb3JtL0NvcmVJUEMvQ29u
bmVjdGlvbi5oOgorICAgICAgICAoQ29ubmVjdGlvbik6CisKKzIwMTMtMDEtMzEgIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAgICAgICBSZW1vdmUgV2ViIEludGVu
dHMgY29kZSBmcm9tIFdlYktpdDIKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEwODUwNgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9y
bS9Db3JlSVBDL0Nvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQ
Qy9Db25uZWN0aW9uLmNwcAppbmRleCAxNDA0NWRlMTI2ZTYwNjRlMjgwZTBkNmNmMmI5M2VkMjNl
ZjFlOWVhLi4yYjA1YWQ4NjllNjI2YTk1YmQwZTFlY2EyYmZhMjY5ZjQzMmFiOGZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3JlSVBDL0Nvbm5lY3Rpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvQ29ubmVjdGlvbi5jcHAKQEAgLTUyLDcg
KzUyLDcgQEAgcHVibGljOgogCiAgICAgLy8gUmV0dXJucyB0cnVlIGlmIHRoaXMgbWVzc2FnZSB3
aWxsIGJlIGhhbmRsZWQgb24gYSBjbGllbnQgdGhyZWFkIHRoYXQgaXMgY3VycmVudGx5CiAgICAg
Ly8gd2FpdGluZyBmb3IgYSByZXBseSB0byBhIHN5bmNocm9ub3VzIG1lc3NhZ2UuCi0gICAgYm9v
bCBwcm9jZXNzSW5jb21pbmdNZXNzYWdlKENvbm5lY3Rpb24qLCBJbmNvbWluZ01lc3NhZ2UmKTsK
KyAgICBib29sIHByb2Nlc3NJbmNvbWluZ01lc3NhZ2UoQ29ubmVjdGlvbiosIE93blB0cjxNZXNz
YWdlRGVjb2Rlcj4mKTsKIAogICAgIC8vIERpc3BhdGNoIHBlbmRpbmcgc3luYyBtZXNzYWdlcy4g
aWYgYWxsb3dlZENvbm5lY3Rpb24gaXMgbm90IG51bGwsIHdpbGwgb25seSBkaXNwYXRjaCBtZXNz
YWdlcwogICAgIC8vIGZyb20gdGhhdCBjb25uZWN0aW9uIGFuZCBwdXQgdGhlIG90aGVyIG1lc3Nh
Z2VzIGJhY2sgaW4gdGhlIHF1ZXVlLgpAQCAtODcsNyArODcsMTAgQEAgcHJpdmF0ZToKIAogICAg
IHN0cnVjdCBDb25uZWN0aW9uQW5kSW5jb21pbmdNZXNzYWdlIHsKICAgICAgICAgUmVmUHRyPENv
bm5lY3Rpb24+IGNvbm5lY3Rpb247Ci0gICAgICAgIEluY29taW5nTWVzc2FnZSBpbmNvbWluZ01l
c3NhZ2U7CisKKyAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIHJlYWxseSBhbiBiZSBPd25Q
dHIsCisgICAgICAgIC8vIGJ1dCB3ZSBuZWVkIFZlY3RvciB0byB3b3JrIHdpdGggbW92ZSBzZW1h
bnRpY3MgZmlyc3QuCisgICAgICAgIE1lc3NhZ2VEZWNvZGVyKiBtZXNzYWdlOwogICAgIH07CiAg
ICAgVmVjdG9yPENvbm5lY3Rpb25BbmRJbmNvbWluZ01lc3NhZ2U+IG1fbWVzc2FnZXNUb0Rpc3Bh
dGNoV2hpbGVXYWl0aW5nRm9yU3luY1JlcGx5OwogfTsKQEAgLTEzMSwxNiArMTM0LDE4IEBAIENv
bm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6On5TeW5jTWVzc2FnZVN0YXRlKCkKICAgICAKICAg
ICBBU1NFUlQoc3luY01lc3NhZ2VTdGF0ZU1hcCgpLmNvbnRhaW5zKG1fcnVuTG9vcCkpOwogICAg
IHN5bmNNZXNzYWdlU3RhdGVNYXAoKS5yZW1vdmUobV9ydW5Mb29wKTsKKworICAgIEFTU0VSVCht
X21lc3NhZ2VzVG9EaXNwYXRjaFdoaWxlV2FpdGluZ0ZvclN5bmNSZXBseS5pc0VtcHR5KCkpOwog
fQogCi1ib29sIENvbm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6OnByb2Nlc3NJbmNvbWluZ01l
c3NhZ2UoQ29ubmVjdGlvbiogY29ubmVjdGlvbiwgSW5jb21pbmdNZXNzYWdlJiBpbmNvbWluZ01l
c3NhZ2UpCitib29sIENvbm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6OnByb2Nlc3NJbmNvbWlu
Z01lc3NhZ2UoQ29ubmVjdGlvbiogY29ubmVjdGlvbiwgT3duUHRyPE1lc3NhZ2VEZWNvZGVyPiYg
bWVzc2FnZSkKIHsKLSAgICBpZiAoIWluY29taW5nTWVzc2FnZS5hcmd1bWVudHMoKS0+c2hvdWxk
RGlzcGF0Y2hNZXNzYWdlV2hlbldhaXRpbmdGb3JTeW5jUmVwbHkoKSkKKyAgICBpZiAoIW1lc3Nh
Z2UtPnNob3VsZERpc3BhdGNoTWVzc2FnZVdoZW5XYWl0aW5nRm9yU3luY1JlcGx5KCkpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKIAogICAgIENvbm5lY3Rpb25BbmRJbmNvbWluZ01lc3NhZ2UgY29u
bmVjdGlvbkFuZEluY29taW5nTWVzc2FnZTsKICAgICBjb25uZWN0aW9uQW5kSW5jb21pbmdNZXNz
YWdlLmNvbm5lY3Rpb24gPSBjb25uZWN0aW9uOwotICAgIGNvbm5lY3Rpb25BbmRJbmNvbWluZ01l
c3NhZ2UuaW5jb21pbmdNZXNzYWdlID0gaW5jb21pbmdNZXNzYWdlOworICAgIGNvbm5lY3Rpb25B
bmRJbmNvbWluZ01lc3NhZ2UubWVzc2FnZSA9IG1lc3NhZ2UubGVha1B0cigpOwogCiAgICAgewog
ICAgICAgICBNdXRleExvY2tlciBsb2NrZXIobV9tdXRleCk7CkBAIC0xNzksNyArMTg0LDcgQEAg
dm9pZCBDb25uZWN0aW9uOjpTeW5jTWVzc2FnZVN0YXRlOjpkaXNwYXRjaE1lc3NhZ2VzKENvbm5l
Y3Rpb24qIGFsbG93ZWRDb25uZWN0aW8KICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9
CiAKLSAgICAgICAgY29ubmVjdGlvbkFuZEluY29taW5nTWVzc2FnZS5jb25uZWN0aW9uLT5kaXNw
YXRjaE1lc3NhZ2UoY29ubmVjdGlvbkFuZEluY29taW5nTWVzc2FnZS5pbmNvbWluZ01lc3NhZ2Up
OworICAgICAgICBjb25uZWN0aW9uQW5kSW5jb21pbmdNZXNzYWdlLmNvbm5lY3Rpb24tPmRpc3Bh
dGNoTWVzc2FnZShhZG9wdFB0cihjb25uZWN0aW9uQW5kSW5jb21pbmdNZXNzYWdlLm1lc3NhZ2Up
KTsKICAgICB9CiAKICAgICBpZiAoIW1lc3NhZ2VzVG9QdXRCYWNrLmlzRW1wdHkoKSkgewpAQCAt
MzQ2LDE0ICszNTEsMTQgQEAgUGFzc093blB0cjxNZXNzYWdlRGVjb2Rlcj4gQ29ubmVjdGlvbjo6
d2FpdEZvck1lc3NhZ2UoU3RyaW5nUmVmZXJlbmNlIG1lc3NhZ2VSZWMKICAgICB7CiAgICAgICAg
IE11dGV4TG9ja2VyIGxvY2tlcihtX2luY29taW5nTWVzc2FnZXNMb2NrKTsKIAotICAgICAgICBm
b3IgKERlcXVlPEluY29taW5nTWVzc2FnZT46Oml0ZXJhdG9yIGl0ID0gbV9pbmNvbWluZ01lc3Nh
Z2VzLmJlZ2luKCksIGVuZCA9IG1faW5jb21pbmdNZXNzYWdlcy5lbmQoKTsgaXQgIT0gZW5kOyAr
K2l0KSB7Ci0gICAgICAgICAgICBJbmNvbWluZ01lc3NhZ2UmIG1lc3NhZ2UgPSAqaXQ7CisgICAg
ICAgIGZvciAoRGVxdWU8T3duUHRyPE1lc3NhZ2VEZWNvZGVyPiA+OjppdGVyYXRvciBpdCA9IG1f
aW5jb21pbmdNZXNzYWdlcy5iZWdpbigpLCBlbmQgPSBtX2luY29taW5nTWVzc2FnZXMuZW5kKCk7
IGl0ICE9IGVuZDsgKytpdCkgeworICAgICAgICAgICAgT3duUHRyPE1lc3NhZ2VEZWNvZGVyPiYg
bWVzc2FnZSA9ICppdDsKIAotICAgICAgICAgICAgaWYgKG1lc3NhZ2UuYXJndW1lbnRzKCktPm1l
c3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBtZXNzYWdlUmVjZWl2ZXJOYW1lICYmIG1lc3NhZ2UuYXJn
dW1lbnRzKCktPm1lc3NhZ2VOYW1lKCkgPT0gbWVzc2FnZU5hbWUgJiYgbWVzc2FnZS5hcmd1bWVu
dHMoKS0+ZGVzdGluYXRpb25JRCgpID09IGRlc3RpbmF0aW9uSUQpIHsKLSAgICAgICAgICAgICAg
ICBPd25QdHI8TWVzc2FnZURlY29kZXI+IGRlY29kZXIgPSBtZXNzYWdlLnJlbGVhc2VBcmd1bWVu
dHMoKTsKKyAgICAgICAgICAgIGlmIChtZXNzYWdlLT5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0g
bWVzc2FnZVJlY2VpdmVyTmFtZSAmJiBtZXNzYWdlLT5tZXNzYWdlTmFtZSgpID09IG1lc3NhZ2VO
YW1lICYmIG1lc3NhZ2UtPmRlc3RpbmF0aW9uSUQoKSA9PSBkZXN0aW5hdGlvbklEKSB7CisgICAg
ICAgICAgICAgICAgT3duUHRyPE1lc3NhZ2VEZWNvZGVyPiByZXR1cm5lZE1lc3NhZ2UgPSBtZXNz
YWdlLnJlbGVhc2UoKTsKIAogICAgICAgICAgICAgICAgIG1faW5jb21pbmdNZXNzYWdlcy5yZW1v
dmUoaXQpOwotICAgICAgICAgICAgICAgIHJldHVybiBkZWNvZGVyLnJlbGVhc2UoKTsKKyAgICAg
ICAgICAgICAgICByZXR1cm4gcmV0dXJuZWRNZXNzYWdlLnJlbGVhc2UoKTsKICAgICAgICAgICAg
IH0KICAgICAgICAgfQogICAgIH0KQEAgLTU2NywyOCArNTcyLDI4IEBAIHZvaWQgQ29ubmVjdGlv
bjo6cHJvY2Vzc0luY29taW5nU3luY1JlcGx5KFBhc3NPd25QdHI8TWVzc2FnZURlY29kZXI+IGRl
Y29kZXIpCiAgICAgLy8gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSBzZW5kIHRpbWVkIG91dCwgc28g
aXQncyBmaW5lIHRvIGlnbm9yZS4KIH0KIAotdm9pZCBDb25uZWN0aW9uOjpwcm9jZXNzSW5jb21p
bmdNZXNzYWdlKE1lc3NhZ2VJRCBtZXNzYWdlSUQsIFBhc3NPd25QdHI8TWVzc2FnZURlY29kZXI+
IGRlY29kZXIpCit2b2lkIENvbm5lY3Rpb246OnByb2Nlc3NJbmNvbWluZ01lc3NhZ2UoTWVzc2Fn
ZUlEIG1lc3NhZ2VJRCwgUGFzc093blB0cjxNZXNzYWdlRGVjb2Rlcj4gaW5jb21pbmdNZXNzYWdl
KQogewotICAgIGlmIChkZWNvZGVyLT5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gIklQQyIgJiYg
ZGVjb2Rlci0+bWVzc2FnZU5hbWUoKSA9PSAiU3luY01lc3NhZ2VSZXBseSIpIHsKLSAgICAgICAg
cHJvY2Vzc0luY29taW5nU3luY1JlcGx5KGRlY29kZXIpOworICAgIE93blB0cjxNZXNzYWdlRGVj
b2Rlcj4gbWVzc2FnZSA9IGluY29taW5nTWVzc2FnZTsKKworICAgIGlmIChtZXNzYWdlLT5tZXNz
YWdlUmVjZWl2ZXJOYW1lKCkgPT0gIklQQyIgJiYgbWVzc2FnZS0+bWVzc2FnZU5hbWUoKSA9PSAi
U3luY01lc3NhZ2VSZXBseSIpIHsKKyAgICAgICAgcHJvY2Vzc0luY29taW5nU3luY1JlcGx5KG1l
c3NhZ2UucmVsZWFzZSgpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEluY29taW5n
TWVzc2FnZSBpbmNvbWluZ01lc3NhZ2UobWVzc2FnZUlELCBkZWNvZGVyKTsKLQogICAgIC8vIENo
ZWNrIGlmIHRoaXMgaXMgYSBzeW5jIG1lc3NhZ2Ugb3IgaWYgaXQncyBhIG1lc3NhZ2UgdGhhdCBz
aG91bGQgYmUgZGlzcGF0Y2hlZCBldmVuIHdoZW4gd2FpdGluZyBmb3IKICAgICAvLyBhIHN5bmMg
cmVwbHkuIElmIGl0IGlzLCBhbmQgd2UncmUgd2FpdGluZyBmb3IgYSBzeW5jIHJlcGx5IHRoaXMg
bWVzc2FnZSBuZWVkcyB0byBiZSBkaXNwYXRjaGVkLgogICAgIC8vIElmIHdlIGRvbid0IHdlJ2xs
IGVuZCB1cCB3aXRoIGEgZGVhZGxvY2sgd2hlcmUgYm90aCBzeW5jIG1lc3NhZ2Ugc2VuZGVycyBh
cmUgc3R1Y2sgd2FpdGluZyBmb3IgYSByZXBseS4KLSAgICBpZiAobV9zeW5jTWVzc2FnZVN0YXRl
LT5wcm9jZXNzSW5jb21pbmdNZXNzYWdlKHRoaXMsIGluY29taW5nTWVzc2FnZSkpCisgICAgaWYg
KG1fc3luY01lc3NhZ2VTdGF0ZS0+cHJvY2Vzc0luY29taW5nTWVzc2FnZSh0aGlzLCBtZXNzYWdl
KSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gQ2hlY2sgaWYgd2UncmUgd2FpdGluZyBmb3Ig
dGhpcyBtZXNzYWdlLgogICAgIHsKICAgICAgICAgTXV0ZXhMb2NrZXIgbG9ja2VyKG1fd2FpdEZv
ck1lc3NhZ2VNdXRleCk7CiAKLSAgICAgICAgSGFzaE1hcDxzdGQ6OnBhaXI8c3RkOjpwYWlyPFN0
cmluZ1JlZmVyZW5jZSwgU3RyaW5nUmVmZXJlbmNlPiwgdWludDY0X3Q+LCBPd25QdHI8TWVzc2Fn
ZURlY29kZXI+ID46Oml0ZXJhdG9yIGl0ID0gbV93YWl0Rm9yTWVzc2FnZU1hcC5maW5kKHN0ZDo6
bWFrZV9wYWlyKHN0ZDo6bWFrZV9wYWlyKGluY29taW5nTWVzc2FnZS5hcmd1bWVudHMoKS0+bWVz
c2FnZVJlY2VpdmVyTmFtZSgpLCBpbmNvbWluZ01lc3NhZ2UuYXJndW1lbnRzKCktPm1lc3NhZ2VO
YW1lKCkpLCBpbmNvbWluZ01lc3NhZ2UuZGVzdGluYXRpb25JRCgpKSk7CisgICAgICAgIEhhc2hN
YXA8c3RkOjpwYWlyPHN0ZDo6cGFpcjxTdHJpbmdSZWZlcmVuY2UsIFN0cmluZ1JlZmVyZW5jZT4s
IHVpbnQ2NF90PiwgT3duUHRyPE1lc3NhZ2VEZWNvZGVyPiA+OjppdGVyYXRvciBpdCA9IG1fd2Fp
dEZvck1lc3NhZ2VNYXAuZmluZChzdGQ6Om1ha2VfcGFpcihzdGQ6Om1ha2VfcGFpcihtZXNzYWdl
LT5tZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1lc3NhZ2UtPm1lc3NhZ2VOYW1lKCkpLCBtZXNzYWdl
LT5kZXN0aW5hdGlvbklEKCkpKTsKICAgICAgICAgaWYgKGl0ICE9IG1fd2FpdEZvck1lc3NhZ2VN
YXAuZW5kKCkpIHsKLSAgICAgICAgICAgIGl0LT52YWx1ZSA9IGluY29taW5nTWVzc2FnZS5yZWxl
YXNlQXJndW1lbnRzKCk7CisgICAgICAgICAgICBpdC0+dmFsdWUgPSBtZXNzYWdlLnJlbGVhc2Uo
KTsKICAgICAgICAgICAgIEFTU0VSVChpdC0+dmFsdWUpOwogICAgICAgICAKICAgICAgICAgICAg
IG1fd2FpdEZvck1lc3NhZ2VDb25kaXRpb24uc2lnbmFsKCk7CkBAIC02MDAsMTYgKzYwNSwxNCBA
QCB2b2lkIENvbm5lY3Rpb246OnByb2Nlc3NJbmNvbWluZ01lc3NhZ2UoTWVzc2FnZUlEIG1lc3Nh
Z2VJRCwgUGFzc093blB0cjxNZXNzYWdlRAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9j
b25uZWN0aW9uUXVldWVDbGllbnRzLnNpemUoKTsgKytpKSB7CiAgICAgICAgIGJvb2wgZGlkSGFu
ZGxlTWVzc2FnZSA9IGZhbHNlOwogCi0gICAgICAgIE1lc3NhZ2VEZWNvZGVyKiBkZWNvZGVyID0g
aW5jb21pbmdNZXNzYWdlLmFyZ3VtZW50cygpOwotICAgICAgICBtX2Nvbm5lY3Rpb25RdWV1ZUNs
aWVudHNbaV0tPmRpZFJlY2VpdmVNZXNzYWdlT25Db25uZWN0aW9uV29ya1F1ZXVlKHRoaXMsICpk
ZWNvZGVyLCBkaWRIYW5kbGVNZXNzYWdlKTsKKyAgICAgICAgbV9jb25uZWN0aW9uUXVldWVDbGll
bnRzW2ldLT5kaWRSZWNlaXZlTWVzc2FnZU9uQ29ubmVjdGlvbldvcmtRdWV1ZSh0aGlzLCAqbWVz
c2FnZSwgZGlkSGFuZGxlTWVzc2FnZSk7CiAgICAgICAgIGlmIChkaWRIYW5kbGVNZXNzYWdlKSB7
CiAgICAgICAgICAgICAvLyBBIGNvbm5lY3Rpb24gcXVldWUgY2xpZW50IGhhbmRsZWQgdGhlIG1l
c3NhZ2UsIG91ciB3b3JrIGhlcmUgaXMgZG9uZS4KLSAgICAgICAgICAgIGluY29taW5nTWVzc2Fn
ZS5yZWxlYXNlQXJndW1lbnRzKCk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAg
ICB9CiAKLSAgICBlbnF1ZXVlSW5jb21pbmdNZXNzYWdlKGluY29taW5nTWVzc2FnZSk7CisgICAg
ZW5xdWV1ZUluY29taW5nTWVzc2FnZShtZXNzYWdlLnJlbGVhc2UoKSk7CiB9CiAKIHZvaWQgQ29u
bmVjdGlvbjo6cG9zdENvbm5lY3Rpb25EaWRDbG9zZU9uQ29ubmVjdGlvbldvcmtRdWV1ZSgpCkBA
IC03MTMsNyArNzE2LDcgQEAgdm9pZCBDb25uZWN0aW9uOjpkaWRGYWlsVG9TZW5kU3luY01lc3Nh
Z2UoKQogICAgIGV4aXQoMCk7CiB9CiAKLXZvaWQgQ29ubmVjdGlvbjo6ZW5xdWV1ZUluY29taW5n
TWVzc2FnZShJbmNvbWluZ01lc3NhZ2UmIGluY29taW5nTWVzc2FnZSkKK3ZvaWQgQ29ubmVjdGlv
bjo6ZW5xdWV1ZUluY29taW5nTWVzc2FnZShQYXNzT3duUHRyPE1lc3NhZ2VEZWNvZGVyPiBpbmNv
bWluZ01lc3NhZ2UpCiB7CiAgICAgewogICAgICAgICBNdXRleExvY2tlciBsb2NrZXIobV9pbmNv
bWluZ01lc3NhZ2VzTG9jayk7CkBAIC03MjgsOSArNzMxLDkgQEAgdm9pZCBDb25uZWN0aW9uOjpk
aXNwYXRjaE1lc3NhZ2UoTWVzc2FnZUlEIG1lc3NhZ2VJRCwgTWVzc2FnZURlY29kZXImIGRlY29k
ZXIpCiAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVNZXNzYWdlKHRoaXMsIGRlY29kZXIpOwogfQog
Ci12b2lkIENvbm5lY3Rpb246OmRpc3BhdGNoTWVzc2FnZShJbmNvbWluZ01lc3NhZ2UmIG1lc3Nh
Z2UpCit2b2lkIENvbm5lY3Rpb246OmRpc3BhdGNoTWVzc2FnZShQYXNzT3duUHRyPE1lc3NhZ2VE
ZWNvZGVyPiBpbmNvbWluZ01lc3NhZ2UpCiB7Ci0gICAgT3duUHRyPE1lc3NhZ2VEZWNvZGVyPiBh
cmd1bWVudHMgPSBtZXNzYWdlLnJlbGVhc2VBcmd1bWVudHMoKTsKKyAgICBPd25QdHI8TWVzc2Fn
ZURlY29kZXI+IG1lc3NhZ2UgPSBpbmNvbWluZ01lc3NhZ2U7CiAKICAgICAvLyBJZiB0aGVyZSdz
IG5vIGNsaWVudCwgcmV0dXJuLiBXZSBkbyB0aGlzIGFmdGVyIGNhbGxpbmcgcmVsZWFzZUFyZ3Vt
ZW50cyBzbyB0aGF0CiAgICAgLy8gdGhlIEFyZ3VtZW50RGVjb2RlciBtZXNzYWdlIHdpbGwgYmUg
ZnJlZWQuCkBAIC03MzksNDIgKzc0Miw0MiBAQCB2b2lkIENvbm5lY3Rpb246OmRpc3BhdGNoTWVz
c2FnZShJbmNvbWluZ01lc3NhZ2UmIG1lc3NhZ2UpCiAKICAgICBtX2luRGlzcGF0Y2hNZXNzYWdl
Q291bnQrKzsKIAotICAgIGlmIChhcmd1bWVudHMtPnNob3VsZERpc3BhdGNoTWVzc2FnZVdoZW5X
YWl0aW5nRm9yU3luY1JlcGx5KCkpCisgICAgaWYgKG1lc3NhZ2UtPnNob3VsZERpc3BhdGNoTWVz
c2FnZVdoZW5XYWl0aW5nRm9yU3luY1JlcGx5KCkpCiAgICAgICAgIG1faW5EaXNwYXRjaE1lc3Nh
Z2VNYXJrZWREaXNwYXRjaFdoZW5XYWl0aW5nRm9yU3luY1JlcGx5Q291bnQrKzsKIAogICAgIGJv
b2wgb2xkRGlkUmVjZWl2ZUludmFsaWRNZXNzYWdlID0gbV9kaWRSZWNlaXZlSW52YWxpZE1lc3Nh
Z2U7CiAgICAgbV9kaWRSZWNlaXZlSW52YWxpZE1lc3NhZ2UgPSBmYWxzZTsKIAotICAgIGlmIChh
cmd1bWVudHMtPmlzU3luY01lc3NhZ2UoKSkKLSAgICAgICAgZGlzcGF0Y2hTeW5jTWVzc2FnZSht
ZXNzYWdlLm1lc3NhZ2VJRCgpLCAqYXJndW1lbnRzKTsKKyAgICBpZiAobWVzc2FnZS0+aXNTeW5j
TWVzc2FnZSgpKQorICAgICAgICBkaXNwYXRjaFN5bmNNZXNzYWdlKE1lc3NhZ2VJRCgpLCAqbWVz
c2FnZSk7CiAgICAgZWxzZQotICAgICAgICBkaXNwYXRjaE1lc3NhZ2UobWVzc2FnZS5tZXNzYWdl
SUQoKSwgKmFyZ3VtZW50cyk7CisgICAgICAgIGRpc3BhdGNoTWVzc2FnZShNZXNzYWdlSUQoKSwg
Km1lc3NhZ2UpOwogCi0gICAgbV9kaWRSZWNlaXZlSW52YWxpZE1lc3NhZ2UgfD0gYXJndW1lbnRz
LT5pc0ludmFsaWQoKTsKKyAgICBtX2RpZFJlY2VpdmVJbnZhbGlkTWVzc2FnZSB8PSBtZXNzYWdl
LT5pc0ludmFsaWQoKTsKICAgICBtX2luRGlzcGF0Y2hNZXNzYWdlQ291bnQtLTsKIAotICAgIGlm
IChhcmd1bWVudHMtPnNob3VsZERpc3BhdGNoTWVzc2FnZVdoZW5XYWl0aW5nRm9yU3luY1JlcGx5
KCkpCisgICAgaWYgKG1lc3NhZ2UtPnNob3VsZERpc3BhdGNoTWVzc2FnZVdoZW5XYWl0aW5nRm9y
U3luY1JlcGx5KCkpCiAgICAgICAgIG1faW5EaXNwYXRjaE1lc3NhZ2VNYXJrZWREaXNwYXRjaFdo
ZW5XYWl0aW5nRm9yU3luY1JlcGx5Q291bnQtLTsKIAogICAgIGlmIChtX2RpZFJlY2VpdmVJbnZh
bGlkTWVzc2FnZSAmJiBtX2NsaWVudCkKLSAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVJbnZh
bGlkTWVzc2FnZSh0aGlzLCBhcmd1bWVudHMtPm1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgYXJndW1l
bnRzLT5tZXNzYWdlTmFtZSgpKTsKKyAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVJbnZhbGlk
TWVzc2FnZSh0aGlzLCBtZXNzYWdlLT5tZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1lc3NhZ2UtPm1l
c3NhZ2VOYW1lKCkpOwogCiAgICAgbV9kaWRSZWNlaXZlSW52YWxpZE1lc3NhZ2UgPSBvbGREaWRS
ZWNlaXZlSW52YWxpZE1lc3NhZ2U7CiB9CiAKIHZvaWQgQ29ubmVjdGlvbjo6ZGlzcGF0Y2hPbmVN
ZXNzYWdlKCkKIHsKLSAgICBJbmNvbWluZ01lc3NhZ2UgaW5jb21pbmdNZXNzYWdlOworICAgIE93
blB0cjxNZXNzYWdlRGVjb2Rlcj4gbWVzc2FnZTsKIAogICAgIHsKICAgICAgICAgTXV0ZXhMb2Nr
ZXIgbG9ja2VyKG1faW5jb21pbmdNZXNzYWdlc0xvY2spOwogICAgICAgICBpZiAobV9pbmNvbWlu
Z01lc3NhZ2VzLmlzRW1wdHkoKSkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBpbmNv
bWluZ01lc3NhZ2UgPSBtX2luY29taW5nTWVzc2FnZXMudGFrZUZpcnN0KCk7CisgICAgICAgIG1l
c3NhZ2UgPSBtX2luY29taW5nTWVzc2FnZXMudGFrZUZpcnN0KCk7CiAgICAgfQogCi0gICAgZGlz
cGF0Y2hNZXNzYWdlKGluY29taW5nTWVzc2FnZSk7CisgICAgZGlzcGF0Y2hNZXNzYWdlKG1lc3Nh
Z2UucmVsZWFzZSgpKTsKIH0KIAogdm9pZCBDb25uZWN0aW9uOjp3YWtlVXBSdW5Mb29wKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvQ29ubmVjdGlvbi5oIGIv
U291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy9Db25uZWN0aW9uLmgKaW5kZXggMTAyMGIy
MGU0N2NkN2ZlYmNlNzFhN2I3NWI3NTgyNjMwNTQ1ZGVkNC4uYTQwZGY3Y2ZiZWVlMDA5YWYxYzQ1
MGZmN2U3OTZmZjZjZThkZjhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0v
Q29yZUlQQy9Db25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQ
Qy9Db25uZWN0aW9uLmgKQEAgLTE5Miw0MiArMTkyLDYgQEAgcHVibGljOgogICAgIHZvaWQgZGVj
cmVtZW50RGlzcGF0Y2hNZXNzYWdlTWFya2VkRGlzcGF0Y2hXaGVuV2FpdGluZ0ZvclN5bmNSZXBs
eUNvdW50KCkgeyAtLW1faW5EaXNwYXRjaE1lc3NhZ2VNYXJrZWREaXNwYXRjaFdoZW5XYWl0aW5n
Rm9yU3luY1JlcGx5Q291bnQ7IH0KIAogcHJpdmF0ZToKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBU
PiBjbGFzcyBNZXNzYWdlIHsKLSAgICBwdWJsaWM6Ci0gICAgICAgIE1lc3NhZ2UoKQotICAgICAg
ICAgICAgOiBtX2FyZ3VtZW50cygwKQotICAgICAgICB7Ci0gICAgICAgIH0KLQotICAgICAgICBN
ZXNzYWdlKE1lc3NhZ2VJRCBtZXNzYWdlSUQsIFBhc3NPd25QdHI8VD4gYXJndW1lbnRzKQotICAg
ICAgICAgICAgOiBtX21lc3NhZ2VJRChtZXNzYWdlSUQpCi0gICAgICAgICAgICAsIG1fYXJndW1l
bnRzKGFyZ3VtZW50cy5sZWFrUHRyKCkpCi0gICAgICAgIHsKLSAgICAgICAgfQotICAgICAgICAK
LSAgICAgICAgTWVzc2FnZUlEIG1lc3NhZ2VJRCgpIGNvbnN0IHsgcmV0dXJuIG1fbWVzc2FnZUlE
OyB9Ci0gICAgICAgIHVpbnQ2NF90IGRlc3RpbmF0aW9uSUQoKSBjb25zdCB7IHJldHVybiBtX2Fy
Z3VtZW50cy0+ZGVzdGluYXRpb25JRCgpOyB9Ci0KLSAgICAgICAgVCogYXJndW1lbnRzKCkgY29u
c3QgeyByZXR1cm4gbV9hcmd1bWVudHM7IH0KLSAgICAgICAgCi0gICAgICAgIFBhc3NPd25QdHI8
VD4gcmVsZWFzZUFyZ3VtZW50cygpCi0gICAgICAgIHsKLSAgICAgICAgICAgIE93blB0cjxUPiBh
cmd1bWVudHMgPSBhZG9wdFB0cihtX2FyZ3VtZW50cyk7Ci0gICAgICAgICAgICBtX2FyZ3VtZW50
cyA9IDA7Ci0KLSAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMucmVsZWFzZSgpOwotICAgICAg
ICB9Ci0gICAgICAgIAotICAgIHByaXZhdGU6Ci0gICAgICAgIE1lc3NhZ2VJRCBtX21lc3NhZ2VJ
RDsKLSAgICAgICAgLy8gVGhlIG1lbW9yeSBtYW5hZ2VtZW50IG9mIHRoaXMgY2xhc3MgaXMgdmVy
eSB1bnVzdWFsLiBUaGUgY2xhc3MgYWN0cwotICAgICAgICAvLyBhcyBpZiBpdCBoYXMgYW4gb3du
aW5nIHJlZmVyZW5jZSB0byBtX2FyZ3VtZW50cyAoZS5nLiwgYWNjZXB0aW5nIGEKLSAgICAgICAg
Ly8gUGFzc093blB0ciBpbiBpdHMgY29uc3RydWN0b3IpIGluIGFsbCB3YXlzIGV4Y2VwdCB0aGF0
IGl0IGRvZXMgbm90Ci0gICAgICAgIC8vIGRlYWxsb2NhdGUgbV9hcmd1bWVudHMgb24gZGVzdHJ1
Y3Rpb24uCi0gICAgICAgIC8vIEZJWE1FOiBEb2VzIHRoaXMgbGVhayBtX2FyZ3VtZW50cyBvbiBk
ZXN0cnVjdGlvbj8KLSAgICAgICAgVCogbV9hcmd1bWVudHM7Ci0gICAgfTsKLQogICAgIENvbm5l
Y3Rpb24oSWRlbnRpZmllciwgYm9vbCBpc1NlcnZlciwgQ2xpZW50KiwgV2ViQ29yZTo6UnVuTG9v
cCogY2xpZW50UnVuTG9vcCk7CiAgICAgdm9pZCBwbGF0Zm9ybUluaXRpYWxpemUoSWRlbnRpZmll
cik7CiAgICAgdm9pZCBwbGF0Zm9ybUludmFsaWRhdGUoKTsKQEAgLTI1MSwxOCArMjE1LDE2IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBzZW5kT3V0Z29pbmdNZXNzYWdlKE1lc3NhZ2VJRCwgUGFzc093
blB0cjxNZXNzYWdlRW5jb2Rlcj4pOwogICAgIHZvaWQgY29ubmVjdGlvbkRpZENsb3NlKCk7CiAg
ICAgCi0gICAgdHlwZWRlZiBNZXNzYWdlPE1lc3NhZ2VEZWNvZGVyPiBJbmNvbWluZ01lc3NhZ2U7
Ci0KICAgICAvLyBDYWxsZWQgb24gdGhlIGxpc3RlbmVyIHRocmVhZC4KICAgICB2b2lkIGRpc3Bh
dGNoQ29ubmVjdGlvbkRpZENsb3NlKCk7CiAgICAgdm9pZCBkaXNwYXRjaE9uZU1lc3NhZ2UoKTsK
LSAgICB2b2lkIGRpc3BhdGNoTWVzc2FnZShJbmNvbWluZ01lc3NhZ2UmKTsKKyAgICB2b2lkIGRp
c3BhdGNoTWVzc2FnZShQYXNzT3duUHRyPE1lc3NhZ2VEZWNvZGVyPik7CiAgICAgdm9pZCBkaXNw
YXRjaE1lc3NhZ2UoTWVzc2FnZUlELCBNZXNzYWdlRGVjb2RlciYpOwogICAgIHZvaWQgZGlzcGF0
Y2hTeW5jTWVzc2FnZShNZXNzYWdlSUQsIE1lc3NhZ2VEZWNvZGVyJik7CiAgICAgdm9pZCBkaWRG
YWlsVG9TZW5kU3luY01lc3NhZ2UoKTsKIAogICAgIC8vIENhbiBiZSBjYWxsZWQgb24gYW55IHRo
cmVhZC4KLSAgICB2b2lkIGVucXVldWVJbmNvbWluZ01lc3NhZ2UoSW5jb21pbmdNZXNzYWdlJik7
CisgICAgdm9pZCBlbnF1ZXVlSW5jb21pbmdNZXNzYWdlKFBhc3NPd25QdHI8TWVzc2FnZURlY29k
ZXI+KTsKIAogICAgIENsaWVudCogbV9jbGllbnQ7CiAgICAgYm9vbCBtX2lzU2VydmVyOwpAQCAt
Mjg0LDcgKzI0Niw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBJbmNvbWluZyBtZXNzYWdlcy4KICAg
ICBNdXRleCBtX2luY29taW5nTWVzc2FnZXNMb2NrOwotICAgIERlcXVlPEluY29taW5nTWVzc2Fn
ZT4gbV9pbmNvbWluZ01lc3NhZ2VzOworICAgIERlcXVlPE93blB0cjxNZXNzYWdlRGVjb2Rlcj4g
PiBtX2luY29taW5nTWVzc2FnZXM7CiAKICAgICAvLyBPdXRnb2luZyBtZXNzYWdlcy4KICAgICBN
dXRleCBtX291dGdvaW5nTWVzc2FnZXNMb2NrOwo=
</data>
<flag name="review"
          id="205067"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>