summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
Diffstat (limited to 'generic')
-rw-r--r--generic/tclIO.c2
-rw-r--r--generic/tclStubLib.c5
2 files changed, 4 insertions, 3 deletions
diff --git a/generic/tclIO.c b/generic/tclIO.c
index 5bd0e2a..0568d77 100644
--- a/generic/tclIO.c
+++ b/generic/tclIO.c
@@ -2472,7 +2472,7 @@ FlushChannel(
* it's a tty channel (dup'ed underneath)
*/
- if (!GotFlag(statePtr, BG_FLUSH_SCHEDULED)) {
+ if (!GotFlag(statePtr, BG_FLUSH_SCHEDULED) && !TclInExit()) {
SetFlag(statePtr, BG_FLUSH_SCHEDULED);
UpdateInterest(chanPtr);
}
diff --git a/generic/tclStubLib.c b/generic/tclStubLib.c
index e48e60b..720d9ef 100644
--- a/generic/tclStubLib.c
+++ b/generic/tclStubLib.c
@@ -79,6 +79,7 @@ TclInitStubs(
int magic)
{
const char *actualVersion = NULL;
+ ClientData pkgData = NULL;
const TclStubs *stubsPtr;
/*
@@ -92,7 +93,7 @@ TclInitStubs(
return NULL;
}
- actualVersion = stubsPtr->tcl_PkgRequireEx(interp, "Tcl", version, 0, NULL);
+ actualVersion = stubsPtr->tcl_PkgRequireEx(interp, "Tcl", version, 0, &pkgData);
if (actualVersion == NULL) {
return NULL;
}
@@ -122,7 +123,7 @@ TclInitStubs(
}
}
}
- tclStubsPtr = stubsPtr;
+ tclStubsPtr = (TclStubs *)pkgData;
if (tclStubsPtr->hooks) {
tclPlatStubsPtr = tclStubsPtr->hooks->tclPlatStubs;