diff options
author | Martin Willi <martin@revosec.ch> | 2013-07-01 14:57:28 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2013-07-18 16:00:28 +0200 |
commit | e6e8a2b2e01e91f75048fd4a33e04a0a7612bd12 (patch) | |
tree | 5fd3617bd9faef54f1b55cbb70a1b7e4d084aafd /src/libstrongswan/networking/streams/stream_service.c | |
parent | d57b9e7c822149828ef6ce1467be60c28f011019 (diff) | |
download | strongswan-e6e8a2b2e01e91f75048fd4a33e04a0a7612bd12.tar.bz2 strongswan-e6e8a2b2e01e91f75048fd4a33e04a0a7612bd12.tar.xz |
stream: support keeping the service alive outside of service callback
Diffstat (limited to 'src/libstrongswan/networking/streams/stream_service.c')
-rw-r--r-- | src/libstrongswan/networking/streams/stream_service.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/libstrongswan/networking/streams/stream_service.c b/src/libstrongswan/networking/streams/stream_service.c index 7eaca86be..1b06e1eb1 100644 --- a/src/libstrongswan/networking/streams/stream_service.c +++ b/src/libstrongswan/networking/streams/stream_service.c @@ -124,8 +124,7 @@ static job_requeue_t accept_async(async_data_t *data) if (stream) { thread_cleanup_push((void*)stream->destroy, stream); - data->cb(data->data, stream); - thread_cleanup_pop(TRUE); + thread_cleanup_pop(!data->cb(data->data, stream)); } return JOB_REQUEUE_NONE; } |