diff options
Diffstat (limited to 'generic/tclIO.c')
| -rw-r--r-- | generic/tclIO.c | 9 | 
1 files changed, 5 insertions, 4 deletions
| diff --git a/generic/tclIO.c b/generic/tclIO.c index 585dc7b..5313eed 100644 --- a/generic/tclIO.c +++ b/generic/tclIO.c @@ -4488,8 +4488,8 @@ Write(  	    }  	}      } -    if ((flushed < total) && (GotFlag(statePtr, CHANNEL_UNBUFFERED) || -	    (needNlFlush && GotFlag(statePtr, CHANNEL_LINEBUFFERED)))) { +    if (((flushed < total) && GotFlag(statePtr, CHANNEL_UNBUFFERED)) || +	    (needNlFlush && GotFlag(statePtr, CHANNEL_LINEBUFFERED))) {  	if (FlushChannel(NULL, chanPtr, 0) != 0) {  	    return -1;  	} @@ -4749,7 +4749,6 @@ Tcl_GetsObj(  	    eol = dst;  	    skip = 1;  	    if (GotFlag(statePtr, INPUT_SAW_CR)) { -		ResetFlag(statePtr, INPUT_SAW_CR);  		if ((eol < dstEnd) && (*eol == '\n')) {  		    /*  		     * Skip the raw bytes that make up the '\n'. @@ -4799,8 +4798,10 @@ Tcl_GetsObj(  			skip++;  		    }  		    eol--; +		    ResetFlag(statePtr, INPUT_SAW_CR);  		    goto gotEOL;  		} else if (*eol == '\n') { +		    ResetFlag(statePtr, INPUT_SAW_CR);  		    goto gotEOL;  		}  	    } @@ -4829,7 +4830,7 @@ Tcl_GetsObj(  		Tcl_SetObjLength(objPtr, oldLength);  		CommonGetsCleanup(chanPtr);  		copiedTotal = -1; -		ResetFlag(statePtr, CHANNEL_BLOCKED); +		ResetFlag(statePtr, CHANNEL_BLOCKED|INPUT_SAW_CR);  		goto done;  	    }  	    goto gotEOL; | 
