[gnome-desktop] thumbnail: Report errors when script_exec_new() fails
- From: Bastien Nocera <hadess src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-desktop] thumbnail: Report errors when script_exec_new() fails
- Date: Tue, 8 Aug 2017 17:27:15 +0000 (UTC)
commit 99df9a83a36882d8a666176d9452283ae065d014
Author: Bastien Nocera <hadess hadess net>
Date: Tue Aug 8 19:14:09 2017 +0200
thumbnail: Report errors when script_exec_new() fails
Makes it easier to debug.
https://bugzilla.gnome.org/show_bug.cgi?id=785963
libgnome-desktop/gnome-desktop-thumbnail-script.c | 19 ++++++++++++++-----
1 files changed, 14 insertions(+), 5 deletions(-)
---
diff --git a/libgnome-desktop/gnome-desktop-thumbnail-script.c
b/libgnome-desktop/gnome-desktop-thumbnail-script.c
index d9437d4..1012efa 100644
--- a/libgnome-desktop/gnome-desktop-thumbnail-script.c
+++ b/libgnome-desktop/gnome-desktop-thumbnail-script.c
@@ -687,7 +687,8 @@ clear_fd (gpointer data)
}
static ScriptExec *
-script_exec_new (const char *uri)
+script_exec_new (const char *uri,
+ GError **error)
{
ScriptExec *exec;
g_autoptr(GFile) file = NULL;
@@ -705,7 +706,11 @@ script_exec_new (const char *uri)
exec->infile = g_file_get_path (file);
if (!exec->infile)
- goto bail;
+ {
+ g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND,
+ "Could not get path for URI '%s'", uri);
+ goto bail;
+ }
#ifdef HAVE_BWRAP
if (exec->sandbox)
@@ -719,7 +724,11 @@ script_exec_new (const char *uri)
tmpl = g_strdup ("/tmp/gnome-desktop-thumbnailer-XXXXXX");
exec->outdir = g_mkdtemp (tmpl);
if (!exec->outdir)
- goto bail;
+ {
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+ "Could not create temporary sandbox directory");
+ goto bail;
+ }
exec->outfile = g_build_filename (exec->outdir, "gnome-desktop-thumbnailer.png", NULL);
ext = get_extension (exec->infile);
@@ -732,7 +741,7 @@ script_exec_new (const char *uri)
int fd;
g_autofree char *tmpname = NULL;
- fd = g_file_open_tmp (".gnome_desktop_thumbnail.XXXXXX", &tmpname, NULL);
+ fd = g_file_open_tmp (".gnome_desktop_thumbnail.XXXXXX", &tmpname, error);
if (fd == -1)
goto bail;
close (fd);
@@ -759,7 +768,7 @@ gnome_desktop_thumbnail_script_exec (const char *cmd,
GBytes *image = NULL;
ScriptExec *exec;
- exec = script_exec_new (uri);
+ exec = script_exec_new (uri, error);
if (!exec)
goto out;
expanded_script = expand_thumbnailing_cmd (cmd, exec, size, error);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]