<?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>31327</bug_id>
          
          <creation_ts>2009-11-10 16:57:37 -0800</creation_ts>
          <short_desc>Clean up SocketStreamHandleClient interface</short_desc>
          <delta_ts>2009-11-11 09:23:36 -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 Misc.</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>ukai</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>162290</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-11-10 16:57:37 -0800</bug_when>
    <thetext>Patch with comments forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162296</commentid>
    <comment_count>1</comment_count>
      <attachid>42911</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-11-10 17:02:33 -0800</bug_when>
    <thetext>Created attachment 42911
proposed patch

We should add a comment explaining what the difference between close() and disconnect() is. It&apos;s not sufficiently clear to me yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162389</commentid>
    <comment_count>2</comment_count>
    <who name="Fumitoshi Ukai">ukai</who>
    <bug_when>2009-11-11 00:57:58 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=42911) [details]
&gt; proposed patch
&gt; 
&gt; We should add a comment explaining what the difference between close() and
&gt; disconnect() is. It&apos;s not sufficiently clear to me yet.

disconnect() is used before WebSocketChannelClient is deleted, because it won&apos;t receive didClose() anymore.
On the other hand, close() will imply didClose() that will be called back later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162510</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-11-11 09:23:36 -0800</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/changeset/50811&gt;

&gt; disconnect() is used before WebSocketChannelClient is deleted, because it won&apos;t
&gt; receive didClose() anymore.
&gt; On the other hand, close() will imply didClose() that will be called back
&gt; later.

Thank you - I added a comment about the difference.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>42911</attachid>
            <date>2009-11-10 17:02:33 -0800</date>
            <delta_ts>2009-11-10 18:08:30 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>CleanupSocketStreamHandleClient.txt</filename>
            <type>text/plain</type>
            <size>5333</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MDc3OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjcgQEAKKzIwMDktMTEtMTAgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMxMzI3CisgICAgICAgIENs
