diff options
| author | hobbs <hobbs> | 2007-05-29 23:35:46 (GMT) |
|---|---|---|
| committer | hobbs <hobbs> | 2007-05-29 23:35:46 (GMT) |
| commit | 290aca2b7370852d45240efa773b57d200c8b539 (patch) | |
| tree | 30e691cb9f8de9e93498d216a1c06f976285d5dc | |
| parent | ffe82f0259e4246b0ed763b7891ce3dfa16eba30 (diff) | |
| download | tcl-290aca2b7370852d45240efa773b57d200c8b539.zip tcl-290aca2b7370852d45240efa773b57d200c8b539.tar.gz tcl-290aca2b7370852d45240efa773b57d200c8b539.tar.bz2 | |
* unix/tclUnixThrd.c (Tcl_JoinThread): fix for 64-bit handling of
pthread_join exit return code storage. [Bug 1712723]
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | unix/tclUnixThrd.c | 6 |
2 files changed, 10 insertions, 1 deletions
@@ -1,3 +1,8 @@ +2007-05-29 Jeff Hobbs <jeffh@ActiveState.com> + + * unix/tclUnixThrd.c (Tcl_JoinThread): fix for 64-bit handling of + pthread_join exit return code storage. [Bug 1712723] + 2007-05-24 Don Porter <dgp@users.sourceforge.net> *** 8.4.15 TAGGED FOR RELEASE *** diff --git a/unix/tclUnixThrd.c b/unix/tclUnixThrd.c index b95e8f7..b74419b 100644 --- a/unix/tclUnixThrd.c +++ b/unix/tclUnixThrd.c @@ -165,8 +165,12 @@ Tcl_JoinThread(threadId, state) { #ifdef TCL_THREADS int result; + unsigned long retcode; - result = pthread_join ((pthread_t) threadId, (VOID**) state); + result = pthread_join((pthread_t) threadId, (void**) &retcode); + if (state) { + *state = (int) retcode; + } return (result == 0) ? TCL_OK : TCL_ERROR; #else return TCL_ERROR; |
