summaryrefslogtreecommitdiffstats
path: root/src/daemon/purple.c
diff options
context:
space:
mode:
authorGravatar Gediminas Jakutis <gediminas@varciai.lt> 2019-05-29 13:07:28 +0300
committerGravatar Gediminas Jakutis <gediminas@varciai.lt> 2019-05-29 13:07:28 +0300
commit96d7d31534921889c219a5c9e00a46c3e94d0124 (patch)
tree99ec8522ea1eecc8e79912b28272d3cb31d8c886 /src/daemon/purple.c
parenta7c5c9ed96462d1b28139c04fba679403a412164 (diff)
parent187fe61700fc97fff565ec53aac65c664042feae (diff)
downloadusurpation-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.c7
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);
}
}