G_DEFINE_TYPE (GCancellable, g_cancellable, G_TYPE_OBJECT);
-static GStaticPrivate current_cancellable = G_STATIC_PRIVATE_INIT;
+static GPrivate current_cancellable;
G_LOCK_DEFINE_STATIC(cancellable);
static GCond *cancellable_cond = NULL;
g_return_if_fail (cancellable != NULL);
- l = g_static_private_get (¤t_cancellable);
+ l = g_private_get (¤t_cancellable);
l = g_slist_prepend (l, cancellable);
- g_static_private_set (¤t_cancellable, l, NULL);
+ g_private_set (¤t_cancellable, l);
}
/**
{
GSList *l;
- l = g_static_private_get (¤t_cancellable);
+ l = g_private_get (¤t_cancellable);
g_return_if_fail (l != NULL);
g_return_if_fail (l->data == cancellable);
l = g_slist_delete_link (l, l);
- g_static_private_set (¤t_cancellable, l, NULL);
+ g_private_set (¤t_cancellable, l);
}
/**
{
GSList *l;
- l = g_static_private_get (¤t_cancellable);
+ l = g_private_get (¤t_cancellable);
if (l == NULL)
return NULL;
*
* The string returned in @charset is not allocated, and should not be
* freed.
- *
+ *
* Return value: %TRUE if the returned charset is UTF-8
**/
gboolean
-g_get_charset (const char **charset)
+g_get_charset (const char **charset)
{
- static GStaticPrivate cache_private = G_STATIC_PRIVATE_INIT;
- GCharsetCache *cache = g_static_private_get (&cache_private);
+ static GPrivate cache_private = G_PRIVATE_INIT (charset_cache_free);
+ GCharsetCache *cache = g_private_get (&cache_private);
const gchar *raw;
if (!cache)
{
cache = g_new0 (GCharsetCache, 1);
- g_static_private_set (&cache_private, cache, charset_cache_free);
+ g_private_set (&cache_private, cache);
}
G_LOCK (aliases);
/* --- variables --- */
static GModule *modules = NULL;
static GModule *main_module = NULL;
-static GStaticPrivate module_error_private = G_STATIC_PRIVATE_INIT;
+static GPrivate module_error_private = G_PRIVATE_INIT (g_free);
static gboolean module_debug_initialized = FALSE;
static guint module_debug_flags = 0;
static inline void
g_module_set_error_unduped (gchar *error)
{
- g_static_private_set (&module_error_private, error, g_free);
+ g_private_replace (&module_error_private, error);
errno = 0;
}
const gchar *
g_module_error (void)
{
- return g_static_private_get (&module_error_private);
+ return g_private_get (&module_error_private);
}
gboolean