+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
+Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.[ch]: Revert unauthorized changes.
+
2000-12-12 Elliot Lee <sopwith@redhat.com>
* gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
#endif /* !HAVE_POLL */
-/* Called to clean up, usually when a thread terminates
+/* Called to clean up when a thread terminates
*/
-void
+static void
g_main_context_destroy (GMainContext *context)
{
GSource *source;
}
/**
- * g_main_context_new:
- * @thread: a #GThread (may be NULL)
+ * g_main_context_get:
+ * @thread: a #GThread
*
- * This will create a main-loop context. The context will need to be destroyed
- * via g_main_context_destroy.
+ * Retrieves the main loop context for a particular thread. This
+ * will create the main context for the thread if none previously
+ * existed. The context will exist until the thread terminates.
*
- * Return value: a new main loop context.
+ * Return value: the main loop context for @thread.
**/
GMainContext *
-g_main_context_new(GThread *thread)
+g_main_context_get (GThread *thread)
{
+ static GStaticPrivate private_key = G_STATIC_PRIVATE_INIT;
GMainContext *context;
- context = g_new0 (GMainContext, 1);
+ g_return_val_if_fail (thread != NULL, NULL);
-#ifdef G_THREADS_ENABLED
if (g_thread_supported ())
- context->mutex = g_mutex_new();
+ context = g_static_private_get_for_thread (&private_key, thread);
+ else
+ context = default_main_context;
- context->thread = thread;
+ if (!context)
+ {
+ context = g_new0 (GMainContext, 1);
+
+#ifdef G_THREADS_ENABLED
+ if (g_thread_supported ())
+ context->mutex = g_mutex_new();
+
+ context->thread = thread;
#endif
- context->next_id = 1;
+ context->next_id = 1;
- context->source_list = NULL;
+ context->source_list = NULL;
#if HAVE_POLL
- context->poll_func = (GPollFunc)poll;
+ context->poll_func = (GPollFunc)poll;
#else
- context->poll_func = g_poll;
+ context->poll_func = g_poll;
#endif
- context->cached_poll_array = NULL;
- context->cached_poll_array_size = 0;
+ context->cached_poll_array = NULL;
+ context->cached_poll_array_size = 0;
- context->pending_dispatches = g_ptr_array_new ();
+ context->pending_dispatches = g_ptr_array_new ();
- context->time_is_current = FALSE;
+ context->time_is_current = FALSE;
#ifdef G_THREADS_ENABLED
- if (g_thread_supported ())
- {
+ if (g_thread_supported ())
+ {
#ifndef G_OS_WIN32
- if (pipe (context->wake_up_pipe) < 0)
- g_error ("Cannot create pipe main loop wake-up: %s\n",
- g_strerror (errno));
+ if (pipe (context->wake_up_pipe) < 0)
+ g_error ("Cannot create pipe main loop wake-up: %s\n",
+ g_strerror (errno));
- context->wake_up_rec.fd = context->wake_up_pipe[0];
- context->wake_up_rec.events = G_IO_IN;
- g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
+ context->wake_up_rec.fd = context->wake_up_pipe[0];
+ context->wake_up_rec.events = G_IO_IN;
+ g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
#else
- if ((context->wake_up_semaphore = CreateSemaphore (NULL, 0, 100, NULL)) == NULL)
- g_error ("Cannot create wake-up semaphore: %s", g_win32_error_message (GetLastError ()));
- context->wake_up_rec.fd = (gint) context->wake_up_semaphore;
- context->wake_up_rec.events = G_IO_IN;
+ if ((context->wake_up_semaphore = CreateSemaphore (NULL, 0, 100, NULL)) == NULL)
+ g_error ("Cannot create wake-up semaphore: %s", g_win32_error_message (GetLastError ()));
+ context->wake_up_rec.fd = (gint) context->wake_up_semaphore;
+ context->wake_up_rec.events = G_IO_IN;
#ifdef G_MAIN_POLL_DEBUG
- g_print ("wake-up semaphore: %#x\n", (guint) context->wake_up_semaphore);
+ g_print ("wake-up semaphore: %#x\n", (guint) context->wake_up_semaphore);
#endif
- g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
+ g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
#endif
- }
+ }
#endif
- return context;
-}
-
-/**
- * g_main_context_get:
- * @thread: a #GThread
- *
- * Retrieves the main loop context for a particular thread. This
- * will create the main context for the thread if none previously
- * existed. The context will exist until the thread terminates.
- *
- * Return value: the main loop context for @thread.
- **/
-GMainContext *
-g_main_context_get (GThread *thread)
-{
- static GStaticPrivate private_key = G_STATIC_PRIVATE_INIT;
- GMainContext *context;
-
- g_return_val_if_fail (thread != NULL, NULL);
-
- if (g_thread_supported ())
- context = g_static_private_get_for_thread (&private_key, thread);
- else
- context = default_main_context;
-
- if (!context)
- {
- context = g_main_context_new (thread);
-
if (g_thread_supported ())
g_static_private_set_for_thread (&private_key, thread,
context,
/* Low level functions for implementing custom main loops.
*/
-GMainContext *g_main_context_new (GThread *thread);
-void g_main_context_destroy (GMainContext *context);
-
gboolean g_main_context_prepare (GMainContext *context,
gint *priority);
gint g_main_context_query (GMainContext *context,
#endif /* !HAVE_POLL */
-/* Called to clean up, usually when a thread terminates
+/* Called to clean up when a thread terminates
*/
-void
+static void
g_main_context_destroy (GMainContext *context)
{
GSource *source;
}
/**
- * g_main_context_new:
- * @thread: a #GThread (may be NULL)
+ * g_main_context_get:
+ * @thread: a #GThread
*
- * This will create a main-loop context. The context will need to be destroyed
- * via g_main_context_destroy.
+ * Retrieves the main loop context for a particular thread. This
+ * will create the main context for the thread if none previously
+ * existed. The context will exist until the thread terminates.
*
- * Return value: a new main loop context.
+ * Return value: the main loop context for @thread.
**/
GMainContext *
-g_main_context_new(GThread *thread)
+g_main_context_get (GThread *thread)
{
+ static GStaticPrivate private_key = G_STATIC_PRIVATE_INIT;
GMainContext *context;
- context = g_new0 (GMainContext, 1);
+ g_return_val_if_fail (thread != NULL, NULL);
-#ifdef G_THREADS_ENABLED
if (g_thread_supported ())
- context->mutex = g_mutex_new();
+ context = g_static_private_get_for_thread (&private_key, thread);
+ else
+ context = default_main_context;
- context->thread = thread;
+ if (!context)
+ {
+ context = g_new0 (GMainContext, 1);
+
+#ifdef G_THREADS_ENABLED
+ if (g_thread_supported ())
+ context->mutex = g_mutex_new();
+
+ context->thread = thread;
#endif
- context->next_id = 1;
+ context->next_id = 1;
- context->source_list = NULL;
+ context->source_list = NULL;
#if HAVE_POLL
- context->poll_func = (GPollFunc)poll;
+ context->poll_func = (GPollFunc)poll;
#else
- context->poll_func = g_poll;
+ context->poll_func = g_poll;
#endif
- context->cached_poll_array = NULL;
- context->cached_poll_array_size = 0;
+ context->cached_poll_array = NULL;
+ context->cached_poll_array_size = 0;
- context->pending_dispatches = g_ptr_array_new ();
+ context->pending_dispatches = g_ptr_array_new ();
- context->time_is_current = FALSE;
+ context->time_is_current = FALSE;
#ifdef G_THREADS_ENABLED
- if (g_thread_supported ())
- {
+ if (g_thread_supported ())
+ {
#ifndef G_OS_WIN32
- if (pipe (context->wake_up_pipe) < 0)
- g_error ("Cannot create pipe main loop wake-up: %s\n",
- g_strerror (errno));
+ if (pipe (context->wake_up_pipe) < 0)
+ g_error ("Cannot create pipe main loop wake-up: %s\n",
+ g_strerror (errno));
- context->wake_up_rec.fd = context->wake_up_pipe[0];
- context->wake_up_rec.events = G_IO_IN;
- g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
+ context->wake_up_rec.fd = context->wake_up_pipe[0];
+ context->wake_up_rec.events = G_IO_IN;
+ g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
#else
- if ((context->wake_up_semaphore = CreateSemaphore (NULL, 0, 100, NULL)) == NULL)
- g_error ("Cannot create wake-up semaphore: %s", g_win32_error_message (GetLastError ()));
- context->wake_up_rec.fd = (gint) context->wake_up_semaphore;
- context->wake_up_rec.events = G_IO_IN;
+ if ((context->wake_up_semaphore = CreateSemaphore (NULL, 0, 100, NULL)) == NULL)
+ g_error ("Cannot create wake-up semaphore: %s", g_win32_error_message (GetLastError ()));
+ context->wake_up_rec.fd = (gint) context->wake_up_semaphore;
+ context->wake_up_rec.events = G_IO_IN;
#ifdef G_MAIN_POLL_DEBUG
- g_print ("wake-up semaphore: %#x\n", (guint) context->wake_up_semaphore);
+ g_print ("wake-up semaphore: %#x\n", (guint) context->wake_up_semaphore);
#endif
- g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
+ g_main_context_add_poll_unlocked (context, 0, &context->wake_up_rec);
#endif
- }
+ }
#endif
- return context;
-}
-
-/**
- * g_main_context_get:
- * @thread: a #GThread
- *
- * Retrieves the main loop context for a particular thread. This
- * will create the main context for the thread if none previously
- * existed. The context will exist until the thread terminates.
- *
- * Return value: the main loop context for @thread.
- **/
-GMainContext *
-g_main_context_get (GThread *thread)
-{
- static GStaticPrivate private_key = G_STATIC_PRIVATE_INIT;
- GMainContext *context;
-
- g_return_val_if_fail (thread != NULL, NULL);
-
- if (g_thread_supported ())
- context = g_static_private_get_for_thread (&private_key, thread);
- else
- context = default_main_context;
-
- if (!context)
- {
- context = g_main_context_new (thread);
-
if (g_thread_supported ())
g_static_private_set_for_thread (&private_key, thread,
context,
/* Low level functions for implementing custom main loops.
*/
-GMainContext *g_main_context_new (GThread *thread);
-void g_main_context_destroy (GMainContext *context);
-
gboolean g_main_context_prepare (GMainContext *context,
gint *priority);
gint g_main_context_query (GMainContext *context,