<?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>116873</bug_id>
          
          <creation_ts>2013-05-28 09:59:29 -0700</creation_ts>
          <short_desc>[Qt][WK2] Make the work queue take the ownership of the socket descriptor</short_desc>
          <delta_ts>2022-02-28 03:57:34 -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>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>hausmann</cc>
    
    <cc>jturcotte</cc>
    
    <cc>lamarque</cc>
    
    <cc>lauro.neto</cc>
    
    <cc>sergio</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>894399</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-05-28 09:59:29 -0700</bug_when>
    <thetext>We have found several race conditions with the connection termination in the GTK+ port and have switched to make the work queue the only one responsible for closing the socket. We added another platform ifdef to platformInvalidate in ConnectionUnix.cpp. See bug #115880 for more details. 

Both Anders and Martin suggested that to avoid race conditions this should also be the case of other ports, and the connection queue should take the ownership of the socket descriptor. That way we can get rid of the platform ifdef added to ConnectionUnix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899335</commentid>
    <comment_count>1</comment_count>
      <attachid>204370</attachid>
    <who name="Lamarque V. Souza">lamarque</who>
    <bug_when>2013-06-11 16:46:36 -0700</bug_when>
    <thetext>Created attachment 204370
Patch

Proposed patch. By what I can see only Connection::platformInitialize() closes the socket descriptor in the Qt port. This patch moves the loop closing the socket descriptor to SocketNotifier&apos;s destructor. SocketNotifier is a new class that inherits from QSocketNotifier. SocketNotifier is destroyed a few lines below the loop in Connection::platformInvalidate(), so this change should keep things working the same as before. I tested this change with the &apos;Test case&apos; patch in https://bugs.webkit.org/show_bug.cgi?id=115880 and it passes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935690</commentid>
    <comment_count>2</comment_count>
      <attachid>204370</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-10-02 21:33:33 -0700</bug_when>
    <thetext>Comment on attachment 204370
Patch

Qt has been removed, clearing review flags.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>975733</commentid>
    <comment_count>3</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2014-02-03 03:25:51 -0800</bug_when>
    <thetext>=== Bulk closing of Qt bugs ===

If you believe that this bug report is still relevant for a non-Qt port of webkit.org, please re-open it and remove [Qt] from the summary.

If you believe that this is still an important QtWebKit bug, please fill a new report at https://bugreports.qt-project.org and add a link to this issue. See http://qt-project.org/wiki/ReportingBugsInQt for additional guidelines.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>204370</attachid>
            <date>2013-06-11 16:46:36 -0700</date>
            <delta_ts>2022-02-28 03:57:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116873-20130611204456.patch</filename>
            <type>text/plain</type>
            <size>3730</size>
            <attacher name="Lamarque V. Souza">lamarque</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxMzk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNzY2ZmZmZDcxYzdiZTYz
