Subject: bug#51773: closed (Re: bug#51773: 28.0.60; Issue writing files over WebDAV on MS-Windows)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 11 Nov 2021 19:44:02 +0000

Your bug report

#51773: 28.0.60; Issue writing files over WebDAV on MS-Windows

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
51773: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=51773
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#51773: 28.0.60; Issue writing files over WebDAV on MS-Windows
From: Eli Zaretskii <[email-masked]>
To: Ioannis Kappas <[email-masked]>
Cc: [email-masked]
Date: Thu, 11 Nov 2021 21:43:26 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

> From: Ioannis Kappas <[email-masked]>
> Date: Thu, 11 Nov 2021 19:22:16 +0000
> 
> Thus a solution, which I have tested it to work, is to add the
> ERROR_INVALID_FUNCTION to the predicate
> 
> diff --git a/src/w32.c b/src/w32.c
> index 9fe698d28d..0e066b12e7 100644
> --- a/src/w32.c
> +++ b/src/w32.c
> @@ -6614,10 +6614,11 @@ acl_get_file (const char *fname, acl_type_t type)
>      || err == ERROR_INVALID_NAME)
>       errno = ENOENT;
>     else if (err == ERROR_NOT_SUPPORTED
> -    /* ERROR_ACCESS_DENIED is what we get for a volume
> -       mounted by WebDAV, which evidently doesn't
> -       support ACLs.  */
> -    || err == ERROR_ACCESS_DENIED)
> +    /* ERROR_ACCESS_DENIED or ERROR_INVALID_FUNCTION is
> +       what we get for a volume mounted by WebDAV,
> +       which evidently doesn't support ACLs.  */
> +    || err == ERROR_ACCESS_DENIED
> +    || err == ERROR_INVALID_FUNCTION)
>       errno = ENOTSUP;
>     else
>       errno = EIO;
> 
> Please let me know if you require more info.

Thanks, installed on the emacs-28 branch (there was one more place
which needed the same fix, a few lines above the one you fixed).

Subject: 28.0.60; Issue writing files over WebDAV on MS-Windows
From: Ioannis Kappas <[email-masked]>
To: [email-masked]
Date: Thu, 11 Nov 2021 19:16:19 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

There appears to be an issue with Emacs on MS-Windows that prevents
writing to files over WebDAV with the following error message:

  Getting ACLs: Input/output error, //<server>//...//<filename>

To reproduce

1. C-x f to a UNC path or mapped drive pointing to a WebDAV server.
2. Insert some text and C-x s to save the file.
3. The above error message appears, the buffer is still marked as
modified and any other attempt to save the file fails with the same
error.

Analysis to follow.

In GNU Emacs 28.0.60 (build 2, x86_64-w64-mingw32)
 of 2021-11-11
Repository revision: 6dae01ad6da1bcbced062c0d46a6759c7a0570e4
Repository branch: emacs-28
Windowing system distributor 'Microsoft Corp.', version 10