Check-in [b03c6db3d1]
Overview
Comment:Updated to finalize a thread that terminated even if there are no current Tcl interpreters associated with it
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: b03c6db3d19b2dbe2164abcdeeb4c09f2401614c
User & Date: rkeene on 2016-07-10 19:05:19
Other Links: manifest | tags
Context
2016-07-10
19:05
Fixed typo in debug message check-in: 936a791a4a user: rkeene tags: trunk
19:05
Updated to finalize a thread that terminated even if there are no current Tcl interpreters associated with it check-in: b03c6db3d1 user: rkeene tags: trunk
2015-12-08
14:13
Updated to avoid hammering remote servers if cache cannot be updated for some reason other than downloading failed check-in: df8e635cac user: rkeene tags: trunk
Changes

Modified appfsd.c from [33db21bdfd] to [9b20b616c9].

1970
1971
1972
1973
1974
1975
1976
1977

1978
1979
1980
1981
1982
1983

1984
1985

1986
1987
1988
1989






1990
1991
1992
1993
1994
1995
1996
1970
1971
1972
1973
1974
1975
1976

1977






1978
1979

1980
1981



1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994







-
+
-
-
-
-
-
-
+

-
+

-
-
-
+
+
+
+
+
+







 * Terminate a thread
 */
static void appfs_terminate_interp_and_thread(void *_interp) {
	Tcl_Interp *interp;

	APPFS_DEBUG("Called: _interp = %p", _interp);

	if (_interp == NULL) {
	if (_interp != NULL) {
		APPFS_DEBUG("Terminating thread with no interpreter");

		return;
	}

	interp = _interp;
		interp = _interp;

	APPFS_DEBUG("Terminating interpreter due to thread termination");
		APPFS_DEBUG("Terminating interpreter due to thread termination");

	appfs_call_libtcl(
		Tcl_DeleteInterp(interp);
	)
		appfs_call_libtcl(
			Tcl_DeleteInterp(interp);
		)
	} else {
		APPFS_DEBUG("Terminating thread with no interpreter");
	}

	appfs_call_libtcl(
		Tcl_FinalizeThread();
	)

	return;
}