[tracker/harmattan: 1902/2240] Bump GLib version requirement to 2.20. and removed dup funcs



commit 36af6e6d2bb2db4b573fe6d7e47837df26f7498c
Author: Martyn Russell <martyn lanedo com>
Date:   Mon Dec 21 12:37:56 2009 +0000

    Bump GLib version requirement to 2.20. and removed dup funcs

 configure.ac                           |    2 +-
 src/libtracker-common/tracker-utils.c  |  283 --------------------------------
 src/libtracker-common/tracker-utils.h  |   17 +-
 src/tracker-control/tracker-control.c  |    8 +-
 src/tracker-extract/tracker-albumart.c |   66 +--------
 src/tracker-utils/tracker-info.c       |    8 +-
 src/tracker-utils/tracker-search.c     |   48 +++---
 src/tracker-utils/tracker-sparql.c     |   32 ++--
 src/tracker-utils/tracker-tag.c        |   16 +-
 9 files changed, 65 insertions(+), 415 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 168f1cf..eb2cfca 100644
--- a/configure.ac
+++ b/configure.ac
@@ -131,7 +131,7 @@ fi
 # Library required versions
 DBUS_REQUIRED=1.0
 DBUS_GLIB_REQUIRED=0.78
-GLIB_REQUIRED=2.16.0
+GLIB_REQUIRED=2.20.0
 PANGO_REQUIRED=1.0.0
 GTK_REQUIRED=2.16.0
 LIBXML2_REQUIRED=2.6
diff --git a/src/libtracker-common/tracker-utils.c b/src/libtracker-common/tracker-utils.c
index 0e61725..79d3b61 100644
--- a/src/libtracker-common/tracker-utils.c
+++ b/src/libtracker-common/tracker-utils.c
@@ -218,288 +218,6 @@ tracker_seconds_to_string (gdouble  seconds_elapsed,
 	return str;
 }
 
