summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
Diffstat (limited to 'generic')
-rw-r--r--generic/tclPathObj.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/generic/tclPathObj.c b/generic/tclPathObj.c
index c32202d..6a26b9f 100644
--- a/generic/tclPathObj.c
+++ b/generic/tclPathObj.c
@@ -2551,7 +2551,10 @@ SetFsPathFromAny(
}
Tcl_DStringFree(&temp);
} else {
+ /* Bug 3479689: protect 0-refcount pathPth from getting freed */
+ pathPtr->refCount++;
transPtr = Tcl_FSJoinToPath(pathPtr, 0, NULL);
+ pathPtr->refCount--;
}
#if defined(__CYGWIN__) && defined(__WIN32__)