diff options
author | Shaun McCance <shaunm@gnome.org> | 2013-08-18 17:40:49 -0400 |
---|---|---|
committer | Shaun McCance <shaunm@gnome.org> | 2013-08-18 17:40:49 -0400 |
commit | a25ade835a3b706749e7e324e85120c749999372 (patch) | |
tree | dfb4a1cf030d818abfcd47e732c24886be6cb18c | |
parent | f762d7559e35a12601a513b7ac191ada2b8cc304 (diff) | |
download | yelp-a25ade835a3b706749e7e324e85120c749999372.tar.gz |
Updates for some deprecated thread APIs
-rw-r--r-- | libyelp/yelp-docbook-document.c | 36 | ||||
-rw-r--r-- | libyelp/yelp-document.c | 146 | ||||
-rw-r--r-- | libyelp/yelp-help-list.c | 19 | ||||
-rw-r--r-- | libyelp/yelp-info-document.c | 21 | ||||
-rw-r--r-- | libyelp/yelp-mallard-document.c | 37 | ||||
-rw-r--r-- | libyelp/yelp-man-document.c | 21 | ||||
-rw-r--r-- | libyelp/yelp-settings.c | 52 | ||||
-rw-r--r-- | libyelp/yelp-sqlite-storage.c | 23 | ||||
-rw-r--r-- | libyelp/yelp-storage.c | 6 | ||||
-rw-r--r-- | libyelp/yelp-transform.c | 45 | ||||
-rw-r--r-- | libyelp/yelp-uri.c | 5 |
11 files changed, 210 insertions, 201 deletions
diff --git a/libyelp/yelp-docbook-document.c b/libyelp/yelp-docbook-document.c index b7e3a985..48dc632c 100644 --- a/libyelp/yelp-docbook-document.c +++ b/libyelp/yelp-docbook-document.c @@ -103,7 +103,7 @@ struct _YelpDocbookDocumentPrivate { DocbookState state; - GMutex *mutex; + GMutex mutex; GThread *thread; GThread *index; @@ -169,7 +169,7 @@ yelp_docbook_document_init (YelpDocbookDocument *docbook) priv->state = DOCBOOK_STATE_BLANK; - priv->mutex = g_mutex_new (); + g_mutex_init (&priv->mutex); } static void @@ -202,7 +202,7 @@ yelp_docbook_document_finalize (GObject *object) g_free (priv->cur_prev_id); g_free (priv->root_id); - g_mutex_free (priv->mutex); + g_mutex_clear (&priv->mutex); G_OBJECT_CLASS (yelp_docbook_document_parent_class)->finalize (object); } @@ -263,15 +263,16 @@ docbook_request_page (YelpDocument *document, return handled; } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); switch (priv->state) { case DOCBOOK_STATE_BLANK: priv->state = DOCBOOK_STATE_PARSING; priv->process_running = TRUE; g_object_ref (document); - priv->thread = g_thread_create ((GThreadFunc) docbook_process, - document, FALSE, NULL); + priv->thread = g_thread_new ("docbook-page", + (GThreadFunc) docbook_process, + document); break; case DOCBOOK_STATE_PARSING: break; @@ -289,7 +290,7 @@ docbook_request_page (YelpDocument *document, break; } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return FALSE; } @@ -361,7 +362,7 @@ docbook_process (YelpDocbookDocument *docbook) goto done; } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (!xmlStrcmp (xmlDocGetRootElement (xmldoc)->name, BAD_CAST "book")) priv->max_depth = 2; else @@ -392,20 +393,20 @@ docbook_process (YelpDocbookDocument *docbook) xmlNewProp (priv->xmlcur, BAD_CAST "id", BAD_CAST "//index"); } yelp_document_set_root_id (document, priv->root_id, priv->root_id); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->state == DOCBOOK_STATE_STOP) { - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); goto done; } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); docbook_walk (docbook); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->state == DOCBOOK_STATE_STOP) { - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); goto done; } @@ -436,7 +437,7 @@ docbook_process (YelpDocbookDocument *docbook) NULL, (const gchar * const *) params); g_strfreev (params); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); done: g_free (filepath); @@ -1048,7 +1049,8 @@ docbook_index (YelpDocument *document) priv = GET_PRIV (document); g_object_ref (document); - priv->index = g_thread_create ((GThreadFunc) docbook_index_threaded, - document, FALSE, NULL); + priv->index = g_thread_new ("docbook-index", + (GThreadFunc) docbook_index_threaded, + document); priv->index_running = TRUE; } diff --git a/libyelp/yelp-document.c b/libyelp/yelp-document.c index 8794682d..e686bb61 100644 --- a/libyelp/yelp-document.c +++ b/libyelp/yelp-document.c @@ -66,7 +66,7 @@ struct _Hash { }; struct _YelpDocumentPriv { - GMutex *mutex; + GMutex mutex; GSList *reqs_all; /* Holds canonical refs, only free from here */ Hash *reqs_by_page_id; /* Indexed by page ID, contains GSList */ @@ -153,7 +153,7 @@ static void request_free (Request *request); static const gchar * str_ref (const gchar *str); static void str_unref (const gchar *str); -GStaticMutex str_mutex = G_STATIC_MUTEX_INIT; +static GMutex str_mutex; GHashTable *str_refs = NULL; /******************************************************************************/ @@ -290,7 +290,7 @@ yelp_document_init (YelpDocument *document) document->priv = priv = GET_PRIV (document); - priv->mutex = g_mutex_new (); + g_mutex_init (&priv->mutex); priv->reqs_by_page_id = hash_new ((GDestroyNotify) g_slist_free); priv->reqs_all = NULL; @@ -358,7 +358,7 @@ yelp_document_finalize (GObject *object) g_hash_table_destroy (document->priv->core_ids); - g_mutex_free (document->priv->mutex); + g_mutex_clear (&document->priv->mutex); G_OBJECT_CLASS (yelp_document_parent_class)->finalize (object); } @@ -420,7 +420,7 @@ yelp_document_list_page_ids (YelpDocument *document) g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); lst = g_hash_table_get_keys (document->priv->core_ids); ret = g_new0 (gchar *, g_list_length (lst) + 1); @@ -431,7 +431,7 @@ yelp_document_list_page_ids (YelpDocument *document) } g_list_free (lst); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -447,12 +447,12 @@ yelp_document_get_page_id (YelpDocument *document, if (id != NULL && g_str_has_prefix (id, "search=")) return g_strdup (id); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); ret = hash_lookup (document->priv->page_ids, id); if (ret) ret = g_strdup (ret); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -464,7 +464,7 @@ yelp_document_set_page_id (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->page_ids, id, g_strdup (page_id)); @@ -491,7 +491,7 @@ yelp_document_set_page_id (YelpDocument *document, } } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -502,7 +502,7 @@ yelp_document_get_root_id (YelpDocument *document, g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); if (page_id != NULL && g_str_has_prefix (page_id, "search=")) real = hash_lookup (document->priv->page_ids, NULL); else @@ -512,7 +512,7 @@ yelp_document_get_root_id (YelpDocument *document, if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -524,9 +524,9 @@ yelp_document_set_root_id (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->root_ids, page_id, g_strdup (root_id)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -537,14 +537,14 @@ yelp_document_get_prev_id (YelpDocument *document, g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); real = hash_lookup (document->priv->page_ids, page_id); if (real) { ret = hash_lookup (document->priv->prev_ids, real); if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -556,9 +556,9 @@ yelp_document_set_prev_id (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->prev_ids, page_id, g_strdup (prev_id)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -569,14 +569,14 @@ yelp_document_get_next_id (YelpDocument *document, g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); real = hash_lookup (document->priv->page_ids, page_id); if (real) { ret = hash_lookup (document->priv->next_ids, real); if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -588,9 +588,9 @@ yelp_document_set_next_id (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->next_ids, page_id, g_strdup (next_id)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -601,14 +601,14 @@ yelp_document_get_up_id (YelpDocument *document, g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); real = hash_lookup (document->priv->page_ids, page_id); if (real) { ret = hash_lookup (document->priv->up_ids, real); if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -620,9 +620,9 @@ yelp_document_set_up_id (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->up_ids, page_id, g_strdup (up_id)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -633,7 +633,7 @@ yelp_document_get_root_title (YelpDocument *document, g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); if (page_id != NULL && g_str_has_prefix (page_id, "search=")) { ret = yelp_storage_get_root_title (yelp_storage_get_default (), document->priv->doc_uri); @@ -650,7 +650,7 @@ yelp_document_get_root_title (YelpDocument *document, } } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -668,14 +668,14 @@ yelp_document_get_page_title (YelpDocument *document, return ret; } - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); real = hash_lookup (document->priv->page_ids, page_id); if (real) { ret = hash_lookup (document->priv->titles, real); if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -687,9 +687,9 @@ yelp_document_set_page_title (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->titles, page_id, g_strdup (title)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -703,14 +703,14 @@ yelp_document_get_page_desc (YelpDocument *document, if (page_id != NULL && g_str_has_prefix (page_id, "search=")) return yelp_document_get_root_title (document, page_id); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); real = hash_lookup (document->priv->page_ids, page_id); if (real) { ret = hash_lookup (document->priv->descs, real); if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -722,9 +722,9 @@ yelp_document_set_page_desc (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->descs, page_id, g_strdup (desc)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -738,14 +738,14 @@ yelp_document_get_page_icon (YelpDocument *document, if (page_id != NULL && g_str_has_prefix (page_id, "search=")) return g_strdup ("yelp-page-search-symbolic"); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); real = hash_lookup (document->priv->page_ids, page_id); if (real) { ret = hash_lookup (document->priv->icons, real); if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); if (ret == NULL) ret = g_strdup ("yelp-page-symbolic"); @@ -760,15 +760,15 @@ yelp_document_set_page_icon (YelpDocument *document, { g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->icons, page_id, g_strdup (icon)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } static void document_indexed (YelpDocument *document) { - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); while (document->priv->reqs_search != NULL) { Request *request = (Request *) document->priv->reqs_search->data; request->idle_funcs++; @@ -777,7 +777,7 @@ document_indexed (YelpDocument *document) document->priv->reqs_search = g_slist_delete_link (document->priv->reqs_search, document->priv->reqs_search); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } /******************************************************************************/ @@ -829,7 +829,7 @@ document_request_page (YelpDocument *document, request->user_data = user_data; request->idle_funcs = 0; - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); if (g_str_has_prefix (page_id, "search=")) { document->priv->reqs_search = g_slist_prepend (document->priv->reqs_search, request); @@ -837,7 +837,7 @@ document_request_page (YelpDocument *document, g_idle_add ((GSourceFunc) document_indexed, document); else yelp_document_index (document); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return TRUE; } @@ -859,7 +859,7 @@ document_request_page (YelpDocument *document, ret = TRUE; } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -867,7 +867,7 @@ document_request_page (YelpDocument *document, void yelp_document_clear_contents (YelpDocument *document) { - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); if (document->priv->contents->null) { str_unref (document->priv->contents->null); @@ -875,7 +875,7 @@ yelp_document_clear_contents (YelpDocument *document) } g_hash_table_remove_all (document->priv->contents->hash); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar ** @@ -885,7 +885,7 @@ yelp_document_get_requests (YelpDocument *document) gchar **ret; gint i; - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); reqs = g_hash_table_get_keys (document->priv->reqs_by_page_id->hash); ret = g_new0 (gchar*, g_list_length (reqs) + 1); @@ -894,7 +894,7 @@ yelp_document_get_requests (YelpDocument *document) } g_list_free (reqs); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -917,7 +917,7 @@ document_read_contents (YelpDocument *document, { gchar *real, *str, **colors; - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); if (page_id != NULL && g_str_has_prefix (page_id, "search=")) { gchar *tmp, *tmp2, *txt; @@ -986,7 +986,7 @@ document_read_contents (YelpDocument *document, str = hash_lookup (document->priv->contents, real); if (str) { str_ref (str); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return (const gchar *) str; } @@ -1036,7 +1036,7 @@ document_read_contents (YelpDocument *document, hash_replace (document->priv->contents, page_id, g_string_free (ret, FALSE)); str = hash_lookup (document->priv->contents, page_id); str_ref (str); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return (const gchar *) str; } @@ -1045,7 +1045,7 @@ document_read_contents (YelpDocument *document, if (str) str_ref (str); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return (const gchar *) str; } @@ -1078,7 +1078,7 @@ yelp_document_give_contents (YelpDocument *document, debug_print (DB_FUNCTION, "entering\n"); debug_print (DB_ARG, " page_id = \"%s\"\n", page_id); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); hash_replace (document->priv->contents, page_id, @@ -1088,7 +1088,7 @@ yelp_document_give_contents (YelpDocument *document, page_id, g_strdup (mime)); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } gchar * @@ -1107,14 +1107,14 @@ document_get_mime_type (YelpDocument *document, { gchar *real, *ret = NULL; - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); real = hash_lookup (document->priv->page_ids, page_id); if (real) { ret = hash_lookup (document->priv->mime_types, real); if (ret) ret = g_strdup (ret); } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); return ret; } @@ -1148,7 +1148,7 @@ yelp_document_signal (YelpDocument *document, g_return_if_fail (YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); reqs = hash_lookup (document->priv->reqs_by_page_id, page_id); for (cur = reqs; cur != NULL; cur = cur->next) { @@ -1174,7 +1174,7 @@ yelp_document_signal (YelpDocument *document, } } - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } static gboolean @@ -1184,7 +1184,7 @@ yelp_document_error_pending_idle (YelpDocument *document) GSList *cur; Request *request; - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->reqs_pending) { for (cur = priv->reqs_pending; cur; cur = cur->next) { @@ -1198,7 +1198,7 @@ yelp_document_error_pending_idle (YelpDocument *document) priv->reqs_pending = NULL; } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); g_object_unref (document); return FALSE; @@ -1319,7 +1319,7 @@ request_cancel (GCancellable *cancellable, Request *request) g_assert (document != NULL && YELP_IS_DOCUMENT (document)); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); document->priv->reqs_pending = g_slist_remove (document->priv->reqs_pending, (gconstpointer) request); @@ -1343,7 +1343,7 @@ request_cancel (GCancellable *cancellable, Request *request) } request_try_free (request); - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); } static gboolean @@ -1364,7 +1364,7 @@ request_idle_contents (Request *request) document = g_object_ref (request->document); priv = GET_PRIV (document); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); priv->reqs_pending = g_slist_remove (priv->reqs_pending, request); @@ -1372,7 +1372,7 @@ request_idle_contents (Request *request) user_data = request->user_data; request->idle_funcs--; - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); if (callback) callback (document, YELP_DOCUMENT_SIGNAL_CONTENTS, user_data, NULL); @@ -1397,13 +1397,13 @@ request_idle_info (Request *request) document = g_object_ref (request->document); - g_mutex_lock (document->priv->mutex); + g_mutex_lock (&document->priv->mutex); callback = request->callback; user_data = request->user_data; request->idle_funcs--; - g_mutex_unlock (document->priv->mutex); + g_mutex_unlock (&document->priv->mutex); if (callback) callback (document, YELP_DOCUMENT_SIGNAL_INFO, user_data, NULL); @@ -1431,7 +1431,7 @@ request_idle_error (Request *request) document = g_object_ref (request->document); priv = GET_PRIV (document); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (request->error) { callback = request->callback; @@ -1441,7 +1441,7 @@ request_idle_error (Request *request) } request->idle_funcs--; - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); if (callback) callback (document, @@ -1489,7 +1489,7 @@ str_ref (const gchar *str) gpointer p; guint i; - g_static_mutex_lock (&str_mutex); + g_mutex_lock (&str_mutex); if (str_refs == NULL) str_refs = g_hash_table_new (g_direct_hash, g_direct_equal); p = g_hash_table_lookup (str_refs, str); @@ -1499,7 +1499,7 @@ str_ref (const gchar *str) p = GUINT_TO_POINTER (i); g_hash_table_insert (str_refs, (gpointer) str, p); - g_static_mutex_unlock (&str_mutex); + g_mutex_unlock (&str_mutex); return str; } @@ -1510,7 +1510,7 @@ str_unref (const gchar *str) gpointer p; guint i; - g_static_mutex_lock (&str_mutex); + g_mutex_lock (&str_mutex); p = g_hash_table_lookup (str_refs, str); i = GPOINTER_TO_UINT (p); @@ -1525,5 +1525,5 @@ str_unref (const gchar *str) g_free ((gchar *) str); } - g_static_mutex_unlock (&str_mutex); + g_mutex_unlock (&str_mutex); } diff --git a/libyelp/yelp-help-list.c b/libyelp/yelp-help-list.c index ca2afa8e..5bb623e5 100644 --- a/libyelp/yelp-help-list.c +++ b/libyelp/yelp-help-list.c @@ -92,7 +92,7 @@ G_DEFINE_TYPE (YelpHelpList, yelp_help_list, YELP_TYPE_DOCUMENT); typedef struct _YelpHelpListPrivate YelpHelpListPrivate; struct _YelpHelpListPrivate { - GMutex *mutex; + GMutex mutex; GThread *thread; gboolean process_running; @@ -126,7 +126,7 @@ yelp_help_list_init (YelpHelpList *list) { YelpHelpListPrivate *priv = GET_PRIV (list); - priv->mutex = g_mutex_new (); + g_mutex_init (&priv->mutex); priv->entries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) help_list_entry_free); @@ -157,7 +157,7 @@ yelp_help_list_finalize (GObject *object) YelpHelpListPrivate *priv = GET_PRIV (object); g_hash_table_destroy (priv->entries); - g_mutex_free (priv->mutex); + g_mutex_clear (&priv->mutex); if (priv->get_docbook_title) xmlXPathFreeCompExpr (priv->get_docbook_title); @@ -200,7 +200,7 @@ help_list_request_page (YelpDocument *document, return TRUE; } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->process_ran) { help_list_handle_page ((YelpHelpList *) document, page_id); return TRUE; @@ -209,11 +209,12 @@ help_list_request_page (YelpDocument *document, if (!priv->process_running) { priv->process_running = TRUE; g_object_ref (document); - priv->thread = g_thread_create ((GThreadFunc) help_list_think, - document, FALSE, NULL); + priv->thread = g_thread_new ("helplist-page", + (GThreadFunc) help_list_think, + document); } priv->pending = g_slist_prepend (priv->pending, g_strdup (page_id)); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return TRUE; } @@ -425,7 +426,7 @@ help_list_think (YelpHelpList *list) } } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); priv->process_running = FALSE; priv->process_ran = TRUE; while (priv->pending) { @@ -434,7 +435,7 @@ help_list_think (YelpHelpList *list) g_free (page_id); priv->pending = g_slist_delete_link (priv->pending, priv->pending); } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); g_object_unref (list); } diff --git a/libyelp/yelp-info-document.c b/libyelp/yelp-info-document.c index 136b2747..7f3c0806 100644 --- a/libyelp/yelp-info-document.c +++ b/libyelp/yelp-info-document.c @@ -51,7 +51,7 @@ struct _YelpInfoDocumentPrivate { YelpUri *uri; InfoState state; - GMutex *mutex; + GMutex mutex; GThread *thread; xmlDocPtr xmldoc; @@ -125,7 +125,7 @@ yelp_info_document_init (YelpInfoDocument *info) priv->state = INFO_STATE_BLANK; priv->xmldoc = NULL; - priv->mutex = g_mutex_new (); + g_mutex_init (&priv->mutex); } static void @@ -162,7 +162,7 @@ yelp_info_document_finalize (GObject *object) g_free (priv->root_id); g_free (priv->visit_prev_id); - g_mutex_free (priv->mutex); + g_mutex_clear (&priv->mutex); G_OBJECT_CLASS (yelp_info_document_parent_class)->finalize (object); } @@ -219,15 +219,16 @@ info_request_page (YelpDocument *document, return TRUE; } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); switch (priv->state) { case INFO_STATE_BLANK: priv->state = INFO_STATE_PARSING; priv->process_running = TRUE; g_object_ref (document); - priv->thread = g_thread_create ((GThreadFunc) info_document_process, - document, FALSE, NULL); + priv->thread = g_thread_new ("info-page", + (GThreadFunc) info_document_process, + document); break; case INFO_STATE_PARSING: break; @@ -245,7 +246,7 @@ info_request_page (YelpDocument *document, break; } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return TRUE; } @@ -401,9 +402,9 @@ info_document_process (YelpInfoDocument *info) goto done; } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->state == INFO_STATE_STOP) { - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); goto done; } @@ -429,7 +430,7 @@ info_document_process (YelpInfoDocument *info) NULL, (const gchar * const *) params); g_strfreev (params); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); done: g_free (filepath); diff --git a/libyelp/yelp-mallard-document.c b/libyelp/yelp-mallard-document.c index f73780b0..ca9e258e 100644 --- a/libyelp/yelp-mallard-document.c +++ b/libyelp/yelp-mallard-document.c @@ -123,7 +123,7 @@ struct _YelpMallardDocumentPrivate { YelpUri *uri; MallardState state; - GMutex *mutex; + GMutex mutex; GThread *thread; gboolean thread_running; GThread *index; @@ -162,7 +162,7 @@ yelp_mallard_document_init (YelpMallardDocument *mallard) YelpMallardDocumentPrivate *priv = GET_PRIV (mallard); xmlNodePtr cur; - priv->mutex = g_mutex_new (); + g_mutex_init (&priv->mutex); priv->thread_running = FALSE; priv->index_running = FALSE; @@ -202,7 +202,7 @@ yelp_mallard_document_finalize (GObject *object) YelpMallardDocumentPrivate *priv = GET_PRIV (object); g_object_unref (priv->uri); - g_mutex_free (priv->mutex); + g_mutex_clear (&priv->mutex); g_hash_table_destroy (priv->pages_hash); xmlFreeDoc (priv->cache); @@ -282,14 +282,15 @@ mallard_request_page (YelpDocument *document, return TRUE; } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->state == MALLARD_STATE_BLANK) { priv->state = MALLARD_STATE_THINKING; priv->thread_running = TRUE; g_object_ref (document); - priv->thread = g_thread_create ((GThreadFunc) mallard_think, - document, FALSE, NULL); + priv->thread = g_thread_new ("mallard-page", + (GThreadFunc) mallard_think, + document); } switch (priv->state) { @@ -313,7 +314,7 @@ mallard_request_page (YelpDocument *document, break; } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return FALSE; } @@ -379,7 +380,7 @@ mallard_think (YelpMallardDocument *mallard) mallard_page_data_free (page_data); } else { - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); yelp_document_set_root_id ((YelpDocument *) mallard, page_data->page_id, "index"); yelp_document_set_page_id ((YelpDocument *) mallard, @@ -403,7 +404,7 @@ mallard_think (YelpMallardDocument *mallard) page_data->page_id, YELP_DOCUMENT_SIGNAL_INFO, NULL); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); } g_object_unref (pagefile); g_free (filename); @@ -412,7 +413,7 @@ mallard_think (YelpMallardDocument *mallard) } g_strfreev (path); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); priv->state = MALLARD_STATE_IDLE; while (priv->pending) { gchar *page_id = (gchar *) priv->pending->data; @@ -420,7 +421,7 @@ mallard_think (YelpMallardDocument *mallard) g_free (page_id); priv->pending = g_slist_delete_link (priv->pending, priv->pending); } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); done: g_object_unref (children); @@ -1098,8 +1099,9 @@ mallard_index (YelpDocument *document) priv = GET_PRIV (document); g_object_ref (document); - priv->index = g_thread_create ((GThreadFunc) mallard_index_threaded, - document, FALSE, NULL); + priv->index = g_thread_new ("mallard-index", + (GThreadFunc) mallard_index_threaded, + document); priv->index_running = TRUE; } @@ -1121,7 +1123,7 @@ mallard_monitor_changed (GFileMonitor *monitor, if (priv->thread_running) return; - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); g_hash_table_remove_all (priv->pages_hash); g_object_set (mallard, "indexed", FALSE, NULL); @@ -1145,8 +1147,9 @@ mallard_monitor_changed (GFileMonitor *monitor, priv->state = MALLARD_STATE_THINKING; priv->thread_running = TRUE; g_object_ref (mallard); - priv->thread = g_thread_create ((GThreadFunc) mallard_think, - mallard, FALSE, NULL); + priv->thread = g_thread_new ("mallard-reload", + (GThreadFunc) mallard_think, + mallard); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); } diff --git a/libyelp/yelp-man-document.c b/libyelp/yelp-man-document.c index 8d8031bd..3d0116b7 100644 --- a/libyelp/yelp-man-document.c +++ b/libyelp/yelp-man-document.c @@ -50,7 +50,7 @@ struct _YelpManDocumentPrivate { ManState state; gchar *page_id; - GMutex *mutex; + GMutex mutex; GThread *thread; xmlDocPtr xmldoc; @@ -172,7 +172,7 @@ yelp_man_document_init (YelpManDocument *man) YelpManDocumentPrivate *priv = GET_PRIV (man); priv->state = MAN_STATE_BLANK; - priv->mutex = g_mutex_new (); + g_mutex_init (&priv->mutex); } static void @@ -196,7 +196,7 @@ yelp_man_document_finalize (GObject *object) if (priv->xmldoc) xmlFreeDoc (priv->xmldoc); - g_mutex_free (priv->mutex); + g_mutex_clear (&priv->mutex); g_free (priv->page_id); G_OBJECT_CLASS (yelp_man_document_parent_class)->finalize (object); @@ -258,7 +258,7 @@ man_request_page (YelpDocument *document, return handled; } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); switch (priv->state) { case MAN_STATE_BLANK: @@ -270,8 +270,9 @@ man_request_page (YelpDocument *document, yelp_document_set_page_id (document, "//index", priv->page_id); yelp_document_set_page_id (document, priv->page_id, priv->page_id); yelp_document_set_root_id (document, priv->page_id, priv->page_id); - priv->thread = g_thread_create ((GThreadFunc) man_document_process, - document, FALSE, NULL); + priv->thread = g_thread_new ("man-page", + (GThreadFunc) man_document_process, + document); break; case MAN_STATE_PARSING: break; @@ -289,7 +290,7 @@ man_request_page (YelpDocument *document, break; } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return FALSE; } @@ -457,9 +458,9 @@ man_document_process (YelpManDocument *man) yelp_document_error_pending ((YelpDocument *) man, error); } - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->state == MAN_STATE_STOP) { - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); goto done; } @@ -485,7 +486,7 @@ man_document_process (YelpManDocument *man) NULL, (const gchar * const *) params); g_strfreev (params); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); done: g_free (filepath); diff --git a/libyelp/yelp-settings.c b/libyelp/yelp-settings.c index 2635b9b4..c202a05f 100644 --- a/libyelp/yelp-settings.c +++ b/libyelp/yelp-settings.c @@ -32,7 +32,7 @@ #include "yelp-settings.h" struct _YelpSettingsPriv { - GMutex *mutex; + GMutex mutex; gchar colors[YELP_SETTINGS_NUM_COLORS][8]; gchar *setfonts[YELP_SETTINGS_NUM_FONTS]; @@ -228,7 +228,7 @@ yelp_settings_init (YelpSettings *settings) gint i; settings->priv = GET_PRIV (settings); - settings->priv->mutex = g_mutex_new (); + g_mutex_init (&settings->priv->mutex); settings->priv->icon_size = 24; for (i = 0; i < YELP_SETTINGS_NUM_ICONS; i++) @@ -345,7 +345,7 @@ yelp_settings_finalize (GObject *object) { YelpSettings *settings = YELP_SETTINGS (object); - g_mutex_free (settings->priv->mutex); + g_mutex_clear (&settings->priv->mutex); g_hash_table_destroy (settings->priv->tokens); @@ -484,15 +484,15 @@ yelp_settings_set_property (GObject *object, YelpSettings * yelp_settings_get_default (void) { - static GStaticMutex mutex = G_STATIC_MUTEX_INIT; + static GMutex mutex; static YelpSettings *settings = NULL; - g_static_mutex_lock (&mutex); + g_mutex_lock (&mutex); if (settings == NULL) settings = g_object_new (YELP_TYPE_SETTINGS, "gtk-settings", gtk_settings_get_default (), "gtk-icon-theme", gtk_icon_theme_get_default (), NULL); - g_static_mutex_unlock (&mutex); + g_mutex_unlock (&mutex); return settings; } @@ -505,9 +505,9 @@ yelp_settings_get_color (YelpSettings *settings, gchar *colorstr; g_return_val_if_fail (color < YELP_SETTINGS_NUM_COLORS, NULL); - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); colorstr = g_strdup (settings->priv->colors[color]); - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); return colorstr; } @@ -530,7 +530,7 @@ yelp_settings_set_colors (YelpSettings *settings, YelpSettingsColor color; va_list args; - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); va_start (args, first_color); color = first_color; @@ -547,7 +547,7 @@ yelp_settings_set_colors (YelpSettings *settings, } va_end (args); - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); g_signal_emit (settings, settings_signals[COLORS_CHANGED], 0); } @@ -584,12 +584,12 @@ yelp_settings_get_font (YelpSettings *settings, gchar *ret; g_return_val_if_fail (font < YELP_SETTINGS_NUM_FONTS, NULL); - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); if (settings->priv->setfonts[font]) ret = g_strdup (settings->priv->setfonts[font]); else ret = g_strdup (settings->priv->fonts[font]); - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); return ret; } @@ -602,7 +602,7 @@ yelp_settings_get_font_family (YelpSettings *settings, gchar *desc, *ret, *c; /* do not free */ g_return_val_if_fail (font < YELP_SETTINGS_NUM_FONTS, NULL); - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); if (settings->priv->setfonts[font]) desc = g_strdup (settings->priv->setfonts[font]); @@ -624,7 +624,7 @@ yelp_settings_get_font_family (YelpSettings *settings, ret = g_strndup (desc, c - desc); done: - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); return ret; } @@ -636,7 +636,7 @@ yelp_settings_get_font_size (YelpSettings *settings, gint ret; g_return_val_if_fail (font < YELP_SETTINGS_NUM_FONTS, 0); - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); if (settings->priv->setfonts[font]) desc = g_strdup (settings->priv->setfonts[font]); @@ -658,7 +658,7 @@ yelp_settings_get_font_size (YelpSettings *settings, ret = g_ascii_strtod (c, NULL); done: - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); ret += settings->priv->font_adjustment; ret = (ret < 5) ? 5 : ret; return ret; @@ -672,7 +672,7 @@ yelp_settings_set_fonts (YelpSettings *settings, YelpSettingsFont font; va_list args; - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); va_start (args, first_font); font = first_font; @@ -685,7 +685,7 @@ yelp_settings_set_fonts (YelpSettings *settings, } va_end (args); - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); g_signal_emit (settings, settings_signals[FONTS_CHANGED], 0); } @@ -727,9 +727,9 @@ yelp_settings_get_icon (YelpSettings *settings, gchar *ret; g_return_val_if_fail (icon < YELP_SETTINGS_NUM_ICONS, NULL); - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); ret = g_strdup (settings->priv->icons[icon]); - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); return ret; } @@ -742,7 +742,7 @@ yelp_settings_set_icons (YelpSettings *settings, YelpSettingsIcon icon; va_list args; - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); va_start (args, first_icon); icon = first_icon; @@ -755,7 +755,7 @@ yelp_settings_set_icons (YelpSettings *settings, } va_end (args); - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); g_signal_emit (settings, settings_signals[ICONS_CHANGED], 0); } @@ -895,7 +895,7 @@ gtk_theme_changed (GtkSettings *gtk_settings, gdouble text_h, text_s, text_v; gint i; - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); style = gtk_rc_get_style_by_paths (gtk_settings, "GtkTextView", "GtkTextView", @@ -1009,7 +1009,7 @@ gtk_theme_changed (GtkSettings *gtk_settings, g_object_unref (G_OBJECT (style)); - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); g_signal_emit (settings, settings_signals[COLORS_CHANGED], 0); } @@ -1051,7 +1051,7 @@ icon_theme_changed (GtkIconTheme *theme, GtkIconInfo *info; gint i; - g_mutex_lock (settings->priv->mutex); + g_mutex_lock (&settings->priv->mutex); for (i = 0; i < YELP_SETTINGS_NUM_ICONS; i++) { if (settings->priv->icons[i] != NULL) @@ -1070,7 +1070,7 @@ icon_theme_changed (GtkIconTheme *theme, } } - g_mutex_unlock (settings->priv->mutex); + g_mutex_unlock (&settings->priv->mutex); g_signal_emit (settings, settings_signals[ICONS_CHANGED], 0); } diff --git a/libyelp/yelp-sqlite-storage.c b/libyelp/yelp-sqlite-storage.c index f2e6619f..e592b023 100644 --- a/libyelp/yelp-sqlite-storage.c +++ b/libyelp/yelp-sqlite-storage.c @@ -60,7 +60,7 @@ typedef struct _YelpSqliteStoragePrivate YelpSqliteStoragePrivate; struct _YelpSqliteStoragePrivate { gchar *filename; sqlite3 *db; - GMutex *mutex; + GMutex mutex; }; enum { @@ -84,8 +84,7 @@ yelp_sqlite_storage_finalize (GObject *object) if (priv->db) sqlite3_close (priv->db); - if (priv->mutex) - g_mutex_free (priv->mutex); + g_mutex_clear (&priv->mutex); G_OBJECT_CLASS (yelp_sqlite_storage_parent_class)->finalize (object); } @@ -94,7 +93,7 @@ static void yelp_sqlite_storage_init (YelpSqliteStorage *storage) { YelpSqliteStoragePrivate *priv = GET_PRIV (storage); - priv->mutex = g_mutex_new (); + g_mutex_init (&priv->mutex); } static void @@ -225,7 +224,7 @@ yelp_sqlite_storage_update (YelpStorage *storage, sqlite3_stmt *stmt = NULL; YelpSqliteStoragePrivate *priv = GET_PRIV (storage); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); sqlite3_prepare_v2 (priv->db, "delete from pages where doc_uri = ? and lang = ? and full_uri = ?;", @@ -250,7 +249,7 @@ yelp_sqlite_storage_update (YelpStorage *storage, sqlite3_step (stmt); sqlite3_finalize (stmt); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); } static GVariant * @@ -263,7 +262,7 @@ yelp_sqlite_storage_search (YelpStorage *storage, GVariant *ret; YelpSqliteStoragePrivate *priv = GET_PRIV (storage); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); sqlite3_prepare_v2 (priv->db, "select full_uri, title, desc, icon from pages where" @@ -284,7 +283,7 @@ yelp_sqlite_storage_search (YelpStorage *storage, sqlite3_finalize (stmt); ret = g_variant_new ("a(ssss)", &builder); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return ret; } @@ -297,7 +296,7 @@ yelp_sqlite_storage_get_root_title (YelpStorage *storage, sqlite3_stmt *stmt = NULL; YelpSqliteStoragePrivate *priv = GET_PRIV (storage); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); sqlite3_prepare_v2 (priv->db, "select title from titles where doc_uri = ? and lang = ?;", @@ -308,7 +307,7 @@ yelp_sqlite_storage_get_root_title (YelpStorage *storage, ret = g_strdup (sqlite3_column_text (stmt, 0)); sqlite3_finalize (stmt); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return ret; } @@ -320,7 +319,7 @@ yelp_sqlite_storage_set_root_title (YelpStorage *storage, sqlite3_stmt *stmt = NULL; YelpSqliteStoragePrivate *priv = GET_PRIV (storage); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); sqlite3_prepare_v2 (priv->db, "delete from titles where doc_uri = ? and lang = ?;", @@ -340,5 +339,5 @@ yelp_sqlite_storage_set_root_title (YelpStorage *storage, sqlite3_step (stmt); sqlite3_finalize (stmt); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); } diff --git a/libyelp/yelp-storage.c b/libyelp/yelp-storage.c index e369f42b..fc61740b 100644 --- a/libyelp/yelp-storage.c +++ b/libyelp/yelp-storage.c @@ -42,11 +42,11 @@ yelp_storage_set_default (YelpStorage *storage) YelpStorage * yelp_storage_get_default (void) { - static GStaticMutex mutex = G_STATIC_MUTEX_INIT; - g_static_mutex_lock (&mutex); + static GMutex mutex; + g_mutex_lock (&mutex); if (default_storage == NULL) default_storage = yelp_sqlite_storage_new (":memory:"); - g_static_mutex_unlock (&mutex); + g_mutex_unlock (&mutex); return default_storage; } diff --git a/libyelp/yelp-transform.c b/libyelp/yelp-transform.c index eecfe6a7..933ba04e 100644 --- a/libyelp/yelp-transform.c +++ b/libyelp/yelp-transform.c @@ -109,7 +109,7 @@ struct _YelpTransformPrivate { gchar **params; GThread *thread; - GMutex *mutex; + GMutex mutex; GAsyncQueue *queue; GHashTable *chunks; @@ -239,7 +239,7 @@ yelp_transform_finalize (GObject *object) g_hash_table_destroy (priv->chunks); g_strfreev (priv->params); - g_mutex_free (priv->mutex); + g_mutex_clear (&priv->mutex); G_OBJECT_CLASS (yelp_transform_parent_class)->finalize (object); } @@ -304,13 +304,14 @@ yelp_transform_start (YelpTransform *transform, priv->aux = auxiliary; priv->params = g_strdupv ((gchar **) params); - priv->mutex = g_mutex_new (); - g_mutex_lock (priv->mutex); + g_mutex_init (&priv->mutex); + g_mutex_lock (&priv->mutex); priv->running = TRUE; g_object_ref (transform); - priv->thread = g_thread_create ((GThreadFunc) transform_run, - transform, FALSE, NULL); - g_mutex_unlock (priv->mutex); + priv->thread = g_thread_new ("transform-run", + (GThreadFunc) transform_run, + transform); + g_mutex_unlock (&priv->mutex); return TRUE; } @@ -322,13 +323,13 @@ yelp_transform_take_chunk (YelpTransform *transform, YelpTransformPrivate *priv = GET_PRIV (transform); gchar *buf; - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); buf = g_hash_table_lookup (priv->chunks, chunk_id); if (buf) g_hash_table_remove (priv->chunks, chunk_id); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); /* The caller assumes ownership of this memory. */ return buf; @@ -338,13 +339,13 @@ void yelp_transform_cancel (YelpTransform *transform) { YelpTransformPrivate *priv = GET_PRIV (transform); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->running) { priv->cancelled = TRUE; if (priv->context) priv->context->state = XSLT_STATE_STOPPED; } - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); } GError * @@ -353,10 +354,10 @@ yelp_transform_get_error (YelpTransform *transform) YelpTransformPrivate *priv = GET_PRIV (transform); GError *ret = NULL; - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->error) ret = g_error_copy (priv->error); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return ret; } @@ -372,7 +373,7 @@ transform_run (YelpTransform *transform) priv->stylesheet = xsltParseStylesheetFile (BAD_CAST (priv->stylesheet_file)); if (priv->stylesheet == NULL) { - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->error) g_error_free (priv->error); priv->error = g_error_new (YELP_ERROR, YELP_ERROR_PROCESSING, @@ -380,14 +381,14 @@ transform_run (YelpTransform *transform) priv->stylesheet_file); g_object_ref (transform); g_idle_add ((GSourceFunc) transform_error, transform); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return; } priv->context = xsltNewTransformContext (priv->stylesheet, priv->input); if (priv->context == NULL) { - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); if (priv->error) g_error_free (priv->error); priv->error = g_error_new (YELP_ERROR, YELP_ERROR_PROCESSING, @@ -395,7 +396,7 @@ transform_run (YelpTransform *transform) priv->stylesheet_file); g_object_ref (transform); g_idle_add ((GSourceFunc) transform_error, transform); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); return; } @@ -418,14 +419,14 @@ transform_run (YelpTransform *transform) (const char **) priv->params, NULL, NULL, priv->context); - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); priv->running = FALSE; if (!priv->cancelled) { g_idle_add ((GSourceFunc) transform_final, transform); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); } else { - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); g_object_unref (transform); } } @@ -561,7 +562,7 @@ xslt_yelp_document (xsltTransformContextPtr ctxt, ctxt->output = old_doc; ctxt->insert = old_insert; - g_mutex_lock (priv->mutex); + g_mutex_lock (&priv->mutex); temp = g_strdup ((gchar *) page_id); xmlFree (page_id); @@ -572,7 +573,7 @@ xslt_yelp_document (xsltTransformContextPtr ctxt, g_object_ref (transform); g_idle_add ((GSourceFunc) transform_chunk, transform); - g_mutex_unlock (priv->mutex); + g_mutex_unlock (&priv->mutex); done: if (new_doc) diff --git a/libyelp/yelp-uri.c b/libyelp/yelp-uri.c index be23df2c..8708d1c8 100644 --- a/libyelp/yelp-uri.c +++ b/libyelp/yelp-uri.c @@ -301,8 +301,9 @@ resolve_start (YelpUri *uri) if (priv->resolver == NULL) { g_object_ref (uri); - priv->resolver = g_thread_create ((GThreadFunc) resolve_async, - uri, FALSE, NULL); + priv->resolver = g_thread_new ("uri-resolve", + (GThreadFunc) resolve_async, + uri); } } |