diff options
author | Robert James Kaes <rjkaes@users.sourceforge.net> | 2002-04-09 00:37:43 +0000 |
---|---|---|
committer | Robert James Kaes <rjkaes@users.sourceforge.net> | 2002-04-09 00:37:43 +0000 |
commit | eb78e5e1f4bd32774e6ab03eb07dcd93bd01c00c (patch) | |
tree | 74067c7a8cb701746f54a7c55c9f793f24eb045b | |
parent | 0d66719c5afbc66d81ad4304b3c830c48379b0a8 (diff) | |
download | tinyproxy-eb78e5e1f4bd32774e6ab03eb07dcd93bd01c00c.tar.gz tinyproxy-eb78e5e1f4bd32774e6ab03eb07dcd93bd01c00c.zip |
Added the cancelation setting to make sure the thread stops immediately.
Diffstat (limited to '')
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | src/thread.c | 5 |
2 files changed, 7 insertions, 1 deletions
@@ -2,6 +2,9 @@ * src/thread.c (thread_main_loop): Moved the looping code into this function from the main() function. Just a bit of clean up. + (thread_main): Changed the default cancelation point to + asynchronous, which means immediately. This should fix up the + problem where the threads would not free correctly. 2002-04-07 Robert James Kaes <rjkaes@flarenet.com> diff --git a/src/thread.c b/src/thread.c index 534ed8b..40beab8 100644 --- a/src/thread.c +++ b/src/thread.c @@ -1,4 +1,4 @@ -/* $Id: thread.c,v 1.22 2002-04-08 21:35:10 rjkaes Exp $ +/* $Id: thread.c,v 1.23 2002-04-09 00:37:43 rjkaes Exp $ * * Handles the creation/destruction of the various threads required for * processing incoming connections. @@ -118,6 +118,9 @@ thread_main(void *arg) socklen_t clilen; struct thread_s *ptr; + /* Set the cancelation type to immediate. */ + pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL); + ptr = (struct thread_s *) arg; cliaddr = safemalloc(addrlen); |