| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
The move operation doesn't report progress currently, however, the
documentation says that it is guaranteed that the prorgress_callback
is called after all data has been transferred. Let's report the
the total number of bytes moved during the operation.
https://gitlab.gnome.org/GNOME/nautilus/-/issues/1635
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Restoring files from the trash folder is slow in Nautilus as it attempts
to do it recursively. This is because G_IO_ERROR_NOT_SUPPORTED is
returned from g_file_move when G_FILE_COPY_NO_FALLBACK_FOR_MOVE flag is
used. The error is returned from client-side for pull/push operations
after commit 2e765449 as in the most cases the copy-and-delete approach
is really used there. But the problem is that it is not in all
cases, like in the trash backend case, where the native move operation
is used in fact. Let's handle the G_FILE_COPY_NO_FALLBACK_FOR_MOVE flag
directly in the backends, but not in the trash backend.
Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1589
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The DAV backend tries to find the top-most directory when mounting.
Unfortunatelly, for example with nextcloud.com, the enumeration job
fails with `Method not allowed` error for the root directory found
by this logic:
```
<?xml version="1.0" encoding="utf-8"?>
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
<s:exception>Sabre\DAV\Exception\MethodNotAllowed</s:exception>
<s:message>Listing members of this collection is disabled</s:message>
</d:error>
```
This is because nextcloud.com prevents listing of its users. Let's
change the mount logic and always require info about children to be
sure that enumeration won't fail later.
Fixes: https://gitlab.gnome.org/GNOME/gvfs/-/issues/468
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
`gvfsd-metadata` uses the `gvfs_randomize_string` function by
including `gvfsutils.h` header file from `libgvfscommon`. However,
the library is not linked, only the directory is included.
This has been fixed by linking `libgvfscommon` to `libmetadata`.
|
| |
|
| |
|
|
|
|
|
| |
The recent commit 077abad requires functionality from GLib 2.65.1.
Let's bump to that version.
|
|
|
|
|
| |
The newly introduced g_unix_mount_point_at can be used to replace
custom code.
|
|
|
|
|
|
|
|
| |
Add support for x-gvfs-notrash mount option, which allows to ignore
trash folder on certain mounts. This might be especially useful e.g.
to prevent wakeups of autofs mounts...
https://bugzilla.redhat.com/show_bug.cgi?id=1096200
|
|
|
|
|
|
| |
Commit 9564a34 uses g_bookmark_file_get_modified_date_time function
which was added recently. Let's bump the required glib version
accordingly.
|
| |
|
|
|
|
|
|
| |
g_bookmark_file_get_modified is deprecated. Let's port the code to use
g_bookmark_file_get_modified_date_time instead in order to prevent
the deprecation warnings.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The IPv6 addresses with zone identifiers are refused by GVfs currently.
THis is because of g_uri_unescape_segment failure as RFC 4007 allows bare
% sign to be used as separator. Although, RFC 6874 tries to fix that by
the %25 separator, however, at the same time, it suggests that the bare %
sign should still be accepted in user interfaces. But this would make this
too complex and lead to various problems (e.g. it would not be clear what
separator should be used for g_file_get_uri function). So I intentionally
don't plan to support what is suggested by RFC 6874 for now, which
effectively means that zone identifiers with non-ASCII chars won't be
supported. Let's skip the g_uri_unescape_segment function for IPv6 address
and also fix the gvfs_is_ipv6 function in order to accept the zone
identifiers...
Fixes: https://gitlab.gnome.org/GNOME/gvfs/-/issues/483
|
|
|
|
| |
(cherry picked from commit 226f0dd44e78af04333452a9b3ef4a94cf6cce5f)
|
|
|
|
|
| |
mmap returns MAP_FAILED if, well, it failed. Thus, checking for
NULL does not catch errors.
|
| |
|
|
|
|
|
| |
Which changed name from libplist to libplist-2.0 to embed its API
version number in the library name.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a program (like Nautilus) modifies the metadata in a file
(like metadata::custom-icon) there is no way of detecting that
change from other programs: neither inotify generates an event
in the file or the directory holding it, nor is possible to use
it in the files at, or the folder itself,
~/.local/share/gvfs-metadata, because writting in them is delayed
for nearly a minute.
Unfortunately, there are cases where it is needed to be able
to detect that. An example (and the reason for this patch) is
when Nautilus (or another file manager) modifies the custom
icon in a file from the desktop, and the desktop is managed
by a different program (in this case, Desktop Icons NG), because
the later can't detect the change made by the former and, thus,
the file will keep the old icon until the whole desktop is
refreshed.
To fix this, this patch proposes to add a signal to the
org.gtk.vfs.Metadata DBus interface, which will be triggered
whenever a key is modified. To avoid saturating the system in
case of modifying a lot of keys, it is triggered up to once
per second.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Copy and move operations preserve file attributes (such as modification
time) in most of existing scenarios: local copy/move, remote copy/move,
file_copy_fallback in glib. However, one case remains special: copy/move
between local and remote (gvfs) locations. It's implemented by push and
pull operations in backends, which don't attempt to preserve the usual
attributes (e.g., mtime and atime).
This commit implements the missing piece of functionality in sftp
backend. Modification time is preserved on copy and move, and access
time is preserved on move only, complying to the settable attributes
list of sftp backend.
Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
|
|
|
|
|
|
|
| |
Currently, only Basic and Digest authentication is possible for webdav
backend. Let's add support for NTLM also.
https://gitlab.gnome.org/GNOME/gvfs/issues/342
|
|
|
|
|
|
|
| |
Currently, only Basic and Digest authentication is possible for webdav
backend. Let's add support for Negotiate also.
https://gitlab.gnome.org/GNOME/gvfs/issues/342
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Drive icons/description are leaked currently when also media
icon/description is available. Let's add missing `g_clear_object`
resp. `g_free` calls to fix those leaks.
https://gitlab.gnome.org/GNOME/gvfs/issues/452
|
|
|
|
|
|
|
|
| |
`g_list_remove_link` is used when filtering out mountpoints, but the
GList element is not consequently freed. Let's use `g_list_delete_link`
to not leak that element.
https://gitlab.gnome.org/GNOME/gvfs/issues/452
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This job was added to check merge requests in order to prevent
gnome-build-meta breakages for example when our dependencies are changed.
However, this job needs a lot of maintenance to keep it working. Also,
the job was changed to be manual in order to not waste the capacity of
runners. Let's remove this job as it is easier to run this locally if
needed.
|
| |
|
| |
|
| |
|