YzNhMjY2M2U4YTYwNzE2YWRhYzQ5YWZjNi4uMzAwYWFmNTljZWE1NWFkMTRkN2UwNTA0N2JkMTVj
YjczMzExM2IzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTA2LTExICBMYW1h
cnF1ZSBWLiBTb3V6YSAgPExhbWFycXVlLlNvdXphQGJhc3lza29tLmNvbT4KKworICAgICAgICBb
UXRdW1dLMl0gTWFrZSB0aGUgd29yayBxdWV1ZSB0YWtlIHRoZSBvd25lcnNoaXAgb2YgdGhlIHNv
Y2tldCBkZXNjcmlwdG9yCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTY4NzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBNb3ZlIHNvY2tldCBkZXNjcmlwdG9yIG93bndlcnNoaXAgdG8gU29ja2V0Tm90aWZp
ZXIgY2xhc3MuIFdoZW4KKyAgICAgICAgU29ja2V0Tm90aWZpZXIgaXMgZGVzdHJveWVkIHRoZSBz
b2NrZXQgaXMgY2xvc2VkLgorCisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy91bml4L0Nvbm5l
Y3Rpb25Vbml4LmNwcDoKKyAgICAgICAgKENvcmVJUEM6OkNvbm5lY3Rpb246OnBsYXRmb3JtSW52
YWxpZGF0ZSk6IERpc2FibGUgbG9vcCB0byBjbG9zZSBzb2NrZXQuCisgICAgICAgICogUGxhdGZv
cm0vV29ya1F1ZXVlLmg6IEFkZCBuZXcgY2xhc3MgU29ja2V0Tm90aWZpZXIuCisgICAgICAgICog
UGxhdGZvcm0vcXQvV29ya1F1ZXVlUXQuY3BwOgorICAgICAgICAoV29ya1F1ZXVlOjpTb2NrZXRO
b3RpZmllcjo6U29ja2V0Tm90aWZpZXIpOgorICAgICAgICAoV29ya1F1ZXVlOjpTb2NrZXROb3Rp
Zmllcjo6flNvY2tldE5vdGlmaWVyKTogQWRkIGxvb3AgdG8gY2xvc2Ugc29ja2V0LgorICAgICAg
ICAoV29ya1F1ZXVlOjpyZWdpc3RlclNvY2tldEV2ZW50SGFuZGxlcik6CisKIDIwMTMtMDYtMDkg
IEphZSBIeXVuIFBhcmsgIDxqYWUucGFya0Bjb21wYW55MTAwLm5ldD4KIAogICAgICAgICBbQ29v
cmRpbmF0ZWRHcmFwaGljc10gVHlwbyBpbiBhcmd1bWVudCBkZWNvZGVyIGZvciBDb29yZGluYXRl
ZEdyYXBoaWNzU3RhdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJ
UEMvdW5peC9Db25uZWN0aW9uVW5peC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3Jl
SVBDL3VuaXgvQ29ubmVjdGlvblVuaXguY3BwCmluZGV4IGUwMWMyMTEyNmE3MDgxZDZjNmU0YzJj
NTQ0ODQzZDBiNmQ0YTdiOGEuLmYwYWY5NjY4NzM3ZmUzM2IwZmQyOTdhN2QxZDkzYWQ3YjFkOGJm
YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvdW5peC9Db25u
ZWN0aW9uVW5peC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy91bml4
L0Nvbm5lY3Rpb25Vbml4LmNwcApAQCAtMTM0LDcgKzEzNCw3IEBAIHZvaWQgQ29ubmVjdGlvbjo6
cGxhdGZvcm1Jbml0aWFsaXplKElkZW50aWZpZXIgaWRlbnRpZmllcikKIHZvaWQgQ29ubmVjdGlv
bjo6cGxhdGZvcm1JbnZhbGlkYXRlKCkKIHsKICAgICAvLyBJbiBHVEsrIHBsYXRmb3JtIHRoZSBz
b2NrZXQgaXMgY2xvc2VkIGJ5IHRoZSB3b3JrIHF1ZXVlLgotI2lmICFQTEFURk9STShHVEspCisj
aWYgIShQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKFFUKSkKICAgICBpZiAobV9zb2NrZXREZXNj
cmlwdG9yICE9IC0xKQogICAgICAgICB3aGlsZSAoY2xvc2UobV9zb2NrZXREZXNjcmlwdG9yKSA9
PSAtMSAmJiBlcnJubyA9PSBFSU5UUikgeyB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1BsYXRmb3JtL1dvcmtRdWV1ZS5oIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vV29y
a1F1ZXVlLmgKaW5kZXggZDk1NGY1N2RiNGY2ZGQ3MGMyYjYxZTBmOGY3YjQ2YTFlMTExZjQ5MC4u
MWZjNjIxZjBjYWVjMzJkYWJjOWM1ZGYzMjQ3MjYwZTVkYmIwMTM4YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvUGxhdGZvcm0vV29ya1F1ZXVlLmgKKysrIGIvU291cmNlL1dlYktpdDIvUGxh
dGZvcm0vV29ya1F1ZXVlLmgKQEAgLTE1MCw2ICsxNTAsNyBAQCBwcml2YXRlOgogICAgIEhBTkRM
RSBtX3RpbWVyUXVldWU7CiAjZWxpZiBQTEFURk9STShRVCkKICAgICBjbGFzcyBXb3JrSXRlbVF0
OworICAgIGNsYXNzIFNvY2tldE5vdGlmaWVyOwogICAgIFFUaHJlYWQqIG1fd29ya1RocmVhZDsK
ICAgICBmcmllbmQgY2xhc3MgV29ya0l0ZW1RdDsKICNlbGlmIFBMQVRGT1JNKEdUSykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3F0L1dvcmtRdWV1ZVF0LmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1BsYXRmb3JtL3F0L1dvcmtRdWV1ZVF0LmNwcAppbmRleCA1YjFlZGViYTgxZDc5
YWEwYzg1NTA2MmZiYzdiZjFjNGNkYWI1OGI1Li5lYzkyZGFhOTZjOTQ0MmNkMDg5ODAxYWE5MmQ2
YjRhYjExMzhlYTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9xdC9Xb3Jr
UXVldWVRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vcXQvV29ya1F1ZXVlUXQu
Y3BwCkBAIC04MCwxMSArODAsMzAgQEAgcHVibGljOgogICAgIEZ1bmN0aW9uPHZvaWQoKT4gbV9m
dW5jdGlvbjsKIH07CiAKK2NsYXNzIFdvcmtRdWV1ZTo6U29ja2V0Tm90aWZpZXIgOiBwdWJsaWMg
UVNvY2tldE5vdGlmaWVyIHsKKyAgICBRX09CSkVDVAorcHVibGljOgorICAgIFNvY2tldE5vdGlm
aWVyKGludCBzb2NrZXQsIFR5cGUgdHlwZSwgUU9iamVjdCogcGFyZW50ID0gMCkKKyAgICAgICAg
OiBRU29ja2V0Tm90aWZpZXIoc29ja2V0LCB0eXBlLCBwYXJlbnQpCisgICAgICAgICwgbV9zb2Nr
ZXREZXNjcmlwdG9yKHNvY2tldCkKKyAgICB7CisgICAgfQorCisgICAgdmlydHVhbCB+U29ja2V0
Tm90aWZpZXIoKQorICAgIHsKKyAgICAgICAgaWYgKG1fc29ja2V0RGVzY3JpcHRvciAhPSAtMSkK
KyAgICAgICAgICAgIHdoaWxlIChjbG9zZShtX3NvY2tldERlc2NyaXB0b3IpID09IC0xICYmIGVy
cm5vID09IEVJTlRSKSB7IH0KKyAgICB9CisKK3ByaXZhdGU6CisgICAgaW50IG1fc29ja2V0RGVz
Y3JpcHRvcjsKK307CisKIFFTb2NrZXROb3RpZmllciogV29ya1F1ZXVlOjpyZWdpc3RlclNvY2tl
dEV2ZW50SGFuZGxlcihpbnQgc29ja2V0RGVzY3JpcHRvciwgUVNvY2tldE5vdGlmaWVyOjpUeXBl
IHR5cGUsIGNvbnN0IEZ1bmN0aW9uPHZvaWQoKT4mIGZ1bmN0aW9uKQogewogICAgIEFTU0VSVCht
X3dvcmtUaHJlYWQpOwogCi0gICAgUVNvY2tldE5vdGlmaWVyKiBub3RpZmllciA9IG5ldyBRU29j
a2V0Tm90aWZpZXIoc29ja2V0RGVzY3JpcHRvciwgdHlwZSwgMCk7CisgICAgU29ja2V0Tm90aWZp
ZXIqIG5vdGlmaWVyID0gbmV3IFNvY2tldE5vdGlmaWVyKHNvY2tldERlc2NyaXB0b3IsIHR5cGUs
IDApOwogICAgIG5vdGlmaWVyLT5zZXRFbmFibGVkKGZhbHNlKTsKICAgICBub3RpZmllci0+bW92
ZVRvVGhyZWFkKG1fd29ya1RocmVhZCk7CiAgICAgV29ya1F1ZXVlOjpXb3JrSXRlbVF0KiBpdGVt
UXQgPSBuZXcgV29ya1F1ZXVlOjpXb3JrSXRlbVF0KHRoaXMsIG5vdGlmaWVyLCBTSUdOQUwoYWN0
aXZhdGVkKGludCkpLCBmdW5jdGlvbik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>