diff options
Diffstat (limited to 'gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch')
-rw-r--r-- | gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch b/gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch deleted file mode 100644 index 84d0bfc1d5af..000000000000 --- a/gnome-base/nautilus/files/3.30.5-thumbnailer-updates.patch +++ /dev/null @@ -1,113 +0,0 @@ -From 2e36d4bacc3cffebe62161adc375bb9ec64099f5 Mon Sep 17 00:00:00 2001 -From: Timothy OBrien <obrien.timothy.a@gmail.com> -Date: Fri, 18 Jan 2019 19:42:46 +1100 -Subject: [PATCH 1/2] gnome-desktop: update to latest version of upstream - thumbnail code - -The thumbnail code in gnome-desktop had recent bug fixes that needed to be carried across to the Nautilus implementation. Issues for the three related upstream fixes can be found at: https://gitlab.gnome.org/GNOME/gnome-desktop/issues/4 | https://gitlab.gnome.org/GNOME/gnome-desktop/issues/89 | https://gitlab.gnome.org/GNOME/gnome-desktop/issues/87 - -This patch includes the latest thumbnail code from the gnome-desktop repository to include the fixes. - -Fixes #836 - -(cherry picked from commit e88b2dc8783833c4263ad5d84567a67dbc7bc6de) ---- - .../gnome-desktop-thumbnail-script.c | 54 +++++++++++++++++-- - src/gnome-desktop/gnome-desktop-thumbnail.c | 4 +- - 2 files changed, 52 insertions(+), 6 deletions(-) - -diff --git a/src/gnome-desktop/gnome-desktop-thumbnail-script.c b/src/gnome-desktop/gnome-desktop-thumbnail-script.c -index 14e2fed3a..525766388 100644 ---- a/src/gnome-desktop/gnome-desktop-thumbnail-script.c -+++ b/src/gnome-desktop/gnome-desktop-thumbnail-script.c -@@ -506,22 +506,68 @@ setup_seccomp (GPtrArray *argv_array, - #endif - - #ifdef HAVE_BWRAP -+static gboolean -+path_is_usrmerged (const char *dir) -+{ -+ /* does /dir point to /usr/dir? */ -+ g_autofree char *target = NULL; -+ GStatBuf stat_buf_src, stat_buf_target; -+ -+ if (g_stat (dir, &stat_buf_src) < 0) -+ return FALSE; -+ -+ target = g_strdup_printf ("/usr/%s", dir); -+ -+ if (g_stat (target, &stat_buf_target) < 0) -+ return FALSE; -+ -+ return (stat_buf_src.st_dev == stat_buf_target.st_dev) && -+ (stat_buf_src.st_ino == stat_buf_target.st_ino); -+} -+ - static gboolean - add_bwrap (GPtrArray *array, - ScriptExec *script) - { -+ const char * const usrmerged_dirs[] = { "bin", "lib64", "lib", "sbin" }; -+ int i; -+ - g_return_val_if_fail (script->outdir != NULL, FALSE); - g_return_val_if_fail (script->s_infile != NULL, FALSE); - - add_args (array, - "bwrap", - "--ro-bind", "/usr", "/usr", -- "--ro-bind", "/lib", "/lib", -- "--ro-bind", "/lib64", "/lib64", -+ "--ro-bind", "/etc/ld.so.cache", "/etc/ld.so.cache", -+ NULL); -+ -+ /* These directories might be symlinks into /usr/... */ -+ for (i = 0; i < G_N_ELEMENTS (usrmerged_dirs); i++) -+ { -+ g_autofree char *absolute_dir = g_strdup_printf ("/%s", usrmerged_dirs[i]); -+ -+ if (!g_file_test (absolute_dir, G_FILE_TEST_EXISTS)) -+ continue; -+ -+ if (path_is_usrmerged (absolute_dir)) -+ { -+ g_autofree char *symlink_target = g_strdup_printf ("/usr/%s", absolute_dir); -+ -+ add_args (array, -+ "--symlink", symlink_target, absolute_dir, -+ NULL); -+ } -+ else -+ { -+ add_args (array, -+ "--ro-bind", absolute_dir, absolute_dir, -+ NULL); -+ } -+ } -+ -+ add_args (array, - "--proc", "/proc", - "--dev", "/dev", -- "--symlink", "usr/bin", "/bin", -- "--symlink", "usr/sbin", "/sbin", - "--chdir", "/", - "--setenv", "GIO_USE_VFS", "local", - "--unshare-all", -diff --git a/src/gnome-desktop/gnome-desktop-thumbnail.c b/src/gnome-desktop/gnome-desktop-thumbnail.c -index b31bad58d..f48fd461a 100644 ---- a/src/gnome-desktop/gnome-desktop-thumbnail.c -+++ b/src/gnome-desktop/gnome-desktop-thumbnail.c -@@ -967,8 +967,8 @@ get_preview_thumbnail (const char *uri, - if (file_info == NULL) - return NULL; - -- object = g_file_info_get_attribute_object (file_info, -- G_FILE_ATTRIBUTE_PREVIEW_ICON); -+ object = g_object_ref (g_file_info_get_attribute_object (file_info, -+ G_FILE_ATTRIBUTE_PREVIEW_ICON)); - g_object_unref (file_info); - - if (!object) --- -2.17.0 - |