Tcl Source Code

View Ticket
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Ticket UUID: 581937ab1e2a1c69d61b23bd90179bd35f212d8d
Title: async socket connect fail does not fire readable event
Type: Bug Version: 8.5.15
Submitter: oehhar Created on: 2014-03-24 12:26:30
Subsystem: 27. Channel Types Assigned To: oehhar
Priority: 5 Medium Severity: Severe
Status: Closed Last Modified: 2014-04-02 13:36:42
Resolution: Fixed Closed By: oehhar
    Closed on: 2014-04-02 13:36:42
Description:

Issue

On windows, a readable fileevent on a failed async socket connect only fires, if there is also a writable fileevent.

Examples

Following examples are in wish so there is an event loop running.

Only readable fileevent does not fire

% set h [socket -async localhost 30001]
sock448
% fileevent $h readable {puts R:[fconfigure $h -error];close $h}

Readable and writable fileevent fire both

Fileevent fires, if there is also a writable file event ( as in bug [794839]):

% set h [socket -async localhost 30001]
sock448
% fileevent $h readable {puts R:[fconfigure $h -error];close $h}
% fileevent $h writable {puts W}
W
R:connection refused

TCL8.6.1

The same issue is also present in tcl8.6.1, but already fixed in branch bug-13d3af3ad5, checkin [f1d2f6dbad].

User Comments: oehhar added on 2014-04-02 13:36:42:

Committed to core-8-5-branch by checkin [37dce67f70].

Bug closed.


oehhar added on 2014-04-02 12:47:26:

Fix and test in checkin [29adf4bac3] of branch bug-581937ab1e