-/* Temporary: Just here until we upgrade to GLib 2.18. */
-static gboolean
-tracker_dgettext_should_translate (void)
-{
-	static gsize translate = 0;
-	enum {
-		SHOULD_TRANSLATE = 1,
-		SHOULD_NOT_TRANSLATE = 2
-	};
-
-	if (G_UNLIKELY (g_once_init_enter (&translate)))
-		{
-			gboolean should_translate = TRUE;
-
-			const char *default_domain     = textdomain (NULL);
-			const char *translator_comment = gettext ("");
-#ifndef G_OS_WIN32
-			const char *translate_locale   = setlocale (LC_MESSAGES, NULL);
-#else
-			const char *translate_locale   = g_win32_getlocale ();
-#endif
-			/* We should NOT translate only if all the following hold:
-			 *   - user has called textdomain() and set textdomain to non-default
-			 *   - default domain has no translations
-			 *   - locale does not start with "en_" and is not "C"
-			 *
-			 * Rationale:
-			 *   - If text domain is still the default domain, maybe user calls
-			 *     it later. Continue with old behavior of translating.
-			 *   - If locale starts with "en_", we can continue using the
-			 *     translations even if the app doesn't have translations for
-			 *     this locale.  That is, en_UK and en_CA for example.
-			 *   - If locale is "C", maybe user calls setlocale(LC_ALL,"") later.
-			 *     Continue with old behavior of translating.
-			 */
-			if (0 != strcmp (default_domain, "messages") &&
-			    '\0' == *translator_comment &&
-			    0 != strncmp (translate_locale, "en_", 3) &&
-			    0 != strcmp (translate_locale, "C"))
-				should_translate = FALSE;
-
-			g_once_init_leave (&translate,
-			                   should_translate ?
-			                   SHOULD_TRANSLATE :
-			                   SHOULD_NOT_TRANSLATE);
-		}
-
-	return translate == SHOULD_TRANSLATE;
-}
-
-G_CONST_RETURN gchar *
-tracker_dngettext (const gchar *domain,
-                   const gchar *msgid,
-                   const gchar *msgid_plural,
-                   gulong       n)
-{
-	if (domain && G_UNLIKELY (!tracker_dgettext_should_translate ()))
-		return n == 1 ? msgid : msgid_plural;
-
-	return dngettext (domain, msgid, msgid_plural, n);
-}
-
-
-static const char *
-find_conversion (const char  *format,
-                 const char **after)
-{
-	const char *start = format;
-	const char *cp;
-
-	while (*start != '\0' && *start != '%')
-		start++;
-
-	if (*start == '\0')
-		{
-			*after = start;
-			return NULL;
-		}
-
-	cp = start + 1;
-
-	if (*cp == '\0')
-		{
-			*after = cp;
-			return NULL;
-		}
-
-	/* Test for positional argument.  */
-	if (*cp >= '0' && *cp <= '9')
-		{
-			const char *np;
-
-			for (np = cp; *np >= '0' && *np <= '9'; np++)
-				;
-			if (*np == '$')
-				cp = np + 1;
-		}
-
-	/* Skip the flags.  */
-	for (;;)
-		{
-			if (*cp == '\'' ||
-			    *cp == '-' ||
-			    *cp == '+' ||
-			    *cp == ' ' ||
-			    *cp == '#' ||
-			    *cp == '0')
-				cp++;
-			else
-				break;
-		}
-
-	/* Skip the field width.  */
-	if (*cp == '*')
-		{
-			cp++;
-
-			/* Test for positional argument.  */
-			if (*cp >= '0' && *cp <= '9')
-				{
-					const char *np;
-
-					for (np = cp; *np >= '0' && *np <= '9'; np++)
-						;
-					if (*np == '$')
-						cp = np + 1;
-				}
-		}
-	else
-		{
-			for (; *cp >= '0' && *cp <= '9'; cp++)
-				;
-		}
-
-	/* Skip the precision.  */
-	if (*cp == '.')
-		{
-			cp++;
-			if (*cp == '*')
-				{
-					/* Test for positional argument.  */
-					if (*cp >= '0' && *cp <= '9')
-						{
-							const char *np;
-
-							for (np = cp; *np >= '0' && *np <= '9'; np++)
-								;
-							if (*np == '$')
-								cp = np + 1;
-						}
-				}
-			else
-				{
-					for (; *cp >= '0' && *cp <= '9'; cp++)
-						;
-				}
-		}
-
-	/* Skip argument type/size specifiers.  */
-	while (*cp == 'h' ||
-	       *cp == 'L' ||
-	       *cp == 'l' ||
-	       *cp == 'j' ||
-	       *cp == 'z' ||
-	       *cp == 'Z' ||
-	       *cp == 't')
-		cp++;
-
-	/* Skip the conversion character.  */
-	cp++;
-
-	*after = cp;
-	return start;
-}
-
-gchar *
-tracker_uri_vprintf_escaped (const gchar *format,
-                             va_list      args)
-{
-	GString *format1;
-	GString *format2;
-	GString *result = NULL;
-	gchar *output1 = NULL;
-	gchar *output2 = NULL;
-	const char *p;
-	char       *op1, *op2;
-	va_list args2;
-
-	format1 = g_string_new (NULL);
-	format2 = g_string_new (NULL);
-	p = format;
-	while (TRUE)
-		{
-			const char *after;
-			const char *conv = find_conversion (p, &after);
-			if (!conv)
-				break;
-
-			g_string_append_len (format1, conv, after - conv);
-			g_string_append_c (format1, 'X');
-			g_string_append_len (format2, conv, after - conv);
-			g_string_append_c (format2, 'Y');
-
-			p = after;
-		}
-
-	/* Use them to format the arguments
-	 */
-	G_VA_COPY (args2, args);
-
-	output1 = g_strdup_vprintf (format1->str, args);
-	va_end (args);
-	if (!output1)
-		goto cleanup;
-
-	output2 = g_strdup_vprintf (format2->str, args2);
-	va_end (args2);
-	if (!output2)
-		goto cleanup;
-
-	result = g_string_new (NULL);
-
-	op1 = output1;
-	op2 = output2;
-	p = format;
-	while (TRUE)
-		{
-			const char *after;
-			const char *output_start;
-			const char *conv = find_conversion (p, &after);
-			char *escaped;
-
-			if (!conv)
-				{
-					g_string_append_len (result, p, after - p);
-					break;
-				}
-
-			g_string_append_len (result, p, conv - p);
-			output_start = op1;
-			while (*op1 == *op2)
-				{
-					op1++;
-					op2++;
-				}
-
-			*op1 = '\0';
-			escaped = g_uri_escape_string (output_start, NULL, FALSE);
-			g_string_append (result, escaped);
-			g_free (escaped);
-
-			p = after;
-			op1++;
-			op2++;
-		}
-
- cleanup:
-	g_string_free (format1, TRUE);
-	g_string_free (format2, TRUE);
-	g_free (output1);
-	g_free (output2);
-
-	if (result)
-		return g_string_free (result, FALSE);
-	else
-		return NULL;
-}
-
-gchar *
-tracker_uri_printf_escaped (const gchar *format, ...)
-{
-	char *result;
-	va_list args;
-
-	va_start (args, format);
-	result = tracker_uri_vprintf_escaped (format, args);
-	va_end (args);
-
-	return result;
-}
-
-
 gchar *
 tracker_coalesce (gint n_values,
                   ...)
