tracker r2924 - in trunk: . src/libtracker-common src/tracker-extract



Author: pvanhoof
Date: Thu Feb 12 15:41:58 2009
New Revision: 2924
URL: http://svn.gnome.org/viewvc/tracker?rev=2924&view=rev

Log:
2009-02-12  Philip Van Hoof  <philip codeminded be>

        * src/libtracker-common/tracker-albumart.c: Bugfix for local mediaart



Modified:
   trunk/ChangeLog
   trunk/src/libtracker-common/tracker-albumart.c
   trunk/src/tracker-extract/tracker-extract-albumart.c

Modified: trunk/src/libtracker-common/tracker-albumart.c
==============================================================================
--- trunk/src/libtracker-common/tracker-albumart.c	(original)
+++ trunk/src/libtracker-common/tracker-albumart.c	Thu Feb 12 15:41:58 2009
@@ -34,6 +34,7 @@
 #include <glib/gprintf.h>
 #include <glib/gstdio.h>
 #include <gio/gio.h>
+
 #ifdef HAVE_GDKPIXBUF
 #include <gdk-pixbuf/gdk-pixbuf.h>
 #endif
@@ -565,7 +566,7 @@
 			   const gchar  *prefix, 
 			   const gchar  *uri,
 			   gchar       **path,
-			   gchar       **local)
+			   gchar       **local_uri)
 {
 	gchar *art_filename;
 	gchar *dir;
@@ -612,6 +613,26 @@
 	art_filename = g_strdup_printf ("%s-%s-%s.jpeg", prefix?prefix:"album", str1, str2);
 
 	*path = g_build_filename (dir, art_filename, NULL);
+
+	if (local_uri) {
+		gchar *local_dir;
+		GFile *file, *parent;
+
+		if (strchr (uri, ':')) 
+			file = g_file_new_for_uri (uri);
+		else
+			file = g_file_new_for_path (uri);
+
+		parent = g_file_get_parent (file);
+		local_dir = g_file_get_uri (parent);
+
+		*local_uri = g_strdup_printf ("%s/%s", local_dir, art_filename);
+
+		g_free (local_dir);
+		g_object_unref (file);
+		g_object_unref (parent);
+	}
+
 	g_free (dir);
 	g_free (art_filename);
 	g_free (str1);

Modified: trunk/src/tracker-extract/tracker-extract-albumart.c
==============================================================================
--- trunk/src/tracker-extract/tracker-extract-albumart.c	(original)
+++ trunk/src/tracker-extract/tracker-extract-albumart.c	Thu Feb 12 15:41:58 2009
@@ -176,7 +176,10 @@
 			g_free (asuri);
 		}
 
-		if (!lcopied && g_file_test (art_path, G_FILE_TEST_EXISTS))
+	}
+
+	if (local_uri && !g_file_test (local_uri, G_FILE_TEST_EXISTS)) {
+		if (g_file_test (art_path, G_FILE_TEST_EXISTS))
 			tracker_albumart_copy_to_local (art_path, local_uri);
 	}
 



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