ZWFuIHVwIFNvY2tldFN0cmVhbUhhbmRsZUNsaWVudCBpbnRlcmZhY2UKKworICAgICAgICBObyBj
aGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1NvY2tldFN0
cmVhbUhhbmRsZUNsaWVudC5oOiBSZW1vdmVkIHdpbGxPcGVuU3RyZWFtIGFuZCB3aWxsU2VuZERh
dGEuCisgICAgICAgIChXZWJDb3JlOjpTb2NrZXRTdHJlYW1IYW5kbGVDbGllbnQ6OndpbGxPcGVu
U3RyZWFtKTogUmVtb3ZlZC4gVGhpcyBpcyBjdXJyZW50bHkgbm90IHVzZWQgYnkKKyAgICAgICAg
dGhlIG9ubHkgY2xpZW50IChXZWJTb2NrZXRDaGFubmVsKSwgYW5kIGl0J3Mgbm90IGNsZWFyIHdo
YXQgdGhpcyBjYWxsYmFjaydzIHNlbWFudGljcworICAgICAgICBzaG91bGQgYmUuCisgICAgICAg
IChXZWJDb3JlOjpTb2NrZXRTdHJlYW1IYW5kbGVDbGllbnQ6OndpbGxTZW5kRGF0YSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6U29ja2V0U3RyZWFtSGFuZGxlQ2xpZW50OjpyZWNlaXZlZENh
bmNlbGxhdGlvbik6IFJlbW92ZWQsIGJlY2F1c2UgaXQgd2FzIG1pc3BsYWNlZC4KKyAgICAgICAg
Rm9yIFJlc291cmNlSGFuZGxlLCB0aGlzIG1ldGhvZCBpcyBjYWxsZWQgd2hlbiB0aGUgdXNlciBj
YW5jZWxzIGF1dGhlbnRpY2F0aW9uIHNoZWV0LAorICAgICAgICBub3Qgd2hlbiBzb21ldGhpbmcg
aGFwcGVucyB3aXRoIHRoZSBzdHJlYW0uCisKKyAgICAgICAgKiB3ZWJzb2NrZXRzL1dlYlNvY2tl
dENoYW5uZWwuaDogU29tZSBXZWJTb2NrZXRDaGFubmVsIG1ldGhvZHMgd2VyZSB2aXJ0dWFsIHdp
dGhvdXQgYW55CisgICAgICAgIHJlYXNvbi4gQWxzbywgYWRkZWQgZGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlL2RpZENhbmNlbEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLgorCisgICAg
ICAgICogd2Vic29ja2V0cy9XZWJTb2NrZXRDaGFubmVsLmNwcDogQWRqdXN0ZWQgZm9yIHRoZSBh
Ym92ZSBjaGFuZ2UuIEF1dGhlbnRpY2F0aW9uLXJlbGF0ZWQKKyAgICAgICAgY2FsbGJhY2tzIGhh
dmUgbm8gcmVhbCBpbXBsZW1lbnRhdGlvbiB5ZXQuCisKIDIwMDktMTEtMTAgIEJyYWR5IEVpZHNv
biAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcu
CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvU29ja2V0U3RyZWFtSGFuZGxlQ2xpZW50
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1NvY2tldFN0cmVhbUhh
bmRsZUNsaWVudC5oCShyZXZpc2lvbiA1MDc3MSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9Tb2NrZXRTdHJlYW1IYW5kbGVDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDMsOSArNDMs
NiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgcHVibGljOgogICAgICAgICB2aXJ0dWFsIH5T
b2NrZXRTdHJlYW1IYW5kbGVDbGllbnQoKSB7IH0KIAotICAgICAgICB2aXJ0dWFsIHZvaWQgd2ls
bE9wZW5TdHJlYW0oU29ja2V0U3RyZWFtSGFuZGxlKiwgY29uc3QgS1VSTCYpIHsgfQotICAgICAg
ICB2aXJ0dWFsIHZvaWQgd2lsbFNlbmREYXRhKFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IGNo
YXIqIC8qZGF0YSovLCBpbnQgLypsZW5ndGgqLykgeyB9Ci0KICAgICAgICAgdmlydHVhbCB2b2lk
IGRpZE9wZW4oU29ja2V0U3RyZWFtSGFuZGxlKikgeyB9CiAgICAgICAgIHZpcnR1YWwgdm9pZCBk
aWRDbG9zZShTb2NrZXRTdHJlYW1IYW5kbGUqKSB7IH0KICAgICAgICAgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVEYXRhKFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IGNoYXIqIC8qZGF0YSovLCBp
bnQgLypsZW5ndGgqLykgeyB9CkBAIC01NCw3ICs1MSw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
KFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgeyB9
CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaWRDYW5jZWxBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShT
b2NrZXRTdHJlYW1IYW5kbGUqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIHsgfQot
ICAgICAgICB2aXJ0dWFsIHZvaWQgcmVjZWl2ZWRDYW5jZWxsYXRpb24oU29ja2V0U3RyZWFtSGFu
ZGxlKiwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSB7IH0KICAgICB9OwogCiB9ICAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS93ZWJzb2NrZXRzL1dlYlNvY2tldENo
YW5uZWwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvd2Vic29ja2V0cy9XZWJTb2NrZXRDaGFu
bmVsLmNwcAkocmV2aXNpb24gNTA3NzEpCisrKyBXZWJDb3JlL3dlYnNvY2tldHMvV2ViU29ja2V0
Q2hhbm5lbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMiwxNCArMTEyLDYgQEAgdm9pZCBXZWJT
b2NrZXRDaGFubmVsOjpkaXNjb25uZWN0KCkKICAgICAgICAgbV9oYW5kbGUtPmNsb3NlKCk7CiB9
CiAKLXZvaWQgV2ViU29ja2V0Q2hhbm5lbDo6d2lsbE9wZW5TdHJlYW0oU29ja2V0U3RyZWFtSGFu
ZGxlKiwgY29uc3QgS1VSTCYpCi17Ci19Ci0KLXZvaWQgV2ViU29ja2V0Q2hhbm5lbDo6d2lsbFNl
bmREYXRhKFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IGNoYXIqLCBpbnQpCi17Ci19Ci0KIHZv
aWQgV2ViU29ja2V0Q2hhbm5lbDo6ZGlkT3BlbihTb2NrZXRTdHJlYW1IYW5kbGUqIGhhbmRsZSkK
IHsKICAgICBMT0coTmV0d29yaywgIldlYlNvY2tldENoYW5uZWwgJXAgZGlkT3BlbiIsIHRoaXMp
OwpAQCAtMjI4LDYgKzIyMCwxNCBAQCB2b2lkIFdlYlNvY2tldENoYW5uZWw6OmRpZEZhaWwoU29j
a2V0U3RyCiAgICAgaGFuZGxlLT5jbG9zZSgpOwogfQogCit2b2lkIFdlYlNvY2tldENoYW5uZWw6
OmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShTb2NrZXRTdHJlYW1IYW5kbGUqLCBj
b25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpCit7Cit9CisKK3ZvaWQgV2ViU29ja2V0Q2hh
bm5lbDo6ZGlkQ2FuY2VsQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoU29ja2V0U3RyZWFtSGFuZGxl
KiwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKQoreworfQorCiBib29sIFdlYlNvY2tl
dENoYW5uZWw6OmFwcGVuZFRvQnVmZmVyKGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW4pCiB7CiAg
ICAgY2hhciogbmV3QnVmZmVyID0gMDsKSW5kZXg6IFdlYkNvcmUvd2Vic29ja2V0cy9XZWJTb2Nr
ZXRDaGFubmVsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS93ZWJzb2NrZXRzL1dlYlNvY2tldENo
YW5uZWwuaAkocmV2aXNpb24gNTA3NzEpCisrKyBXZWJDb3JlL3dlYnNvY2tldHMvV2ViU29ja2V0
Q2hhbm5lbC5oCSh3b3JraW5nIGNvcHkpCkBAIC01MCwyMSArNTAsMTggQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxXZWJTb2NrZXRDaGFubmVsPiBjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgV2ViU29ja2V0Q2hhbm5lbENsaWVu
dCogY2xpZW50LCBjb25zdCBLVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcHJvdG9jb2wpIHsgcmV0
dXJuIGFkb3B0UmVmKG5ldyBXZWJTb2NrZXRDaGFubmVsKGNvbnRleHQsIGNsaWVudCwgdXJsLCBw
cm90b2NvbCkpOyB9CiAgICAgICAgIHZpcnR1YWwgfldlYlNvY2tldENoYW5uZWwoKTsKIAotICAg
ICAgICB2aXJ0dWFsIHZvaWQgY29ubmVjdCgpOworICAgICAgICB2b2lkIGNvbm5lY3QoKTsKKyAg
ICAgICAgYm9vbCBzZW5kKGNvbnN0IFN0cmluZyYgbXNnKTsKKyAgICAgICAgdW5zaWduZWQgbG9u
ZyBidWZmZXJlZEFtb3VudCgpIGNvbnN0OworICAgICAgICB2b2lkIGNsb3NlKCk7CisgICAgICAg
IHZvaWQgZGlzY29ubmVjdCgpOwogCi0gICAgICAgIHZpcnR1YWwgYm9vbCBzZW5kKGNvbnN0IFN0
cmluZyYgbXNnKTsKLSAgICAgICAgdmlydHVhbCB1bnNpZ25lZCBsb25nIGJ1ZmZlcmVkQW1vdW50
KCkgY29uc3Q7Ci0KLSAgICAgICAgdmlydHVhbCB2b2lkIGNsb3NlKCk7Ci0KLSAgICAgICAgdmly
dHVhbCB2b2lkIGRpc2Nvbm5lY3QoKTsKLQotICAgICAgICB2aXJ0dWFsIHZvaWQgd2lsbE9wZW5T
dHJlYW0oU29ja2V0U3RyZWFtSGFuZGxlKiwgY29uc3QgS1VSTCYpOwotICAgICAgICB2aXJ0dWFs
IHZvaWQgd2lsbFNlbmREYXRhKFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IGNoYXIqLCBpbnQp
OwogICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkT3BlbihTb2NrZXRTdHJlYW1IYW5kbGUqKTsKICAg
ICAgICAgdmlydHVhbCB2b2lkIGRpZENsb3NlKFNvY2tldFN0cmVhbUhhbmRsZSopOwogICAgICAg
ICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZURhdGEoU29ja2V0U3RyZWFtSGFuZGxlKiwgY29uc3Qg
Y2hhciosIGludCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsKFNvY2tldFN0cmVhbUhh
bmRsZSosIGNvbnN0IFNvY2tldFN0cmVhbUVycm9yJik7CisgICAgICAgIHZpcnR1YWwgdm9pZCBk
aWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoU29ja2V0U3RyZWFtSGFuZGxlKiwgY29u
c3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKTsKKyAgICAgICAgdmlydHVhbCB2b2lkIGRpZENh
bmNlbEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IEF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7CiAKICAgICBwcml2YXRlOgogICAgICAgICBXZWJTb2Nr
ZXRDaGFubmVsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBXZWJTb2NrZXRDaGFubmVsQ2xpZW50
KiwgY29uc3QgS1VSTCYsIGNvbnN0IFN0cmluZyYpOwo=
</data>
<flag name="review"
          id="24534"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>