[maemo-commits] [maemo-commits] r15992 - projects/haf/branches/hildon-thumbnail/daemonize/daemon
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Wed Sep 3 16:14:33 EEST 2008
- Previous message: [maemo-commits] r15991 - projects/haf/branches/hildon-thumbnail/daemonize/daemon
- Next message: [maemo-commits] r15993 - projects/haf/branches/hildon-thumbnail/daemonize/daemon
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: pvanhoof
Date: 2008-09-03 16:14:32 +0300 (Wed, 03 Sep 2008)
New Revision: 15992
Modified:
projects/haf/branches/hildon-thumbnail/daemonize/daemon/thumbnailer.c
Log:
Refactoring some error handling
Modified: projects/haf/branches/hildon-thumbnail/daemonize/daemon/thumbnailer.c
===================================================================
--- projects/haf/branches/hildon-thumbnail/daemonize/daemon/thumbnailer.c 2008-09-03 13:10:16 UTC (rev 15991)
+++ projects/haf/branches/hildon-thumbnail/daemonize/daemon/thumbnailer.c 2008-09-03 13:14:32 UTC (rev 15992)
@@ -70,38 +70,31 @@
static void
-get_some_file_infos (const gchar *uri, gchar **mime_type, gboolean *has_thumb)
+get_some_file_infos (const gchar *uri, gchar **mime_type, gboolean *has_thumb, GError **error)
{
const gchar *content_type, *tp;
GFileInfo *info;
GFile *file;
- GError *error = NULL;
+ *mime_type = NULL;
+ *has_thumb = FALSE;
+
file = g_file_new_for_uri (uri);
info = g_file_query_info (file,
G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE ","
G_FILE_ATTRIBUTE_THUMBNAIL_PATH,
G_FILE_QUERY_INFO_NONE,
- NULL, &error);
+ NULL, error);
- if (error) {
- g_warning ("Error guessing mimetype for '%s': %s\n",
- uri, error->message);
- g_error_free (error);
- *mime_type = g_strdup ("unknown/unknown");
- *has_thumb = FALSE;
- } else {
-
+ if (info) {
content_type = g_file_info_get_content_type (info);
tp = g_file_info_get_attribute_byte_string (info,
G_FILE_ATTRIBUTE_THUMBNAIL_PATH);
-
*has_thumb = tp?g_file_test (tp, G_FILE_TEST_EXISTS):FALSE;
*mime_type = content_type?g_strdup (content_type):g_strdup ("unknown/unknown");
+ g_object_unref (info);
}
- if (info)
- g_object_unref (info);
g_object_unref (file);
}
@@ -212,16 +205,22 @@
while (urls[i] != NULL) {
gchar *mime_type = NULL;
gboolean has_thumb = FALSE;
+ GError *error = NULL;
- get_some_file_infos (urls[i], &mime_type,
- &has_thumb);
+ get_some_file_infos (urls[i], &mime_type, &has_thumb, &error);
- if (mime_type && !has_thumb) {
- GList *urls_for_mime = g_hash_table_lookup (hash, mime_type);
- urls_for_mime = g_list_prepend (urls_for_mime, urls[i]);
- g_hash_table_replace (hash, mime_type, urls_for_mime);
- } else if (has_thumb)
- thumb_items = g_list_prepend (thumb_items, urls[i]);
+ if (error) {
+ g_signal_emit (task->object, signals[READY_SIGNAL],
+ 0, task->num, 1, error->message);
+ g_error_free (error);
+ } else {
+ if (mime_type && !has_thumb) {
+ GList *urls_for_mime = g_hash_table_lookup (hash, mime_type);
+ urls_for_mime = g_list_prepend (urls_for_mime, urls[i]);
+ g_hash_table_replace (hash, mime_type, urls_for_mime);
+ } else if (has_thumb)
+ thumb_items = g_list_prepend (thumb_items, urls[i]);
+ }
i++;
}
- Previous message: [maemo-commits] r15991 - projects/haf/branches/hildon-thumbnail/daemonize/daemon
- Next message: [maemo-commits] r15993 - projects/haf/branches/hildon-thumbnail/daemonize/daemon
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
