summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2015-06-16 15:24:51 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2015-06-16 15:24:51 (GMT)
commit61235a19fdbc4ccea9e122d0be34888ab92fc798 (patch)
treef9ed27e54ccf335ed3a7b3975210030637754b77 /generic
parentbd5043a0eea076716ef8b53a0985464965165bd9 (diff)
downloadtcl-61235a19fdbc4ccea9e122d0be34888ab92fc798.zip
tcl-61235a19fdbc4ccea9e122d0be34888ab92fc798.tar.gz
tcl-61235a19fdbc4ccea9e122d0be34888ab92fc798.tar.bz2
Change Tcl_MutexUnlockAndFinalize() to internal function TclpMutexUnlockAndFinalize(). This does not require a TIP, and still should fix the reported bug.
Diffstat (limited to 'generic')
-rw-r--r--generic/tcl.decls5
-rw-r--r--generic/tcl.h2
-rw-r--r--generic/tclDecls.h5
-rw-r--r--generic/tclInt.h1
-rw-r--r--generic/tclStubInit.c1
-rw-r--r--generic/tclThread.c5
6 files changed, 3 insertions, 16 deletions
diff --git a/generic/tcl.decls b/generic/tcl.decls
index e80fe0f..1829249 100644
--- a/generic/tcl.decls
+++ b/generic/tcl.decls
@@ -2326,11 +2326,6 @@ declare 630 {
# ----- BASELINE -- FOR -- 8.6.0 ----- #
-# TIP #435
-declare 631 {
- void Tcl_MutexUnlockAndFinalize(Tcl_Mutex *mutex)
-}
-
##############################################################################
# Define the platform specific public Tcl interface. These functions are only
diff --git a/generic/tcl.h b/generic/tcl.h
index 80f924a..297b42c 100644
--- a/generic/tcl.h
+++ b/generic/tcl.h
@@ -2592,8 +2592,6 @@ EXTERN void Tcl_GetMemoryInfo(Tcl_DString *dsPtr);
#define Tcl_MutexLock(mutexPtr)
#undef Tcl_MutexUnlock
#define Tcl_MutexUnlock(mutexPtr)
-#undef Tcl_MutexUnlockAndFinalize
-#define Tcl_MutexUnlockAndFinalize(mutexPtr)
#undef Tcl_MutexFinalize
#define Tcl_MutexFinalize(mutexPtr)
#undef Tcl_ConditionNotify
diff --git a/generic/tclDecls.h b/generic/tclDecls.h
index f4ebc53..91c0add 100644
--- a/generic/tclDecls.h
+++ b/generic/tclDecls.h
@@ -1815,8 +1815,6 @@ EXTERN int Tcl_FSUnloadFile(Tcl_Interp *interp,
EXTERN void Tcl_ZlibStreamSetCompressionDictionary(
Tcl_ZlibStream zhandle,
Tcl_Obj *compressionDictionaryObj);
-/* 631 */
-EXTERN void Tcl_MutexUnlockAndFinalize(Tcl_Mutex *mutex);
typedef struct {
const struct TclPlatStubs *tclPlatStubs;
@@ -2483,7 +2481,6 @@ typedef struct TclStubs {
void * (*tcl_FindSymbol) (Tcl_Interp *interp, Tcl_LoadHandle handle, const char *symbol); /* 628 */
int (*tcl_FSUnloadFile) (Tcl_Interp *interp, Tcl_LoadHandle handlePtr); /* 629 */
void (*tcl_ZlibStreamSetCompressionDictionary) (Tcl_ZlibStream zhandle, Tcl_Obj *compressionDictionaryObj); /* 630 */
- void (*tcl_MutexUnlockAndFinalize) (Tcl_Mutex *mutex); /* 631 */
} TclStubs;
extern const TclStubs *tclStubsPtr;
@@ -3776,8 +3773,6 @@ extern const TclStubs *tclStubsPtr;
(tclStubsPtr->tcl_FSUnloadFile) /* 629 */
#define Tcl_ZlibStreamSetCompressionDictionary \
(tclStubsPtr->tcl_ZlibStreamSetCompressionDictionary) /* 630 */
-#define Tcl_MutexUnlockAndFinalize \
- (tclStubsPtr->tcl_MutexUnlockAndFinalize) /* 631 */
#endif /* defined(USE_TCL_STUBS) */
diff --git a/generic/tclInt.h b/generic/tclInt.h
index 51d153b..5a8c9ca 100644
--- a/generic/tclInt.h
+++ b/generic/tclInt.h
@@ -3061,6 +3061,7 @@ MODULE_SCOPE void TclpMasterLock(void);
MODULE_SCOPE void TclpMasterUnlock(void);
MODULE_SCOPE void TclpMutexLock(void);
MODULE_SCOPE void TclpMutexUnlock(void);
+MODULE_SCOPE void TclpMutexUnlockAndFinalize(Tcl_Mutex *mutex);
MODULE_SCOPE int TclpMatchFiles(Tcl_Interp *interp, char *separators,
Tcl_DString *dirPtr, char *pattern, char *tail);
MODULE_SCOPE int TclpObjNormalizePath(Tcl_Interp *interp,
diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c
index f0d00ee..7a84cba 100644
--- a/generic/tclStubInit.c
+++ b/generic/tclStubInit.c
@@ -1412,7 +1412,6 @@ const TclStubs tclStubs = {
Tcl_FindSymbol, /* 628 */
Tcl_FSUnloadFile, /* 629 */
Tcl_ZlibStreamSetCompressionDictionary, /* 630 */
- Tcl_MutexUnlockAndFinalize, /* 631 */
};
/* !END!: Do not edit above this line. */
diff --git a/generic/tclThread.c b/generic/tclThread.c
index b46ddf5..065df0e 100644
--- a/generic/tclThread.c
+++ b/generic/tclThread.c
@@ -50,7 +50,6 @@ static void RememberSyncObject(void *objPtr,
#undef Tcl_MutexLock
#undef Tcl_MutexUnlock
#undef Tcl_MutexFinalize
-#undef Tcl_MutexUnlockAndFinalize
#undef Tcl_ConditionNotify
#undef Tcl_ConditionWait
#undef Tcl_ConditionFinalize
@@ -285,7 +284,7 @@ Tcl_MutexFinalize(
/*
*----------------------------------------------------------------------
*
- * Tcl_MutexUnlockAndFinalize --
+ * TclpMutexUnlockAndFinalize --
*
* This procedure is invoked to unlock and then finalize a mutex.
* The mutex must have been locked by Tcl_MutexLock. It is also
@@ -302,7 +301,7 @@ Tcl_MutexFinalize(
*/
void
-Tcl_MutexUnlockAndFinalize(
+TclpMutexUnlockAndFinalize(
Tcl_Mutex *mutexPtr)
{
Tcl_Mutex mutex;