Add support for x-gvfs-trash mount option
Resolves: RHEL-52342
This commit is contained in:
		
							parent
							
								
									313a3fbe16
								
							
						
					
					
						commit
						57cc471821
					
				| @ -25,7 +25,7 @@ | ||||
| 
 | ||||
| Name: gvfs | ||||
| Version: 1.36.2 | ||||
| Release: 16%{?dist} | ||||
| Release: 17%{?dist} | ||||
| Summary: Backends for the gio framework in GLib | ||||
| 
 | ||||
| License: GPLv3 and LGPLv2+ and BSD and MPLv2.0 | ||||
| @ -80,6 +80,9 @@ Patch15: google-performance-fixes.patch | ||||
| Patch16: trash-Add-support-for-x-gvfs-notrash-option-to-ignor.patch | ||||
| Patch17: trash-Sync-trash-dir-items-when-files-change.patch | ||||
| 
 | ||||
| # https://issues.redhat.com/browse/RHEL-52342 | ||||
| Patch18: trash-Add-support-for-x-gvfs-trash-mount-option.patch | ||||
| 
 | ||||
| BuildRequires: pkgconfig | ||||
| BuildRequires: pkgconfig(glib-2.0) >= %{glib2_version} | ||||
| BuildRequires: pkgconfig(dbus-glib-1) | ||||
| @ -470,6 +473,9 @@ killall -USR1 gvfsd >&/dev/null || : | ||||
| %{_datadir}/installed-tests | ||||
| 
 | ||||
| %changelog | ||||
| * Thu Sep 26 2024 Ondrej Holy <oholy@redhat.com> - 1.36.2-17 | ||||
| - Add support for x-gvfs-trash mount option (RHEL-52342) | ||||
| 
 | ||||
| * Wed Dec 06 2023 Ondrej Holy <oholy@redhat.com> - 1.36.2-16 | ||||
| - Sync trash dir items when files change (RHEL-2824) | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										64
									
								
								trash-Add-support-for-x-gvfs-trash-mount-option.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								trash-Add-support-for-x-gvfs-trash-mount-option.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,64 @@ | ||||
| From 1c2cc7c0b80e5fc3f59e8557232bb6ff8ebbab7a Mon Sep 17 00:00:00 2001 | ||||
| From: Ondrej Holy <oholy@redhat.com> | ||||
| Date: Fri, 12 Jul 2024 13:21:49 +0200 | ||||
| Subject: [PATCH] trash: Add support for x-gvfs-trash mount option | ||||
| 
 | ||||
| Currently, the trash functionality is disabled for system internal mounts. | ||||
| That might be a problem in some cases. The `x-gvfs-notrash` mount option | ||||
| allows disabling the trash functionality for certain mounts. Let's add | ||||
| support for the `x-gvfs-trash` mount option to allow the opposite. | ||||
| 
 | ||||
| See: https://issues.redhat.com/browse/RHEL-46828 | ||||
| 
 | ||||
| Related: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4155 | ||||
| ---
 | ||||
|  daemon/trashlib/trashwatcher.c | 22 +++++++++++++--------- | ||||
|  1 file changed, 13 insertions(+), 9 deletions(-) | ||||
| 
 | ||||
| diff --git a/daemon/trashlib/trashwatcher.c b/daemon/trashlib/trashwatcher.c
 | ||||
| index eec32d0b..707323cb 100644
 | ||||
| --- a/daemon/trashlib/trashwatcher.c
 | ||||
| +++ b/daemon/trashlib/trashwatcher.c
 | ||||
| @@ -218,10 +218,6 @@ ignore_trash_mount (GUnixMountEntry *mount)
 | ||||
|  { | ||||
|    GUnixMountPoint *mount_point = NULL; | ||||
|    const gchar *mount_options; | ||||
| -  gboolean retval = TRUE;
 | ||||
| -
 | ||||
| -  if (g_unix_mount_is_system_internal (mount))
 | ||||
| -    return TRUE;
 | ||||
|   | ||||
|    mount_options = g_unix_mount_get_options (mount); | ||||
|    if (mount_options == NULL) | ||||
| @@ -230,15 +226,23 @@ ignore_trash_mount (GUnixMountEntry *mount)
 | ||||
|                                             NULL); | ||||
|        if (mount_point != NULL) | ||||
|          mount_options = g_unix_mount_point_get_options (mount_point); | ||||
| +
 | ||||
| +      g_clear_pointer (&mount_point, g_unix_mount_point_free);
 | ||||
|      } | ||||
|   | ||||
| -  if (mount_options == NULL ||
 | ||||
| -      strstr (mount_options, "x-gvfs-notrash") == NULL)
 | ||||
| -    retval = FALSE;
 | ||||
| +  if (mount_options != NULL)
 | ||||
| +    {
 | ||||
| +      if (strstr (mount_options, "x-gvfs-trash") != NULL)
 | ||||
| +        return FALSE;
 | ||||
|   | ||||
| -  g_clear_pointer (&mount_point, g_unix_mount_point_free);
 | ||||
| +      if (strstr (mount_options, "x-gvfs-notrash") != NULL)
 | ||||
| +        return TRUE;
 | ||||
| +    }
 | ||||
| +
 | ||||
| +  if (g_unix_mount_is_system_internal (mount))
 | ||||
| +    return TRUE;
 | ||||
|   | ||||
| -  return retval;
 | ||||
| +  return FALSE;
 | ||||
|  } | ||||
|   | ||||
|  static void | ||||
| -- 
 | ||||
| 2.46.1 | ||||
| 
 | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user