Merge remote-tracking branch 'gvdb/master'
[platform/upstream/glib.git] / gthread / gthread-impl.c
1 /* GLIB - Library of useful routines for C programming
2  * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
3  *
4  * gthread.c: thread related functions
5  * Copyright 1998 Sebastian Wilhelmi; University of Karlsruhe
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22
23 /*
24  * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
25  * file for a list of people on the GLib Team.  See the ChangeLog
26  * files for a list of changes.  These files are distributed with
27  * GLib at ftp://ftp.gtk.org/pub/gtk/.
28  */
29
30 /*
31  * MT safe
32  */
33
34 #include "glib.h"
35
36 #include "gthreadprivate.h"
37
38 void
39 g_thread_init (GThreadFunctions *init)
40 {
41   static gboolean already_done;
42
43   if (init != NULL)
44     g_warning ("GThread system no longer supports custom thread implementations.");
45
46   if (already_done)
47     return;
48
49   already_done = TRUE;
50
51   g_thread_init_glib ();
52 }
53
54 void
55 g_thread_init_with_errorcheck_mutexes (GThreadFunctions *vtable)
56 {
57   g_assert (vtable == NULL);
58
59   g_thread_init (NULL);
60 }