Port g_cond_new to use GSlice

Now that nothing inside of GLib is using g_cond_new(), we can implement
it using GSlice.  Since the implementations for POSIX and Windows are
now the same, move it to gthread.c.
This commit is contained in:
Ryan Lortie 2011-09-17 18:07:39 -04:00
parent f1d34d0187
commit e996a836e8
3 changed files with 18 additions and 45 deletions

View File

@ -223,29 +223,6 @@ g_cond_timedwait (GCond *cond,
return FALSE;
}
/* {{{1 new/free API */
GCond *
g_cond_new (void)
{
GCond *cond;
/* malloc() is temporary until all libglib users are ported away */
cond = malloc (sizeof (GCond));
if G_UNLIKELY (cond == NULL)
g_thread_abort (errno, "malloc");
g_cond_init (cond);
return cond;
}
void
g_cond_free (GCond *cond)
{
g_cond_clear (cond);
free (cond);
}
/* {{{1 GPrivate */
#include "glib.h"

View File

@ -252,28 +252,6 @@ g_cond_timed_wait (GCond *cond,
}
}
/* {{{1 new/free API */
GCond *
g_cond_new (void)
{
GCond *cond;
/* malloc() is temporary until all libglib users are ported away */
cond = malloc (sizeof (GCond));
if G_UNLIKELY (cond == NULL)
g_thread_abort (errno, "malloc");
g_cond_init (cond);
return cond;
}
void
g_cond_free (GCond *cond)
{
g_cond_clear (cond);
free (cond);
}
/* {{{1 GPrivate */
#include "glib.h"

View File

@ -2591,3 +2591,21 @@ g_mutex_free (GMutex *mutex)
g_mutex_clear (mutex);
g_slice_free (GMutex, mutex);
}
GCond *
g_cond_new (void)
{
GCond *cond;
cond = g_slice_new (GCond);
g_cond_init (cond);
return cond;
}
void
g_cond_free (GCond *cond)
{
g_cond_clear (cond);
g_slice_free (GCond, cond);
}