[maemo-commits] [maemo-commits] r17199 - in projects/haf/trunk/hildon-thumbnail: . daemon tests

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Fri Jan 16 13:09:21 EET 2009
Author: pvanhoof
Date: 2009-01-16 13:09:20 +0200 (Fri, 16 Jan 2009)
New Revision: 17199

Added:
   projects/haf/trunk/hildon-thumbnail/tests/testpaths.c
Modified:
   projects/haf/trunk/hildon-thumbnail/ChangeLog
   projects/haf/trunk/hildon-thumbnail/configure.ac
   projects/haf/trunk/hildon-thumbnail/daemon/utils.c
   projects/haf/trunk/hildon-thumbnail/tests/Makefile.am
Log:
2009-01-16  Philip Van Hoof  <philip at codeminded.be>

	* tests/Makefile.am
	* daemon/utils.c
	* configure.ac
	* tests/testpaths.c: single character albums



Modified: projects/haf/trunk/hildon-thumbnail/ChangeLog
===================================================================
--- projects/haf/trunk/hildon-thumbnail/ChangeLog	2009-01-16 04:57:03 UTC (rev 17198)
+++ projects/haf/trunk/hildon-thumbnail/ChangeLog	2009-01-16 11:09:20 UTC (rev 17199)
@@ -1,3 +1,10 @@
+2009-01-16  Philip Van Hoof  <philip at codeminded.be>
+
+	* tests/Makefile.am
+	* daemon/utils.c
+	* configure.ac
+	* tests/testpaths.c: single character albums
+
 2008-12-23  Philip Van Hoof  <philip at codeminded.be>
 
 	* albumart-providers/googleimages/google-images-art-downloader.vala:

Modified: projects/haf/trunk/hildon-thumbnail/configure.ac
===================================================================
--- projects/haf/trunk/hildon-thumbnail/configure.ac	2009-01-16 04:57:03 UTC (rev 17198)
+++ projects/haf/trunk/hildon-thumbnail/configure.ac	2009-01-16 11:09:20 UTC (rev 17199)
@@ -204,7 +204,7 @@
 
 AC_CONFIG_LINKS(thumbs/pixbuf-io-loader.c:daemon/plugins/pixbuf-io-loader.c)
 
