diff options
author | 2019-05-29 13:07:28 +0300 | |
---|---|---|
committer | 2019-05-29 13:07:28 +0300 | |
commit | 96d7d31534921889c219a5c9e00a46c3e94d0124 (patch) | |
tree | 99ec8522ea1eecc8e79912b28272d3cb31d8c886 /src/daemon/purple.c | |
parent | a7c5c9ed96462d1b28139c04fba679403a412164 (diff) | |
parent | 187fe61700fc97fff565ec53aac65c664042feae (diff) | |
download | usurpation-96d7d31534921889c219a5c9e00a46c3e94d0124.tar.gz usurpation-96d7d31534921889c219a5c9e00a46c3e94d0124.tar.bz2 usurpation-96d7d31534921889c219a5c9e00a46c3e94d0124.zip |
Merge branch 'net_improvements'
NOTE: this removes the adhoc discovery implementation.
If working discovery is required either use an earlier version or
whicherver later version that hopefully implements it.
Signed-off-by: Gediminas Jakutis <gediminas@varciai.lt>
Diffstat (limited to 'src/daemon/purple.c')
-rw-r--r-- | src/daemon/purple.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/daemon/purple.c b/src/daemon/purple.c index 138b30b..fc4f49f 100644 --- a/src/daemon/purple.c +++ b/src/daemon/purple.c @@ -251,9 +251,14 @@ int purple_init(void) void purple_close(void) { + int status; - if (pthread_mutex_trylock(&state.mutex) == EBUSY) { + status = pthread_mutex_trylock(&state.mutex); + + if (status == EBUSY) { pthread_cancel(state.purple); pthread_join(state.purple, NULL); + } else if (!status) { + pthread_mutex_unlock(&state.mutex); } } |