@@ -526,7 +244,6 @@ tracker_coalesce (gint n_values,
 	return result;
 }
 
-
 gchar *
 tracker_merge (const gchar *delim, gint n_values,
                ...)
diff --git a/src/libtracker-common/tracker-utils.h b/src/libtracker-common/tracker-utils.h
index 2d8300e..3335375 100644
--- a/src/libtracker-common/tracker-utils.h
+++ b/src/libtracker-common/tracker-utils.h
@@ -42,10 +42,6 @@ gchar *  tracker_seconds_estimate_to_string (gdouble      seconds_elapsed,
                                              guint        items_remaining);
 gchar *  tracker_seconds_to_string          (gdouble      seconds_elapsed,
                                              gboolean     short_string);
-gchar*   tracker_uri_vprintf_escaped        (const gchar *format,
-                                             va_list      args);
-gchar*   tracker_uri_printf_escaped         (const gchar *format,
-                                             ...);
 gchar *  tracker_coalesce                   (gint n_values,
                                              ...);
 gchar *  tracker_merge                      (const gchar *delim, gint n_values,
@@ -55,12 +51,13 @@ gchar *  tracker_text_normalize             (const gchar *text,
                                              guint        max_words,
                                              guint       *n_words);
 
-/* Temporary: Just here until we upgrade to GLib 2.18. */
-G_CONST_RETURN gchar *
-tracker_dngettext                  (const gchar *domain,
-                                    const gchar *msgid,
-                                    const gchar *msgid_plural,
-                                    gulong       n);
+/* Currently we define an alias here because right now we are using
+ * GLib's escape functions, however, it is likely in the future that
+ * Nepomuk's standard for URI escaping varies slightly and we want to
+ * easily be able to have our own implementation without changing the
+ * whole code base.
+ */
+#define  tracker_uri_printf_escaped         g_markup_printf_escaped
 
 G_END_DECLS
 
diff --git a/src/tracker-control/tracker-control.c b/src/tracker-control/tracker-control.c
index 9f26c7f..dec66ea 100644
--- a/src/tracker-control/tracker-control.c
+++ b/src/tracker-control/tracker-control.c
@@ -252,10 +252,10 @@ main (int argc, char **argv)
 	if (should_kill || should_terminate ||
 	    (!start && !remove_config && !remove_thumbnails)) {
 		pids = get_pids ();
-		str = g_strdup_printf (tracker_dngettext (NULL,
-		                                          "Found %d PIDâ?¦",
-		                                          "Found %d PIDsâ?¦",
-		                                          g_slist_length (pids)),
+		str = g_strdup_printf (g_dngettext (NULL,
+		                                    "Found %d PIDâ?¦",
+		                                    "Found %d PIDsâ?¦",
+		                                    g_slist_length (pids)),
 		                       g_slist_length (pids));
 		g_print ("%s\n", str);
 		g_free (str);
diff --git a/src/tracker-extract/tracker-albumart.c b/src/tracker-extract/tracker-albumart.c
index a2b9aac..767bde7 100644
--- a/src/tracker-extract/tracker-albumart.c
+++ b/src/tracker-extract/tracker-albumart.c
@@ -91,70 +91,6 @@ strcasestr (const gchar *haystack,
 
 #endif /* HAVE_STRCASESTR */
 
-/* NOTE: This function was stolen from GLib 2.18.x. Since upstream and
- * the Maemo branch don't have this in circulation yet, we have copied
- * it here. This can be removed an replaced with
- * g_file_make_directory_with_parents() when we get it. -mr
- */
-static gboolean
-make_directory_with_parents (GFile         *file,
-                             GCancellable  *cancellable,
-                             GError       **error)
-{
-	gboolean result;
-	GFile *parent_file, *work_file;
-	GList *list = NULL, *l;
-	GError *my_error = NULL;
-
-	if (g_cancellable_set_error_if_cancelled (cancellable, error))
-		return FALSE;
-
-	result = g_file_make_directory (file, cancellable, &my_error);
-	if (result || my_error->code != G_IO_ERROR_NOT_FOUND)
-		{
-			if (my_error)
-				g_propagate_error (error, my_error);
-			return result;
-		}
-
-	work_file = file;
-
-	while (!result && my_error->code == G_IO_ERROR_NOT_FOUND)
-		{
-			g_clear_error (&my_error);
-
-			parent_file = g_file_get_parent (work_file);
-			if (parent_file == NULL)
-				break;
-			result = g_file_make_directory (parent_file, cancellable, &my_error);
-
-			if (!result && my_error->code == G_IO_ERROR_NOT_FOUND)
-				list = g_list_prepend (list, parent_file);
-
-			work_file = parent_file;
-		}
-
-	for (l = list; result && l; l = l->next)
-		{
-			result = g_file_make_directory ((GFile *) l->data, cancellable, &my_error);
-		}
-
-	/* Clean up */
-	while (list != NULL)
-		{
-			g_object_unref ((GFile *) list->data);
-			list = g_list_remove (list, list->data);
-		}
-
-	if (!result)
-		{
-			g_propagate_error (error, my_error);
-			return result;
-		}
-
-	return g_file_make_directory (file, cancellable, error);
-}
-
 static gboolean
 albumart_strip_find_next_block (const gchar    *original,
                                 const gunichar  open_char,
@@ -737,7 +673,7 @@ albumart_copy_to_local (TrackerStorage *hal,
 			GFile *dirf;
 
 			dirf = g_file_get_parent (local_file);
-			make_directory_with_parents (dirf, NULL, NULL);
+			g_file_make_directory_with_parents (dirf, NULL, NULL);
 			g_object_unref (dirf);
 
 			g_debug ("Copying album art from:'%s' to:'%s'",
diff --git a/src/tracker-utils/tracker-info.c b/src/tracker-utils/tracker-info.c
index f658b22..8dd7628 100644
--- a/src/tracker-utils/tracker-info.c
+++ b/src/tracker-utils/tracker-info.c
@@ -181,10 +181,10 @@ main (int argc, char **argv)
 
 			length = results->len;
 
-			g_print (tracker_dngettext (NULL,
-			                            "Result: %d",
-			                            "Results: %d",
-			                            length),
+			g_print (g_dngettext (NULL,
+			                      "Result: %d",
+			                      "Results: %d",
+			                      length),
 			         length);
 			g_print ("\n");
 
diff --git a/src/tracker-utils/tracker-search.c b/src/tracker-utils/tracker-search.c
index 1778375..163c50b 100644
--- a/src/tracker-utils/tracker-search.c
+++ b/src/tracker-utils/tracker-search.c
@@ -193,10 +193,10 @@ get_files_results (TrackerClient *client,
 		g_print ("%s\n",
 		         _("No files were found"));
 	} else {
-		g_print (tracker_dngettext (NULL,
-		                            "File: %d",
-		                            "Files: %d",
-		                            results->len),
+		g_print (g_dngettext (NULL,
+		                      "File: %d",
+		                      "Files: %d",
+		                      results->len),
 		         results->len);
 		g_print ("\n");
 
@@ -458,10 +458,10 @@ get_music_artists (TrackerClient *client,
 		g_print ("%s\n",
 		         _("No artists were found"));
 	} else {
-		g_print (tracker_dngettext (NULL,
-		                            "Artist: %d",
-		                            "Artists: %d",
-		                            results->len),
+		g_print (g_dngettext (NULL,
+		                      "Artist: %d",
+		                      "Artists: %d",
+		                      results->len),
 		         results->len);
 		g_print ("\n");
 
@@ -487,17 +487,17 @@ get_music_albums_foreach (gpointer value,
 	gchar **data = value;
 
 	g_print ("  "); /*'%s', ", data[1]);*/
-	g_print (tracker_dngettext (NULL,
-	                            "%d Song",
-	                            "%d Songs",
-	                            atoi (data[2])),
+	g_print (g_dngettext (NULL,
+	                      "%d Song",
+	                      "%d Songs",
+	                      atoi (data[2])),
 	         atoi (data[2]));
 
 	g_print (", ");
-	g_print (tracker_dngettext (NULL,
-	                            "%d Second",
-	                            "%d Seconds",
-	                            atoi (data[3])),
+	g_print (g_dngettext (NULL,
+	                      "%d Second",
+	                      "%d Seconds",
+	                      atoi (data[3])),
 	         atoi (data[3]));
 	g_print (", ");
 	g_print (_("Album '%s'"), data[1]);
@@ -570,10 +570,10 @@ get_music_albums (TrackerClient *client,
 		g_print ("%s\n",
 		         _("No music was found"));
 	} else {
-		g_print (tracker_dngettext (NULL,
-		                            "Album: %d",
-		                            "Albums: %d",
-		                            results->len),
+		g_print (g_dngettext (NULL,
+		                      "Album: %d",
+		                      "Albums: %d",
+		                      results->len),
 		         results->len);
 		g_print ("\n");
 
@@ -752,10 +752,10 @@ get_all_by_search (TrackerClient *client,
 		g_print ("%s\n",
 		         _("No results were found matching your query"));
 	} else {
-		g_print (tracker_dngettext (NULL,
-		                            "Result: %d",
-		                            "Results: %d",
-		                            results->len),
+		g_print (g_dngettext (NULL,
+		                      "Result: %d",
+		                      "Results: %d",
+		                      results->len),
 		         results->len);
 		g_print ("\n");
 
diff --git a/src/tracker-utils/tracker-sparql.c b/src/tracker-utils/tracker-sparql.c
index 265392b..c345b74 100644
--- a/src/tracker-utils/tracker-sparql.c
+++ b/src/tracker-utils/tracker-sparql.c
@@ -228,10 +228,10 @@ main (int argc, char **argv)
 			g_print ("%s\n",
 			         _("No classes were found"));
 		} else {
-			g_print (tracker_dngettext (NULL,
-			                            "Class: %d",
-			                            "Classes: %d",
-			                            results->len),
+			g_print (g_dngettext (NULL,
+			                      "Class: %d",
+			                      "Classes: %d",
+			                      results->len),
 			         results->len);
 			g_print ("\n");
 
@@ -266,10 +266,10 @@ main (int argc, char **argv)
 			g_print ("%s\n",
 			         _("No class prefixes were found"));
 		} else {
-			g_print (tracker_dngettext (NULL,
-			                            "Prefix: %d",
-			                            "Prefixes: %d",
-			                            results->len),
+			g_print (g_dngettext (NULL,
+			                      "Prefix: %d",
+			                      "Prefixes: %d",
+			                      results->len),
 			         results->len);
 			g_print ("\n");
 
@@ -345,10 +345,10 @@ main (int argc, char **argv)
 			g_print ("%s\n",
 			         _("No properties were found"));
 		} else {
-			g_print (tracker_dngettext (NULL,
-			                            "Property: %d",
-			                            "Properties: %d",
-			                            results->len),
+			g_print (g_dngettext (NULL,
+			                      "Property: %d",
+			                      "Properties: %d",
+			                      results->len),
 			         results->len);
 			g_print ("\n");
 
@@ -442,10 +442,10 @@ main (int argc, char **argv)
 				g_print ("%s\n",
 				         _("No results found matching your query"));
 			} else {
-				g_print (tracker_dngettext (NULL,
-				                            "Result: %d",
-				                            "Results: %d",
-				                            results->len),
+				g_print (g_dngettext (NULL,
+				                      "Result: %d",
+				                      "Results: %d",
+				                      results->len),
 				         results->len);
 				g_print ("\n");
 
diff --git a/src/tracker-utils/tracker-tag.c b/src/tracker-utils/tracker-tag.c
index df22091..9ec26e0 100644
--- a/src/tracker-utils/tracker-tag.c
+++ b/src/tracker-utils/tracker-tag.c
@@ -259,10 +259,10 @@ get_all_tags_foreach (gpointer value,
 	g_print ("    %s\n", id);
 
 	g_print ("    ");
-	g_print (tracker_dngettext (NULL,
-	                            "%d file",
-	                            "%d files",
-	                            files),
+	g_print (g_dngettext (NULL,
+	                      "%d file",
+	                      "%d files",
+	                      files),
 	         files);
 	g_print ("\n");
 
@@ -366,10 +366,10 @@ get_all_tags (TrackerClient *client,
 		g_print ("%s\n",
 		         _("No tags were found"));
 	} else {
-		g_print (tracker_dngettext (NULL,
-		                            "Tag: %d (shown by name)",
-		                            "Tags: %d (shown by name)",
-		                            results->len),
+		g_print (g_dngettext (NULL,
+		                      "Tag: %d (shown by name)",
+		                      "Tags: %d (shown by name)",
+		                      results->len),
 		         results->len);
 		g_print ("\n");
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]