Finish killing off GSystemThread
authorRyan Lortie <desrt@desrt.ca>
Thu, 13 Oct 2011 03:04:15 +0000 (23:04 -0400)
committerRyan Lortie <desrt@desrt.ca>
Thu, 13 Oct 2011 03:04:15 +0000 (23:04 -0400)
configure.ac
glib/deprecated/gthread.h
glib/glibconfig.h.win32.in
glib/gthreadprivate.h

index e6feb1d..63703db 100644 (file)
@@ -3091,20 +3091,6 @@ _______EOF
 #define G_THREADS_IMPL_$g_threads_impl_def
 _______EOF
 
-       cat >>$outfile <<_______EOF
-/* This represents a system thread as used by the implementation. An
- * alien implementaion, as loaded by g_thread_init can only count on
- * "sizeof (gpointer)" bytes to store their info. We however need more
- * for some of our native implementations. */
-typedef union _GSystemThread GSystemThread;
-union _GSystemThread
-{
-  char   data[[$g_system_thread_sizeof]];
-  double dummy_double;
-  void  *dummy_pointer;
-  long   dummy_long;
-};
-_______EOF
        if test x"$g_memory_barrier_needed" != xno; then
          echo >>$outfile
          echo "#define G_ATOMIC_OP_MEMORY_BARRIER_NEEDED 1" >>$outfile
index e699070..b375a49 100644 (file)
@@ -153,10 +153,19 @@ struct _GStaticRecMutex
   /*< private >*/
   GStaticMutex mutex;
   guint depth;
-  GSystemThread owner;
+
+  /* ABI compat only */
+  union {
+#ifdef G_OS_WIN32
+    void *owner;
+#else
+    pthread_t owner;
+#endif
+    gdouble dummy;
+  };
 };
 
-#define G_STATIC_REC_MUTEX_INIT { G_STATIC_MUTEX_INIT, 0, {{0, 0, 0, 0}} }
+#define G_STATIC_REC_MUTEX_INIT { G_STATIC_MUTEX_INIT }
 GLIB_DEPRECATED_FOR(g_rec_mutex_init)
 void     g_static_rec_mutex_init        (GStaticRecMutex *mutex);
 
index e785121..ccd9be3 100644 (file)
@@ -206,22 +206,6 @@ typedef unsigned __int64 guintptr;
 
 #define G_THREADS_ENABLED
 #define G_THREADS_IMPL_WIN32
-/* This represents a system thread as used by the implementation. An
- * alien implementaion, as loaded by g_thread_init can only count on
- * "sizeof (gpointer)" bytes to store their info. We however need more
- * for some of our native implementations. */
-typedef union _GSystemThread GSystemThread;
-union _GSystemThread
-{
-#ifndef _WIN64
-  char   data[4];
-#else
-  char   data[8];
-#endif
-  double dummy_double;
-  void  *dummy_pointer;
-  long   dummy_long;
-};
 
 #define GINT16_TO_LE(val)      ((gint16) (val))
 #define GUINT16_TO_LE(val)     ((guint16) (val))
index 565cd10..de847e4 100644 (file)
@@ -61,7 +61,6 @@ struct  _GRealThread
   GThread thread;
   const gchar *name;
   gpointer retval;
-  GSystemThread system_thread;
 };
 
 #ifdef G_OS_WIN32