diff options
author | Martin Willi <martin@revosec.ch> | 2011-03-15 11:48:19 +0100 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2011-03-15 11:48:19 +0100 |
commit | 11f89bc948a9814dad77010eeecb0bb285b57a1b (patch) | |
tree | c94a8819ee6af6294cee357a9a5ccea849873b9b /src/libstrongswan/processing | |
parent | 41080cbbd9f0e1087eb90bb3990768afee0de462 (diff) | |
download | strongswan-11f89bc948a9814dad77010eeecb0bb285b57a1b.tar.bz2 strongswan-11f89bc948a9814dad77010eeecb0bb285b57a1b.tar.xz |
Do not invoke processor restart() if not required
Doing so might result in a deadlock during shutdown if a delayed
restart is locked on the bus during the debug statement.
Diffstat (limited to 'src/libstrongswan/processing')
-rw-r--r-- | src/libstrongswan/processing/processor.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libstrongswan/processing/processor.c b/src/libstrongswan/processing/processor.c index 723aec908..3d28ff18f 100644 --- a/src/libstrongswan/processing/processor.c +++ b/src/libstrongswan/processing/processor.c @@ -136,8 +136,9 @@ static void process_jobs(private_processor_t *this) thread_cleanup_pop(FALSE); this->mutex->lock(this->mutex); } + this->total_threads--; + this->thread_terminated->signal(this->thread_terminated); this->mutex->unlock(this->mutex); - restart(this); } /** |