102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
-
+
-
+
|
dprintf("[%p] BioRead(%d) -> %d [tclEof=%d; tclErrno=%d]",
(void *) chan, bufLen, ret, tclEofChan, Tcl_GetErrno());
BIO_clear_flags(bio, BIO_FLAGS_READ|BIO_FLAGS_SHOULD_RETRY);
if (ret == 0) {
if (!tclEofChan) {
dprintf("Got 0 from Tcl_Read or Tcl_ReadRaw, and EOF is set -- ret == -1 now");
dprintf("Got 0 from Tcl_Read or Tcl_ReadRaw, and EOF is not set -- ret == -1 now");
BIO_set_retry_read(bio);
ret = -1;
} else {
dprintf("Got 0 from Tcl_Read or Tcl_ReadRaw, and EOF is not set");
dprintf("Got 0 from Tcl_Read or Tcl_ReadRaw, and EOF is set");
}
} else {
dprintf("Got non-zero from Tcl_Read or Tcl_ReadRaw == ret == %i", ret);
}
if (BIO_should_write(bio)) {
BIO_set_retry_write(bio);
}
|