diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | generic/tclIOUtil.c | 10 |
2 files changed, 10 insertions, 8 deletions
@@ -1,3 +1,11 @@ +2004-11-16 Don Porter <dgp@users.sourceforge.net> + + * generic/tclIOUtil.c (TclFSEpochOk): There were two code paths + via which the thread copy of filesystemEpoch could be synched with + the master copy, but only one kept the filesystem list cache up + to date. Fix routes everything through a single code path. + [Bug 1035775]. + 2004-11-16 Donal K. Fellows <donal.k.fellows@man.ac.uk> * unix/tcl.m4 (SC_CONFIG_CFLAGS): Stop architecture flags to 'ld' diff --git a/generic/tclIOUtil.c b/generic/tclIOUtil.c index befc9c7..17fd376 100644 --- a/generic/tclIOUtil.c +++ b/generic/tclIOUtil.c @@ -17,7 +17,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIOUtil.c,v 1.112 2004/10/15 04:01:31 dgp Exp $ + * RCS: @(#) $Id: tclIOUtil.c,v 1.113 2004/11/17 00:31:47 dgp Exp $ */ #include "tclInt.h" @@ -642,13 +642,7 @@ TclFSEpochOk (filesystemEpoch) int filesystemEpoch; { ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&tclFsDataKey); -#ifndef TCL_THREADS - tsdPtr->filesystemEpoch = theFilesystemEpoch; -#else - Tcl_MutexLock(&filesystemMutex); - tsdPtr->filesystemEpoch = theFilesystemEpoch; - Tcl_MutexUnlock(&filesystemMutex); -#endif + (void) FsGetFirstFilesystem(); return (filesystemEpoch == tsdPtr->filesystemEpoch); } |