From 6bed68913d23d49ea7a774a9e7daebd2e3624b96 Mon Sep 17 00:00:00 2001 From: Johan Dahlin Date: Wed, 6 Aug 2008 08:28:12 +0000 Subject: Add a pygobject_enable_threads wrapper around pyglib_threads_enable and 2008-08-06 Johan Dahlin * glib/pyglib.c (pyglib_enable_threads): * gobject/gobjectmodule.c (pyg_threads_init), (pygobject_enable_threads): Add a pygobject_enable_threads wrapper around pyglib_threads_enable and return 0/-1 which existing gobject based applications expect. svn path=/trunk/; revision=927 --- glib/pyglib.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'glib/pyglib.c') diff --git a/glib/pyglib.c b/glib/pyglib.c index de8cbf9..2bb0d7b 100644 --- a/glib/pyglib.c +++ b/glib/pyglib.c @@ -121,25 +121,31 @@ pyglib_gil_state_release(PyGILState_STATE state) PyGILState_Release(state); } +/** + * pyglib_enable_threads: + * + * Returns: TRUE if threading is enabled, FALSE otherwise. + * + */ #ifdef DISABLE_THREADING -int +gboolean pyglib_enable_threads(void) { PyErr_SetString(PyExc_RuntimeError, "pyglib threading disabled at compile time"); - return -1; + return FALSE; } #else /* Enable threading; note that the GIL must be held by the current * thread when this function is called */ -int +gboolean pyglib_enable_threads(void) { - g_return_val_if_fail (_PyGLib_API != NULL, -1); + g_return_val_if_fail (_PyGLib_API != NULL, FALSE); if (_PyGLib_API->threads_enabled) - return 0; + return TRUE; PyEval_InitThreads(); if (!g_threads_got_initialized) @@ -148,7 +154,7 @@ pyglib_enable_threads(void) _PyGLib_API->threads_enabled = TRUE; pyglib_thread_state_tls_key = PyThread_create_key(); - return 0; + return TRUE; } #endif -- cgit