-AC_OUTPUT(Makefile \
+AC_OUTPUT(Makefile tests/Makefile \
 	  daemon/Makefile \
 	  daemon/plugins/Makefile \
 	  thumbs/Makefile \

Modified: projects/haf/trunk/hildon-thumbnail/daemon/utils.c
===================================================================
--- projects/haf/trunk/hildon-thumbnail/daemon/utils.c	2009-01-16 04:57:03 UTC (rev 17198)
+++ projects/haf/trunk/hildon-thumbnail/daemon/utils.c	2009-01-16 11:09:20 UTC (rev 17199)
@@ -28,7 +28,26 @@
 #include <string.h>
 #include "utils.h"
 
+static gchar *
+my_compute_checksum_for_data (GChecksumType  checksum_type,
+                              const guchar  *data,
+                              gsize          length)
+{
+  GChecksum *checksum;
+  gchar *retval;
 
+  checksum = g_checksum_new (checksum_type);
+  if (!checksum)
+    return NULL;
+
+  g_checksum_update (checksum, data, length);
+  retval = g_strdup (g_checksum_get_string (checksum));
+  g_checksum_free (checksum);
+
+  return retval;
+}
+
+
 void
 hildon_thumbnail_util_get_thumb_paths (const gchar *uri, gchar **large, gchar **normal, gchar **cropped, gchar **local_large, gchar **local_normal, gchar **local_cropped, gboolean as_png)
 {
@@ -91,7 +110,7 @@
 	if(!g_file_test (cropped_dir, G_FILE_TEST_EXISTS))
 		g_mkdir_with_parents (cropped_dir, 0770);
 
-	ascii_digest = g_compute_checksum_for_string (G_CHECKSUM_MD5, uri, -1);
+	ascii_digest = my_compute_checksum_for_data (G_CHECKSUM_MD5, (const guchar *) uri, strlen (uri));
 
 	if (as_png)
 		thumb_filename = g_strdup_printf ("%s.png", ascii_digest);
@@ -108,11 +127,13 @@
 	*cropped = g_build_filename (cropped_dir, cropped_filename, NULL);
 
 	if (local) {
-		if (filename && strlen (filename) > 1 && local_dir) {
+		int slen = strlen (filename);
+		if (filename && slen > 0 && local_dir) {
 			gchar *lthumb_filename;
 			gchar *lcropped_filename;
 
-			lascii_digest = g_compute_checksum_for_string (G_CHECKSUM_MD5, filename, -1);
+			lascii_digest = my_compute_checksum_for_data (G_CHECKSUM_MD5, (const guchar *) filename, slen);
+
 			if (as_png)
 				lthumb_filename = g_strdup_printf ("%s.png", lascii_digest);
 			else
@@ -232,55 +253,8 @@
 void
 hildon_thumbnail_util_get_albumart_path (const gchar *a, const gchar *b, const gchar *prefix, gchar **path)
 {
-/*#ifdef OLD_ART_PATH
 	gchar *art_filename;
 	gchar *dir;
-	gchar *str;
-	gchar *down;
-	gchar *f_a = NULL, *f_b = NULL;
-
-	*path = NULL;
-
-	if (!a && !b) {
-		return;
-	}
-
-	if (a)
-		f_a = strip_characters (a);
-
-	if (b)
-		f_b = strip_characters (b);
-
-	str = g_strconcat (a ? f_a : "", 
-			   " ", 
-			   b ? f_b : "", 
-			   NULL);
-
-	g_free (f_a);
-	g_free (f_b);
-
-	down = g_utf8_strdown (str, -1);
-	g_free (str);
-
-	dir = g_build_filename (g_get_user_cache_dir (), "media-art", NULL);
-
-	if (!g_file_test (dir, G_FILE_TEST_EXISTS)) {
-		g_mkdir_with_parents (dir, 0770);
-	}
-
-	str = g_compute_checksum_for_string (G_CHECKSUM_MD5, down, -1);
-	g_free (down);
-
-	art_filename = g_strdup_printf ("%s-%s.jpeg", prefix?prefix:"album", str);
-	g_free (str);
-
-	*path = g_build_filename (dir, art_filename, NULL);
-	g_free (dir);
-	g_free (art_filename);
-
-#else*/
-	gchar *art_filename;
-	gchar *dir;
 	gchar *down1, *down2;
 	gchar *str1 = NULL, *str2 = NULL;
 	gchar *f_a = NULL, *f_b = NULL;
@@ -293,17 +267,13 @@
 		return;
 	}
 
-	if (!a || *a == '\0') 
-		f_a = g_strdup ("  ");
-	else if (strlen (a) == 1)
-		f_a = g_strconcat (a, " ");
+	if (!a) 
+		f_a = g_strdup (" ");
 	else
 		f_a = strip_characters (a);
 
-	if (!b || *b == '\0')
-		f_b = g_strdup ("  ");
-	else if (strlen (b) == 1)
-		f_b = g_strconcat (b, " ");
+	if (!b)
+		f_b = g_strdup (" ");
 	else
 		f_b = strip_characters (b);
 
@@ -319,8 +289,8 @@
 		g_mkdir_with_parents (dir, 0770);
 	}
 
-	str1 = g_compute_checksum_for_string (G_CHECKSUM_MD5, down1, -1);
-	str2 = g_compute_checksum_for_string (G_CHECKSUM_MD5, down2, -1);
+	str1 = my_compute_checksum_for_data (G_CHECKSUM_MD5, (const guchar *) down1, strlen (down1));
+	str2 = my_compute_checksum_for_data (G_CHECKSUM_MD5, (const guchar *) down2, strlen (down2));
 
 	g_free (down1);
 	g_free (down2);
@@ -330,5 +300,5 @@
 	*path = g_build_filename (dir, art_filename, NULL);
 	g_free (dir);
 	g_free (art_filename);
-/*#endif*/
 }
+

Modified: projects/haf/trunk/hildon-thumbnail/tests/Makefile.am
===================================================================
--- projects/haf/trunk/hildon-thumbnail/tests/Makefile.am	2009-01-16 04:57:03 UTC (rev 17198)
+++ projects/haf/trunk/hildon-thumbnail/tests/Makefile.am	2009-01-16 11:09:20 UTC (rev 17199)
@@ -7,17 +7,23 @@
 bin_PROGRAMS = hildon-thumbnail-tester hildon-thumbnail-daemon-plugin-test $(instart)
 
 if HAVE_MGTK
-bin_PROGRAMS += artist-art-tester
+bin_PROGRAMS += artist-art-tester test-paths
 
 artist_art_tester_SOURCES = artist-art-test.c
 artist_art_tester_LDADD = $(top_builddir)/thumbs/libhildonthumbnail.la \
 	$(GTK_LIBS) 
 endif
 
+
 hildon_thumbnail_daemon_plugin_test_SOURCES = daemon.c daemon-glue.h
 hildon_thumbnail_daemon_plugin_test_LDADD = $(top_builddir)/thumbs/libhildonthumbnail.la
 	$(DBUS_LIBS) $(GLIB_LIBS) $(GMODULE_LIBS) $(GIO_LIBS)
 
+
+test_paths_SOURCES = testpaths.c
+test_paths_LDADD = $(top_builddir)/thumbs/libhildonthumbnail.la $(PKG_LIBS) \
+	$(GDK_PIXBUF_LIBS)
+
 hildon_thumbnail_tester_SOURCES = tests.c
 hildon_thumbnail_tester_LDADD = $(top_builddir)/thumbs/libhildonthumbnail.la $(PKG_LIBS) \
 	$(GDK_PIXBUF_LIBS)

Added: projects/haf/trunk/hildon-thumbnail/tests/testpaths.c
===================================================================
--- projects/haf/trunk/hildon-thumbnail/tests/testpaths.c	2009-01-16 04:57:03 UTC (rev 17198)
+++ projects/haf/trunk/hildon-thumbnail/tests/testpaths.c	2009-01-16 11:09:20 UTC (rev 17199)
@@ -0,0 +1,23 @@
+#include <stdio.h>
+
+#include <hildon-thumbnail-factory.h>
+
+#include <unistd.h>
+
+int main ()
+{
+	g_print ("%s\n", hildon_albumart_get_path ("a", "b", "album"));
+	g_print ("%s\n", hildon_albumart_get_path ("a", NULL, "album"));
+	g_print ("%s\n", hildon_albumart_get_path (NULL, "b", "album"));
+	g_print ("%s\n", hildon_albumart_get_path ("a", "b", NULL));
+
+	g_print ("%s\n", hildon_albumart_get_path ("abc", "b", NULL));
+	g_print ("%s\n", hildon_albumart_get_path ("a", "abc", NULL));
+	g_print ("%s\n", hildon_albumart_get_path ("abc", "abc", NULL));
+
+	g_print ("%s\n", hildon_albumart_get_path ("abc", "b", "album"));
+	g_print ("%s\n", hildon_albumart_get_path ("a", "abc", "album"));
+	g_print ("%s\n", hildon_albumart_get_path ("abc", "abc", "album"));
+
+}
+


More information about the maemo-commits mailing list