Changes On Branch bug-65c8cd1534
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Changes In Branch bug-65c8cd1534 Excluding Merge-Ins

This is equivalent to a diff from a16b4619c9 to 75cd9d9d6d

2020-03-04
21:00
merge 8.6 check-in: 8909782fe2 user: dgp tags: core-8-branch
18:26
[65c9cd1534] Restore continuity of compatible function of [close] on a channel type that defines bo... Closed-Leaf check-in: 75cd9d9d6d user: dgp tags: bug-65c8cd1534
16:18
Merge 8.7 check-in: ce59d75d36 user: jan.nijtmans tags: trunk
16:17
Merge 8.6 check-in: a16b4619c9 user: jan.nijtmans tags: core-8-branch
16:16
Some more gcc(-9) warnings check-in: 05722b9512 user: jan.nijtmans tags: core-8-6-branch
15:55
Merge 8.6 check-in: 67d6f07392 user: jan.nijtmans tags: core-8-branch

Changes to generic/tclIO.c.
3496
3497
3498
3499
3500
3501
3502

3503
3504



3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3496
3497
3498
3499
3500
3501
3502
3503
3504

3505
3506
3507
3508
3509
3510
3511
3512
3513






3514
3515
3516
3517
3518
3519
3520







+

-
+
+
+






-
-
-
-
-
-







    ResetFlag(statePtr, CHANNEL_INCLOSE);

    /*
     * If this channel supports it, close the read side, since we don't need
     * it anymore and this will help avoid deadlocks on some channel types.
     */

    if (
#ifndef TCL_NO_DEPRECATED
    if ((chanPtr->typePtr->closeProc == TCL_CLOSE2PROC) || (chanPtr->typePtr->closeProc == NULL)) {
	    (chanPtr->typePtr->closeProc == TCL_CLOSE2PROC) || 
#endif
	    (chanPtr->typePtr->closeProc == NULL)) {
	/* If this half-close gives a EINVAL, just continue the full close */
	result = chanPtr->typePtr->close2Proc(chanPtr->instanceData, interp, TCL_CLOSE_READ);
	if (result == EINVAL) {
	    result = 0;
	}
    }
#else
    result = chanPtr->typePtr->close2Proc(chanPtr->instanceData, interp, TCL_CLOSE_READ);
    if (result == EINVAL) {
	result = 0;
    }
#endif

    /*
     * The call to FlushChannel will flush any queued output and invoke the
     * close function of the channel driver, or it will set up the channel to
     * be flushed and closed asynchronously.
     */