[Xfce4-commits] <tumbler:nick/raw-thumbnailer> Improve error messages and enforce local files.
Nick Schermer
noreply at xfce.org
Thu Nov 3 16:56:01 CET 2011
Updating branch refs/heads/nick/raw-thumbnailer
to 848e62fc72259aeda1469f959ec8872a56cfc96f (commit)
from a4f7caf924447e2c46066a44162d53d268a69106 (commit)
commit 848e62fc72259aeda1469f959ec8872a56cfc96f
Author: Nick Schermer <nick at xfce.org>
Date: Thu Nov 3 16:54:41 2011 +0100
Improve error messages and enforce local files.
plugins/raw-thumbnailer/raw-thumbnailer-provider.c | 17 ++++++-----------
plugins/raw-thumbnailer/raw-thumbnailer.c | 15 ++++++++++++++-
po/POTFILES.in | 2 ++
3 files changed, 22 insertions(+), 12 deletions(-)
diff --git a/plugins/raw-thumbnailer/raw-thumbnailer-provider.c b/plugins/raw-thumbnailer/raw-thumbnailer-provider.c
index de1b04b..6468b93 100644
--- a/plugins/raw-thumbnailer/raw-thumbnailer-provider.c
+++ b/plugins/raw-thumbnailer/raw-thumbnailer-provider.c
@@ -100,10 +100,10 @@ raw_thumbnailer_provider_init (RawThumbnailerProvider *provider)
static GList *
raw_thumbnailer_provider_get_thumbnailers (TumblerThumbnailerProvider *provider)
{
- RawThumbnailer *thumbnailer;
- GList *thumbnailers = NULL;
- GStrv uri_schemes;
- const gchar *mime_types[] =
+ RawThumbnailer *thumbnailer;
+ GList *thumbnailers = NULL;
+ static const gchar *uri_schemes[] = { "file", NULL };
+ const gchar *mime_types[] =
{
"image/x-adobe-dng",
"image/x-canon-cr2",
@@ -120,17 +120,12 @@ raw_thumbnailer_provider_get_thumbnailers (TumblerThumbnailerProvider *provider)
NULL
};
- /* determine which URI schemes are supported by GIO */
- uri_schemes = tumbler_util_get_supported_uri_schemes ();
-
/* create the raw thumbnailer */
thumbnailer = g_object_new (TYPE_RAW_THUMBNAILER,
- "uri-schemes", uri_schemes, "mime-types", mime_types,
+ "uri-schemes", uri_schemes,
+ "mime-types", mime_types,
NULL);
- /* free URI schemes and MIME types */
- g_strfreev (uri_schemes);
-
/* add the thumbnailer to the list */
thumbnailers = g_list_append (thumbnailers, thumbnailer);
diff --git a/plugins/raw-thumbnailer/raw-thumbnailer.c b/plugins/raw-thumbnailer/raw-thumbnailer.c
index 22abefb..06e2bbc 100644
--- a/plugins/raw-thumbnailer/raw-thumbnailer.c
+++ b/plugins/raw-thumbnailer/raw-thumbnailer.c
@@ -176,7 +176,20 @@ raw_thumbnailer_create (TumblerAbstractThumbnailer *thumbnailer,
/* libopenraw only handles local IO */
path = g_file_get_path (file);
if (path != NULL && g_path_is_absolute (path))
- pixbuf = or_gdkpixbuf_extract_rotated_thumbnail (path, MIN (width, height));
+ {
+ pixbuf = or_gdkpixbuf_extract_rotated_thumbnail (path, MIN (width, height));
+
+ if (pixbuf == NULL)
+ {
+ g_set_error_literal (&error, TUMBLER_ERROR, TUMBLER_ERROR_NO_CONTENT,
+ _("Thumbnail could not be inferred from file contents"));
+ }
+ }
+ else
+ {
+ g_set_error_literal (&error, TUMBLER_ERROR, TUMBLER_ERROR_UNSUPPORTED,
+ _("Only local files are supported"));
+ }
g_free (path);
g_object_unref (file);
diff --git a/po/POTFILES.in b/po/POTFILES.in
index eb5e569..dd9aac7 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -35,6 +35,8 @@ plugins/ffmpeg-thumbnailer/ffmpeg-thumbnailer-plugin.c
plugins/ffmpeg-thumbnailer/ffmpeg-thumbnailer-provider.c
plugins/poppler-thumbnailer/poppler-thumbnailer-plugin.c
plugins/poppler-thumbnailer/poppler-thumbnailer.c
+plugins/raw-thumbnailer/raw-thumbnailer.c
+plugins/raw-thumbnailer/raw-thumbnailer-plugin.c
plugins/xdg-cache/xdg-cache-thumbnail.c
plugins/xdg-cache/xdg-cache-plugin.c
plugins/xdg-cache/xdg-cache-cache.c
More information about the Xfce4-commits
mailing list