summaryrefslogtreecommitdiff
path: root/dbus
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2013-04-15 13:54:39 +0100
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2013-05-09 10:33:38 +0100
commiteabf6c42a1b779f57f2c08d35772035788657579 (patch)
tree5037798721a0bde3175217f66e48b913d2859a08 /dbus
parentc36f21a2e91730e9ae52e8945305aa3072f0e508 (diff)
downloaddbus-eabf6c42a1b779f57f2c08d35772035788657579.tar.gz
dbus_threads_init: call _dbus_threads_init_platform_specific()
This reverses the relationship between these two functions. Previously, dbus_threads_init() wouldn't allocate dbus_cond_event_tls on Windows, call check_monotonic_clock on Unix, or call _dbus_check_setuid on Unix. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=54972 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Reviewed-by: Alban Crequy <alban.crequy@collabora.co.uk> Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
Diffstat (limited to 'dbus')
-rw-r--r--dbus/dbus-sysdeps-pthread.c3
-rw-r--r--dbus/dbus-sysdeps-thread-win.c2
-rw-r--r--dbus/dbus-threads.c7
3 files changed, 7 insertions, 5 deletions
diff --git a/dbus/dbus-sysdeps-pthread.c b/dbus/dbus-sysdeps-pthread.c
index 439c9c62..1344074e 100644
--- a/dbus/dbus-sysdeps-pthread.c
+++ b/dbus/dbus-sysdeps-pthread.c
@@ -283,5 +283,6 @@ _dbus_threads_init_platform_specific (void)
*/
check_monotonic_clock ();
(void) _dbus_check_setuid ();
- return dbus_threads_init (NULL);
+
+ return TRUE;
}
diff --git a/dbus/dbus-sysdeps-thread-win.c b/dbus/dbus-sysdeps-thread-win.c
index e30e7b87..4c4442a6 100644
--- a/dbus/dbus-sysdeps-thread-win.c
+++ b/dbus/dbus-sysdeps-thread-win.c
@@ -269,6 +269,6 @@ _dbus_threads_init_platform_specific (void)
return FALSE;
}
- return dbus_threads_init (NULL);
+ return TRUE;
}
diff --git a/dbus/dbus-threads.c b/dbus/dbus-threads.c
index b464629a..e7f2eb74 100644
--- a/dbus/dbus-threads.c
+++ b/dbus/dbus-threads.c
@@ -584,7 +584,8 @@ dbus_threads_init (const DBusThreadFunctions *functions)
if (thread_init_generation == _dbus_current_generation)
return TRUE;
- if (!init_locks ())
+ if (!_dbus_threads_init_platform_specific() ||
+ !init_locks ())
return FALSE;
thread_init_generation = _dbus_current_generation;
@@ -613,7 +614,7 @@ dbus_threads_init (const DBusThreadFunctions *functions)
dbus_bool_t
dbus_threads_init_default (void)
{
- return _dbus_threads_init_platform_specific ();
+ return dbus_threads_init (NULL);
}
@@ -624,7 +625,7 @@ dbus_threads_init_default (void)
dbus_bool_t
_dbus_threads_init_debug (void)
{
- return _dbus_threads_init_platform_specific();
+ return dbus_threads_init (NULL);
}
#endif /* DBUS_BUILD_TESTS */