GNU bug report logs - #81709
Function for converting file URLs to file paths

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Björn A. Lindqvist <bjourne@HIDDEN>; dated Tue, 25 Aug 2026 23:08:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 81709 <at> debbugs.gnu.org:


Received: (at 81709) by debbugs.gnu.org; 26 Aug 2026 11:19:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 26 07:19:53 2026
Received: from localhost ([127.0.0.1]:33207 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wzBfd-0006Cx-3i
	for submit <at> debbugs.gnu.org; Wed, 26 Aug 2026 07:19:53 -0400
Received: from sonic303-21.consmr.mail.ne1.yahoo.com ([66.163.188.147]:43534)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1wzBfZ-0006Bo-7S
 for 81709 <at> debbugs.gnu.org; Wed, 26 Aug 2026 07:19:51 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1787743182; bh=8WoLubeZQlfbpIbCOuHU3S6AFmj7uK97GAJwpPPkwC4=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=bhe4z74UMERZgK0L6ow5O2GkH6LxlzCxH8ZZqeBjlrLgOcYVC1Q0BndU9n0l4gRXisGai9jkGdv3HECrPpYAMIGD4lZ0kcn3oX1K9PHv6hxgrPdonI34mmIH+gzI4HyM1hB956WdXemO4J48WlvpzHrnUW2Sq+K/8fovUytII3BGPGuO6UYE9JX7205iFISSOkRcGAUWMaucFOSj5zr+Hh+amiD6xT4kn1XBbCwLdyr4mA3dA5AP/X4aABUzC5bsOMX5l8Yyixk7ycerJ06cqzGIH3IERRKd8xFlzyqBPJvoOkgc01oVXT5HOHfBSvfv4bpz+EhOkdEdJIt8NoA7iA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1787743182; bh=IrhB5Vn2tIHkEnvrjslI/CT68gDiWZz4bqRKlxKVX8R=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=Btl7+txHsXvefLb5kwyZcwVIAKecIAoIj2CdxQo/U6kup3eUnknTJ53AD2fMdVHMZe9LYHtm9LpKHaiQa/H885N3QIO6DvKmy7uDkzVYr+0b6wbsC6Q/BXeLjMgpOKt5Hwh5j7KshKHik/lyKyBkcqL1DkZpymbaKiGAyD0cXHsCvRhRhlK69AVtiyta0qgNHBnDA8wJ9e/wJ03HIZhlwbIV5Ath4yU5B2bJ0c/GArPnpIRo+OGEHrJ2iX8FK9iQJPdnO9FHSs3YwSwHbqoj/XRaLVBeOFV8lSqS91dLyM0v3KzGDFZ6JPHwvY8TbdnkO4tSXCSW9tQa1R8daZbncg==
X-YMail-OSG: 0X2ku8YVM1mhVwMJK52q5bgkGDUKSmGnaRKCcJjh59DN8YjE9bWUKC._YPfml1u
 1__dnRrggWclB6wFpOITRWupehc8NDwExR_dr3hRsv6P3J0atRIPftDHFNPX4KZaEhOt3ZwrI5re
 6Io3ebTMBDX9W.9ptFUZeVtJidbz2zUbBBTSd8Z8TBvA6WdAN1qllW64m4vyyo7hzuRoUDIVGiXi
 aagrfJ16OTpquVAbbkvpbsZWz70pfmQSNMfsCzygicwRX8qQeapZJ9joRUIlotgTGp_a8DSfkhFU
 qHu4z5VkGR6jylIMGGfhTo7_hjQBs6Saz2hElYlrDF.NqsTthAk7dI5zCgOenV3Pr0IqQL52C_zk
 515RY.4yls7yi__mDtonW9vuoniDrZvaJWgQHuWSDQqlh0OwjHmB5D9SndgO.EbmVM3KGrHk8GNU
 _nhpvS0kmVucZzhBrjkhoKHP4j53L6OGqwOTrTTXA_Ufqqzuqq1XD7nNHBbDZggtffWuJZfm8yqO
 qG6ZJXnR.OV5PUgm1aEEoSoYpIeM4o583r2PLkZiVQ5McHjZ7.1ZOzVJ7l08Ii3UCVOffoqvs7rm
 d6VQeInyRmO26vWJ7fwu4pLGzzAkBqc9WBLrl92TYz.AtdQFFGIDkA1Scw2YASjvYVF0XRg_lLYv
 tfhx2Jy9lDjkzC7KNKn056C1D5xj.MU.N1VU773Vg7.7IOL56bmTWj3Qmne0MgH_pPcBY8uVaROY
 313jYkiEbL1fszssiEUupxSHcqi_CmzYY01u4jd3d9jlrQ4vgplHbgIasnpwWfF9knjosX3cjnZC
 5VSeg2sDJYW6ewDH_K9nmxaqgGTb7xxhjPXVAYCsR0lKcmOZq2pM2InSJG8YE9ZDPWlLOSBYjyla
 oLj0dmEecOYeqobT.Us7TBNvA6tXIi8Zr8NBT1spfBmF6HdSzfjq46gtgRYFnq0Vdv2TQq4g5KtA
 DP5cE55dDqh2tRIDFSO7KIVeCTSZRkj2KSxneKgwTwMpvOqN7NcoQ5kiQs4IQeOYH6QNYybXx3eU
 lY59ZE8mDHwlR0Ntpsvb7yqF4yzJpaSQ2Qqg2retY5g9K4FjihbsI21lxdQzFyGAvxEsisaOp5fD
 zmOGWJ67DjsGBT2L9WB_q8xVJWkPm33aVT.nEbWQYzKYIveGME.uG.djf6UrwVwG2e4Teu0k4Hen
 cgKUnCOqxV_ze5VEuUNcpRzwUpfj5pMhWx1NvlyFzVtX5HFL0Z7Yt8yCN35z226uV.wv22_0cok.
 aHa7jvLuAPlCtdzsOr2ELc78FCSEEXS9cih9XMukN94BoPf2m.bJPck_ZeOB23BpD3ooZIEU1kFi
 sI8SHpizTKBMkyILKgYfg7pOwmjRr.BSbgBUnPCY5sHitd6aXe4cExl1G5JgDA3tjXRJZ.By0Hnz
 rbiAkHAUXNLJ7po7WydKxnh67m0MAgjSc22WFqp5E72mtvKydbohH4qL8tEa02duT87PDSQXJZJT
 VcoHPjzlL8x1tgI4AGWHQ8kvAO4V23SQNdx.xFWhTd_USJEr1gpygnj9t5br5S9Ka6OrQitqr50q
 CAozYSjNs7A6A1j1c9TXKJIZlWEL.GkGZKepKdBmAAf0Vd2Ns2Qp5DgtiKLUlOlh0u_kAQFhO05g
 LwG9Y34sNf_83c1A4Lx2JuxAOmpW6CWVlg21racoqqMa2Npoe4quPWR7fE5F5TxZceGRFtslQYz6
 lpfz8QP3NZbw.rNi1KbFsay5xmUjI0LGGRrbnECQJ3LCvLRqwzOKNpSAkE__aQ6L5TXzWMV0G4lH
 .okfuImCnrIL_2ob9YR7n5vBNNxT9Zlwkzgj5nfZskPoJyg9ldiER99pMBqgvKO0MVrlKnTaCrSh
 1LpiWY7dfl9XX50y3Pdg7VQygkqlC317PM2riyAxORIfAGXscmYlCNF8MFdyUZCBA73XS2tqBqmL
 Rp248KxCb_pHc205nT4CZagNhVv7DJ9.qPPvg_GGQ5H_MEH_8cEab0_F.pZddX89A3F7.h6K1zFU
 QPED.Azs5YSULemv_LycqS3wQdMjnk6pL8VC5jMYVIKMRh8C6fhreGTWAbX69AUxwhYynU.w3va7
 LfeZ1gARLBC0vMAJsjJmw2VODQliSdXoonECwiglzd8G6rzO8eSD6MydOsCCrLcsNRfKtQPuyV8T
 .d55F35qpPVRLxl9lsY4EiSxVXl1DZui3WnBY.EqEaW79VPGxHzxl9dsboGYZEhagWd.7050Bw_Y
 NeUDMIDvDszLaQr0QU7iONTK3vuyVH_9BJxbJKtohrxUauHNqboLTJG6NZSpd0hY-
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: f9ee41ad-75ec-4243-b7c2-0e65ac6035b6
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic303.consmr.mail.ne1.yahoo.com with HTTP; Wed, 26 Aug 2026 11:19:42 +0000
Received: by hermes--production-sg3-664647588b-pxvcr (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 04a03ac376f8fad7f034ec431d07413f; 
 Wed, 26 Aug 2026 11:19:38 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: =?utf-8?Q?Bj=C3=B6rn?= A. Lindqvist <bjourne@HIDDEN>
Subject: Re: bug#81709: Function for converting file URLs to file paths
In-Reply-To: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
References: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
Date: Wed, 26 Aug 2026 19:19:32 +0800
Message-ID: <87tsohgmd7.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Mailer: WebService/1.1.26380
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 2409
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81709
Cc: 81709 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Bj=C3=B6rn A. Lindqvist <bjourne@HIDDEN> writes:

>
> +;;;###autoload
> +(cl-defun url-to-file-pathx (maybe-url &key
> +                                      (decode-as 'utf-8)
> +                                      (include-host nil)
> +                                      (must-be-readable nil))
> +  "Convert MAYBE-URL to a file path.
> +
> +If MAYBE-URL is a file URL, and DECODE-AS is non-nil, percent-decode the
> +filename component (path and query) and decode the result using the
> +given character encoding. If MAYBE-URL includes a host and INCLUDE-HOST
> +is non-nil, prepend \"//host\" to the file path (useful for UNC
> +paths). If MAYBE-URL is not a file URI it is assumed to be a file
> +path. Return nil if MUST-BE-READABLE and the file path is not
> +readable. Embedded Windows drive-letters are parsed correctly."
> +  (let* ((parse (url-generic-parse-url maybe-url))
> +         (file-path (if (string=3D "file" (url-type parse))
> +                        (let* ((host (url-host parse))
> +                               (p0 (url-filename parse))
> +                               (p1 (if decode-as
> +                                       (decode-coding-string
> +                                        (url-unhex-string p0)
> +                                        decode-as)
> +                                     p0)))
> +                               (if (and include-host (length> host 0))
> +                                       (concat "//" host p1)
> +                                 p1))
> +                      maybe-url)))
> +    (when (or (not must-be-readable)
> +              (file-readable-p file-path))
> +      file-path)))

Besides Jim's remarks respecting the name of this function and our
preference for "file name" as against "file path" or words to the same
effect, the doc string should be punctuated with two spaces after each
full stop, and on Android it might be advisable to convert "content://"
URIs into references to "/content/by-authority".  This is a virtual file
system implemented by the Android port providing access to the contents
of such URIs, which are specific to that system.

A "content://" URI partakes of the following form:

   content://AUTHORITY/A/B/C[?QUERY]

And may be converted into a file by the following name:

   /content/by-authority/AUTHORITY/A/B/C[?QUERY]

Where each component after "AUTHORITY" is URL-encoded.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81709; Package emacs. Full text available.

Message received at 81709 <at> debbugs.gnu.org:


Received: (at 81709) by debbugs.gnu.org; 26 Aug 2026 09:30:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 26 05:30:46 2026
Received: from localhost ([127.0.0.1]:60242 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wz9y2-000223-8l
	for submit <at> debbugs.gnu.org; Wed, 26 Aug 2026 05:30:46 -0400
Received: from mout.gmx.net ([212.227.17.21]:42383)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1wz9xx-00020G-Rh
 for 81709 <at> debbugs.gnu.org; Wed, 26 Aug 2026 05:30:44 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1787736633; x=1788341433; i=michael.albinus@HIDDEN;
 bh=sHqzhxyDaLHbbVzXMH2Kt7cxogts6+PCTzOu7kvhzHo=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=h8L+Tptx6uoY6PBjTufy55r9vUUM+9JbbO8cxsKHcKuHcjvvQrCn5830mDKlsF5N
 n967eFcCDUNcPcfCdLpgrBEGAlpAfUnnmITmjx77XlktLNJlt2j1NklYm7fsSpSpR
 mansqBKBjWXJilszO6gICmlG7+Sxlgd7jOJV3dtsVt0pP7I9HwGoawSklSPwUHHKD
 40SlzvFrx2UtGFPo/dpPlkSEd/VasfEo2JSb5DUMPWJcAAym/e1nML1Ni0wWy2X0D
 FlEsVATC/n2g2EbSnbED4vXhylKIxX0td/v4t/z1IXBznH3NE0LYQPqXFrA8eFfqY
 wcK13PrOyGcQNh5Bjg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from client.hidden.invalid by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MEFvp-1x76Zo14wH-007bga; Wed, 26
 Aug 2026 11:30:33 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: Jim Porter <jporterbugs@HIDDEN>
Subject: Re: bug#81709: Function for converting file URLs to file paths
In-Reply-To: <0cd63a6f-9e2e-c55e-95e5-fbf877bf40dd@HIDDEN>
References: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
 <0cd63a6f-9e2e-c55e-95e5-fbf877bf40dd@HIDDEN>
Date: Wed, 26 Aug 2026 11:30:32 +0200
Message-ID: <87a4q9grev.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:/NIj7gPmWTQjRkhp9c1L5RkQ6HaopMCh/Iam5on81MKb+xQ6TC9
 XIacn25ZSiOCH51vIEMDb3t4euPrcQXNI+uapCCg4H6kpgCNy+IbYQtVJ/DPKZfrb3TRJ84
 ZIHRix2SWQISSTEbFzTdhxiudigz6CDG6WrApzR44UnFuqrAo/DsLsOm1rmFjHbBtKlRkPX
 rErg2BW99q9iIXiv7IKkw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:SL/vgbyZWs4=;WB/QYtHx1RjUC9d22qLn3SsYfrs
 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
 BsyBFeBPeXEfQ2vwbAwA=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81709
Cc: 81709 <at> debbugs.gnu.org,
 "=?utf-8?Q?Bj=C3=B6rn?= A. Lindqvist" <bjourne@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Jim Porter <jporterbugs@HIDDEN> writes:

Hi Jim,

> I'm not sure what's going on here. Is this MS-Windows-specific? In
> Emacs, it might be better to turn a file URL that includes a host into
> a Tramp filename. Here's a snippet from my init files to show what I
> mean:
>
>       (setq filename (tramp-make-tramp-file-name
>                       (make-tramp-file-name
>                        :method tramp-default-method :user (url-user url)
>                        :host host :localname filename)))

What's wrong with url-tramp? It does it for you for free. And I don't
recommend to use a host in file URLs (except "Localhost", as
standardized by RFC 8089).

Often, tramp-default-method isn't the best choice; we have also
tramp-default-method-alist.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81709; Package emacs. Full text available.

Message received at 81709 <at> debbugs.gnu.org:


Received: (at 81709) by debbugs.gnu.org; 26 Aug 2026 09:24:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 26 05:24:05 2026
Received: from localhost ([127.0.0.1]:60161 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wz9rY-00011h-Nk
	for submit <at> debbugs.gnu.org; Wed, 26 Aug 2026 05:24:05 -0400
Received: from mout.gmx.net ([212.227.17.22]:44531)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1wz9rW-00010i-1u
 for 81709 <at> debbugs.gnu.org; Wed, 26 Aug 2026 05:24:03 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1787736235; x=1788341035; i=michael.albinus@HIDDEN;
 bh=Yfgx1h4RoBg6qIQrPPQvjt0ETLIAAqPx/wnhLtlIc/0=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=JIbrh9E+JTbkMSwijXXZzCzDwP99Q/sQDOCqbwdMYOoOkOTnmTpvZTLpz8IcLt44
 I83rj/6cqrEMbnAzMdfKu43okgcX82+3OCa2F6y6nWjp5Rc8W0GpC86JLMPR7eMIS
 uhJnZZugF5Jn8iLoaeopUnrRXGZM+YDBX+4STV8ERYCV1yT5vQ4VcUCwbammCplj/
 Y8ma5GwOajryBGDcw66ige6TEx1mvo66cOLenPF25htr7b4tk5wrzjlszWTnlP5nc
 GJG29gVa8IkY/5NpVCU4W0/1Sfa6rtvCcyurluvC/iAXBqe06eio3Ic90keDYovSW
 VQuO3Doz7leuvLCS5w==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from client.hidden.invalid by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mn2WF-1wXDgq24yV-00g7tA; Wed, 26
 Aug 2026 11:23:55 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: =?utf-8?Q?Bj=C3=B6rn?= A. Lindqvist <bjourne@HIDDEN>
Subject: Re: bug#81709: Function for converting file URLs to file paths
In-Reply-To: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
References: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
Date: Wed, 26 Aug 2026 11:23:54 +0200
Message-ID: <87ecflgrpx.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:CiAQzn5HyH91r7mehsjvhl2ADzD+ARabgrhWU5IOdhDjYvydUWq
 qISc4VzniJfiiFAMXLVC+rZW1o1G0pBkuAnZhU6Jp11oFK+EC6nKvLPBq/qxGwA5Zqn/c6d
 KogjdRD+ot9iUVO8rvTtJ+YHPp+R0PQQALX8MBXLc3f0HHRptA2XBTTjiwzyjc4ztO6BNY6
 +y+Sn7JW29NK/sYA7zIaA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:C7HJbfLSTxw=;O6gGXuvTPLFs1+bR5kVPBvDBb9b
 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
 JkRkcktrGSA=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81709
Cc: 81709 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Bj=C3=B6rn A. Lindqvist <bjourne@HIDDEN> writes:

> Hello Emacs Developers!

Hi Bj=C3=B6rn,

> In bug #81675 I tried to improve Emacs desktop integration via
> emacsclient. But that requires better file URL handling so I created
> this bug (I hope you don't mind).

Thanks for this!

> The first patch adds a function url-to-file-path for when you want to
> convert a string that may be a file URL to a file system path. Due to
> the existence of character encodings and Winblows it is not totally
> trivial. The second patch refactors dnd-get-local-file-name and
> eglot-path-to-uri so that they call url-to-file-path.

I recommend to follow RFC 8089
<https://datatracker.ietf.org/doc/html/rfc8089> for the
implementation. For representing a *local* file, it allows either

"file:///path/to/file"
"file://localhost/path/to/file"
"file:/path/to/file"

"localhost" is used literally. We should implement this.

Using UNC paths is allowed in the following ways:

"file:////host.example.com/path/to/file"
"file://///host.example.com/path/to/file"

Implementing the host part of the URI as UNC file name, as you have
specified, is not standardized.

There are also rules how to specify drive letters. The following
examples are given:

"file:///c:/path/to/file"
"file:c:/path/to/file"
"file:///c|/path/to/file"
"file:/c|/path/to/file"
"file:c|/path/to/file"

A host name in the URI different from "localhost", like
"file://host.example.com/path/to/file", is allowed. However, RFC 8089
claims:

--8<---------------cut here---------------start------------->8---
This specification neither defines nor forbids any set of operations
that might be performed on a file identified by a non-local file URI.

...

Treating a non-local file URI as local, or otherwise attempting to
perform local operations on a non-local URI, can result in security
problems.
--8<---------------cut here---------------end--------------->8---

I'm not sure whether we shall alow non-local host names. We have already
url-tramp, which allows URLs like "ssh://user@HIDDEN/path/to/file=
".

> The patches cause no test suite errors and seem to work. Though I'm
> not familiar with either dnd or eglot so there may be corner cases I
> haven't considered.

Really? There is a problem which let the eglot testsuite fail on the
master branch these days. Have you tried it with master branch?

Anyway, the patches on dnd.el and eglot.el shall be applied after
confirmation of the respective maintainers: I don't comment them.

Here are some comments on the code:

> diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el
> index fb70d553768..15825392521 100644
> --- a/lisp/url/url-util.el
> +++ b/lisp/url/url-util.el
> @@ -616,6 +616,37 @@ url-domain
>        )
>      (and found candidate)))
>
> +;;;###autoload
> +(cl-defun url-to-file-pathx (maybe-url &key
> +                                      (decode-as 'utf-8)
> +                                      (include-host nil)
> +                                      (must-be-readable nil))
> +  "Convert MAYBE-URL to a file path.
> +
> +If MAYBE-URL is a file URL, and DECODE-AS is non-nil, percent-decode the
> +filename component (path and query) and decode the result using the
> +given character encoding. If MAYBE-URL includes a host and INCLUDE-HOST
> +is non-nil, prepend \"//host\" to the file path (useful for UNC
> +paths). If MAYBE-URL is not a file URI it is assumed to be a file
> +path. Return nil if MUST-BE-READABLE and the file path is not
> +readable. Embedded Windows drive-letters are parsed correctly."

Please refer to RFC 8089. Mention also the special case "localhost", and
implement it. Implement the different variants of drive letters.  I
recommend not to use INCLUDE-HOST, but that's open to the discussion.

> +  (let* ((parse (url-generic-parse-url maybe-url))
> +         (file-path (if (string=3D "file" (url-type parse))
> +                        (let* ((host (url-host parse))
> +                               (p0 (url-filename parse))
> +                               (p1 (if decode-as
> +                                       (decode-coding-string
> +                                        (url-unhex-string p0)
> +                                        decode-as)
> +                                     p0)))
> +                               (if (and include-host (length> host 0))
> +                                       (concat "//" host p1)
> +                                 p1))
> +                      maybe-url)))
> +    (when (or (not must-be-readable)
> +              (file-readable-p file-path))
> +      file-path)))

If we allow HOST to be a UNC host, it should be restricted to
system-type windows-nt (and ms-dos?).

> mvh/best regards Bj=C3=B6rn Lindqvist

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81709; Package emacs. Full text available.

Message received at 81709 <at> debbugs.gnu.org:


Received: (at 81709) by debbugs.gnu.org; 26 Aug 2026 02:07:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Aug 25 22:07:00 2026
Received: from localhost ([127.0.0.1]:55850 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wz32a-0001KJ-D3
	for submit <at> debbugs.gnu.org; Tue, 25 Aug 2026 22:07:00 -0400
Received: from mail-pj1-x1030.google.com ([2607:f8b0:4864:20::1030]:43085)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jporterbugs@HIDDEN>)
 id 1wz32Y-0001K0-5O
 for 81709 <at> debbugs.gnu.org; Tue, 25 Aug 2026 22:06:58 -0400
Received: by mail-pj1-x1030.google.com with SMTP id
 98e67ed59e1d1-39652a6e963so1297193a91.0
 for <81709 <at> debbugs.gnu.org>; Tue, 25 Aug 2026 19:06:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1787710012; x=1788314812; darn=debbugs.gnu.org;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :to:content-language:subject:mime-version:date:message-id:from:to:cc
 :subject:date:message-id:reply-to:content-type;
 bh=x6+xwT3YBw8Hy6mVujhJ4bHKwo5H3sFHJXuEf0jhmeQ=;
 b=QZpXz1BkJop5jnMc3bK8ZnDx49Fqv+A1PjZrB82/Uj2Zx/ICZaU9gkBa4JoKESp+W7
 gdw2Ya3zJxnP+l6K27wuRkOu8bFD2jkQLVjkYMGjymAbsZnVeZXE4q/FiA1HT6UNrGGD
 8xFyNqdOOlF6nb07MuBNQ5D5xviprm3KK2NwpYLccdTwsuLgU2caM00xqOOPmnCq7qF4
 Cw13N4qSMCWzt/4tSCcFzgCoDoZLQ8F85GOH79iI66nqBE1NBPrOa9rofvSWFQwv0rop
 JiZmEQdM9Wl96swPzsqkPJkvrG13yg4Cna8Shl4RMPA4hQ+/70ngOOuu2VqLPU1QgR/f
 nRQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1787710012; x=1788314812;
 h=content-transfer-encoding:content-type:in-reply-to:from:references
 :to:content-language:subject:mime-version:date:message-id:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=x6+xwT3YBw8Hy6mVujhJ4bHKwo5H3sFHJXuEf0jhmeQ=;
 b=EQwdbo5wR9PZll9Q9IBslqjcDgyF9Rx4NNKjupwljhn/SiWgm8gD/C8/kvs8Ay5ypt
 0+kq0qBtyG6Up1e3spEj8fpiX6lYNEQHg0f3saAd8qBlwrTDCpfPxz8vpP086Pc6LZwX
 mdhYVcfcTHWzb8MildZIrzC2rneRSG4C85QPX3iW4890VwHprkI4ktv1uG71anUKWVdm
 UcnC7z5F3947ebE80+5E3/5gpCidYuKE47dMi35RnsUD9jHd5SeDF3Qqm4cm6q1YJhB0
 7ZnuyJv1iE5RKwDA1z9A3z9pA0Pe7YUCz8cfwAwN25ZqIEThhF6hjpfIKtIJRuuUq1vJ
 +Wig==
X-Forwarded-Encrypted: i=1;
 AHgh+Rrxf+odjauow0TulXo+j8OPGM9+nNjkZcOQU4gJLKXtHSaW/QhegUcxclS1OV6iTGUDAuW6tw==@debbugs.gnu.org
X-Gm-Message-State: AFuF++ldRyBRKMjXd5Lszn2w2WGvaThPIak4+SM/eZaM6cqcjWNHae9B
 4aZbiJWObgUlhPeAnR3rO0aNcY6qRvQQ+YHvomlY+xYdcCqNKsnwB2Hd0LpiTg==
X-Gm-Gg: AR+sD13xVRsSbZlH5hX+u3zDNjxlEDTq3B8eCigRF2t6kMNP2E/ipLen4YYStK2zp6h
 RkHwAbkmpcqUprsQSje9SzLYnNKAQULE5xehh8GL0sSjy9ooGuNraqayo76WUk8ev3jdwqlb5PN
 AfjfsQCt5L7g5dYimaTnqozpPPjusmdj9GN8i+GC4xCAKXuH+UmzG+3UF/E7zPKoRbf21NlELNg
 Kfsi0eK+bghFv6mVYO9Nm0uK6MHFkArMXsFxJEJ3NjQBOkDGiHhKdkmBGDQa1Td4I5+PR0mMsFo
 pQCwV6JDqXUlSmxtBH8bkUd4HZw2YpPdrUoRQaWmQJuxSmxl1gQf+1k4kCcErCtTcPaWHyj4y9c
 gntg6uVUg9D+kTG29jP2Js/nX6FvC8cvYlR7gnCELBvTNElG7BJpv5+1XEF+j48QcTiTYTOPS/8
 Jx/k10Vf1A+pJA/yiX9i39/gW+G+AsvmRM9iemXaWt1jO3kM9jRzx5AY0zxxkLmCohSQCYihdZf
 +k=
X-Received: by 2002:a17:90b:2712:b0:394:ed5c:ff9f with SMTP id
 98e67ed59e1d1-39645b19ef1mr14976518a91.17.1787710011936; 
 Tue, 25 Aug 2026 19:06:51 -0700 (PDT)
Received: from [192.168.1.4] ([76.168.144.128])
 by smtp.googlemail.com with ESMTPSA id
 5a478bee46e88-3283d60c2b4sm4524758eec.5.2026.08.25.19.06.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 25 Aug 2026 19:06:51 -0700 (PDT)
Message-ID: <0cd63a6f-9e2e-c55e-95e5-fbf877bf40dd@HIDDEN>
Date: Tue, 25 Aug 2026 19:06:50 -0700
MIME-Version: 1.0
Subject: Re: bug#81709: Function for converting file URLs to file paths
Content-Language: en-US
To: =?UTF-8?Q?Bj=c3=b6rn_A=2e_Lindqvist?= <bjourne@HIDDEN>,
 81709 <at> debbugs.gnu.org
References: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
From: Jim Porter <jporterbugs@HIDDEN>
In-Reply-To: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 81709
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 8/25/2026 4:06 PM, Björn A. Lindqvist wrote:
> The first patch adds a function url-to-file-path for when you want to
> convert a string that may be a file URL to a file system path. Due to
> the existence of character encodings and Winblows it is not totally
> trivial. The second patch refactors dnd-get-local-file-name and
> eglot-path-to-uri so that they call url-to-file-path.

Thanks. Based on your second path, it does seem that a function like 
this would reduce some code duplication.

I've actually written very similar code in my init files, so here are a 
few drive-by comments based on my experience here:

> +;;;###autoload
> +(cl-defun url-to-file-pathx (maybe-url &key

Is the trailing "x" intentional? Also, GNU naming conventions generally 
reserve the word "path" for a list of directories to search, as in 
$PATH, $CPATH, etc. How about 'url-to-file-name'?

> +paths). If MAYBE-URL is not a file URI it is assumed to be a file
> +path. Return nil if MUST-BE-READABLE and the file path is not
> +readable. Embedded Windows drive-letters are parsed correctly."

I don't think this fallback behavior is something we'd want in all 
cases. Probably better to have this return nil or signal an error, and 
then have callers do something like '(or (url-to-file-path foo) foo)'.

Also, for MS-Windows absolute file names, the result of 'url-filename' 
will be something like "/C:/foo/bar", and you may want to drop the 
leading slash.

Finally, a small nitpick: Emacs prefers two spaces at the end of sentences.

> +                               (if (and include-host (length> host 0))
> +                                       (concat "//" host p1)

I'm not sure what's going on here. Is this MS-Windows-specific? In 
Emacs, it might be better to turn a file URL that includes a host into a 
Tramp filename. Here's a snippet from my init files to show what I mean:

       (setq filename (tramp-make-tramp-file-name
                       (make-tramp-file-name
                        :method tramp-default-method :user (url-user url)
                        :host host :localname filename)))

I didn't look at the second patch in any great detail yet, since I'd 
have to spend a bit of time studying dnd.el to know just what's going on 
there.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#81709; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 25 Aug 2026 23:07:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Aug 25 19:07:28 2026
Received: from localhost ([127.0.0.1]:55392 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wz0Ep-00073t-7G
	for submit <at> debbugs.gnu.org; Tue, 25 Aug 2026 19:07:28 -0400
Received: from lists1p.gnu.org ([2001:470:142::17]:54604)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <bjourne@HIDDEN>) id 1wz0El-00073K-GU
 for submit <at> debbugs.gnu.org; Tue, 25 Aug 2026 19:07:24 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <bjourne@HIDDEN>) id 1wz0Ef-0000he-TL
 for bug-gnu-emacs@HIDDEN; Tue, 25 Aug 2026 19:07:17 -0400
Received: from mail-yw1-x1130.google.com ([2607:f8b0:4864:20::1130])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <bjourne@HIDDEN>) id 1wz0Ed-0006iT-A8
 for bug-gnu-emacs@HIDDEN; Tue, 25 Aug 2026 19:07:17 -0400
Received: by mail-yw1-x1130.google.com with SMTP id
 00721157ae682-8111c0c7561so3569157b3.3
 for <bug-gnu-emacs@HIDDEN>; Tue, 25 Aug 2026 16:07:14 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1787699233; cv=none;
 d=google.com; s=arc-20260327;
 b=IstU0beUK1tNBJpWvAP29/7rqtAsJApAPKnMLhhw6k3naFWiQsOsafy7IGBM982gNF
 YWu8LpaEdzYYxTNLvisegqhcxjXZqYRCGzIdwTysiYCDDPIHi/P0LBFk2va8mol66xoe
 IfW52M8LmZIT29L9srEo+ISuKT4aljtIIJtxyUFm599rw2vfBfNNOE5cnysFhMpg5sUf
 X6+yV+5hvKE/EYiAUEWuFQGNr020HmN4Rx/kAOTiWSngvrXDW+Akh5oInnP3MEcIQKcC
 OAnURmO7CofHS/nswffY1GEnE0uZoZfYkeUpxBo+gF4g9QhjNJdQYv9yuJJ4PgzvH6sn
 nEKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20260327; 
 h=to:subject:message-id:date:from:mime-version:dkim-signature;
 bh=Boc0OU0pOkFpw3MnQy3mEOxBQR3hUEB1M+FLX2b3i5E=;
 fh=+R8aXOFVnuBbN1nRXJJI02Ia//JUQJmLW/Uk/VaA0ag=;
 b=mvf42hYGqALQMhpBWlj5bNBHyr1I2qFhiJvKgZc9F7q/2rFAujy4NgYMOuhqjTbLDf
 /kRLN6koMxP+Sr1iQRoP/BlUADn8iz8cOpjZOoQwA0Ueg7r2bIpC+lszMS99Dar+O6os
 7NWhUyI4sEEhaQZg6npWNdNnso8aa9cstw+6mzs01xjJ1EYTdsWdl6GD/JWQQPNrUUQ2
 1c7YqOBW2icgJO9Ip0vQfD0iacatPeKwRyn8EuvH3LFWnHlepvLmoXcAEJu+QuCXCW9N
 t8gaVautC+Z7HP5Fk1rFwlc/ZYjbca4o+9Q/NIaSfbtnsbcd8ZYny/SndhDO7o6YcYIP
 ye4g==; darn=gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20251104; t=1787699233; x=1788304033; darn=gnu.org;
 h=content-type:to:subject:message-id:date:from:mime-version:from:to
 :cc:subject:date:message-id:reply-to:content-type;
 bh=Boc0OU0pOkFpw3MnQy3mEOxBQR3hUEB1M+FLX2b3i5E=;
 b=lbZg8Ul7LAcFs9Cgt+nuL81snWB/WpXEQvnvTD+7FEvrsu9X5XXkajh+a7MJc1/le6
 pNZd3oOiQGJemEAQ7iyamGccwW4jq+uQEs+fuFPmUX3z3dWJLP61EuTGfz29LnQrQPTp
 rUMi2VP5L1GFWsy0SQQ2u9bMQOQ2vwRBsvPKDfnJyxQMOc2cL+P1UhrHR3rU7fA8CPio
 rrExQWM9LFZ4/bgs4Fg8GNmFv58HXbMkT0dEfzVplGm03kIIa4eXD+tkYY007118MY0f
 cgDs1hBRwB+smAC+mdfqtvQD8nrdgRJQ0kubadWSzYO1miEl6hAWguTeFO/n2F8UhQZv
 ImdA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1787699233; x=1788304033;
 h=content-type:to:subject:message-id:date:from:mime-version:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=Boc0OU0pOkFpw3MnQy3mEOxBQR3hUEB1M+FLX2b3i5E=;
 b=pcG8skxynqWxk6UGwdEVC2gYyomJ7KbtPs9yQnKCwDRwg6WfkA+x48NE1No6VFWeqQ
 EnW1hVUTYhwEc2Ob/IO9CI4HDOKSihTpWWDZZKDGBrxNxLhRQy8+tjL58srKMkNC2qLl
 7WLLd4+UMyW/SAuO0Zlel4rj53Junq5XtZVemE9lv2+ll3FsEYtsdPkb63tl4mqbqqU5
 H24gUG8gUWG6i7EFaJimmPV+1dYSreyRAYfG6rwEBqQQQ8+Ff2IhmUvvbb41ZquspoxJ
 F7NlHzbxbwvVrQodrw2DoLIb6nqgKR8ZIPNTFWLVcCInWk9rdRPg3XD0X/zzz9QtEMGf
 w4Gg==
X-Gm-Message-State: AFuF++kf07UnKN8AJapkafoVT3jHLuiu1e2WYVGaU00jwTG3JAUxWL1C
 PDrer6aDG6QE8d3u762aNio161E6y3KFFsw85VRDtUb+0BdeRu1KNbZQwgW2hybZQUIcYLwetbO
 YPrH8Y2eFo85k2wAZnA+THgoelczPLVzfpp0x2Hc=
X-Gm-Gg: AR+sD135EN3w6MHxpPJoQOK4vFdtHUoUSWEKSuAeSHeqgbINUYGhQ0vtShdvqQW3T4R
 DBTAkWYs4YZAJNRTb4wpKj+ZF2ju364l5MG7+tEw5DFY8kHu75wyvikr6JLoNAeGsu/09nRRzHV
 AssN1qSq4H1jzNYBCrNS+xa2LlG3botIzB9vGrVXSGj+oOOOh/WYJPVW+QALQkEH2T8eDipTjdy
 NzbDtOkNZ8jyQMh7qee2fw4Tcx46B4I6MQbabiieULJB8jxNjkNKcdPXIoYkM8xI/aGCNaiogpd
 LTDHVAK+C0uKcXhC6HDejUsrRMXYvLnhbGhUMHeeKBhg6iYJPdmsEmal/0aHaWSo8YYkeae4/OU
 2Q0eIFMlq7NZw41VFGkkAP8V2VvX2CiqiP6xI5mE40L+ZTXmKciaShmweqB/b+rIE/cc2HJgFaT
 KUIFKZ6ogoB63uAtMD1jc2djhONReMV5gWmMd21ee4ONA=
X-Received: by 2002:a05:690c:650c:b0:826:8d41:897a with SMTP id
 00721157ae682-8573cbc8038mr12615487b3.13.1787699232591; Tue, 25 Aug 2026
 16:07:12 -0700 (PDT)
MIME-Version: 1.0
From: =?UTF-8?Q?Bj=C3=B6rn_A=2E_Lindqvist?= <bjourne@HIDDEN>
Date: Wed, 26 Aug 2026 01:06:35 +0200
X-Gm-Features: AcwNN1WY5XTY01fNLK_EfyVS1ueIuDUmTHLo0Z8QCzikmv4kKn4CmBsTmUM6XA4
Message-ID: <CALG+76d84g60eaLs1Tx+WMpsCsZOsEicvqEmAse2N=hFUu9P6w@HIDDEN>
Subject: Function for converting file URLs to file paths
To: bug-gnu-emacs@HIDDEN
Content-Type: multipart/mixed; boundary="000000000000b9ee970659e72963"
Received-SPF: pass client-ip=2607:f8b0:4864:20::1130;
 envelope-from=bjourne@HIDDEN; helo=mail-yw1-x1130.google.com
X-Spam_score_int: -8
X-Spam_score: -0.9
X-Spam_bar: /
X-Spam_report: (-0.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 NUMERIC_HTTP_ADDR=1.242, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 2.0 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: Hello Emacs Developers! In bug #81675 I tried to improve
 Emacs
 desktop integration via emacsclient. But that requires better file URL
 handling
 so I created this bug (I hope you don't mind). The first patch adds a function
 url-to-file-path for when you want to convert a string that may be a file
 URL to a file system path. Due to the existence of character encodings and
 Winblows it is not [...] 
 Content analysis details:   (2.0 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at https://www.dnswl.org/,
 no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org]
 1.0 FORGED_GMAIL_RCVD      'From' gmail.com does not match 'Received'
 headers
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (bjourne[at]gmail.com)
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 0.0 NUMERIC_HTTP_ADDR      URI: Uses a numeric IP address in URL
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)

--000000000000b9ee970659e72963
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello Emacs Developers!

In bug #81675 I tried to improve Emacs desktop integration via
emacsclient. But that requires better file URL handling so I created
this bug (I hope you don't mind).

The first patch adds a function url-to-file-path for when you want to
convert a string that may be a file URL to a file system path. Due to
the existence of character encodings and Winblows it is not totally
trivial. The second patch refactors dnd-get-local-file-name and
eglot-path-to-uri so that they call url-to-file-path.

The patches cause no test suite errors and seem to work. Though I'm
not familiar with either dnd or eglot so there may be corner cases I
haven't considered.


--=20
mvh/best regards Bj=C3=B6rn Lindqvist

--000000000000b9ee970659e72963
Content-Type: text/x-patch; charset="UTF-8"; 
	name="0001-Function-for-converting-file-URIs-to-local-file-syst.patch"
Content-Disposition: attachment; 
	filename="0001-Function-for-converting-file-URIs-to-local-file-syst.patch"
Content-Transfer-Encoding: base64
Content-ID: <f_mt99vel70>
X-Attachment-Id: f_mt99vel70

RnJvbSBhYWJkZTRkNDhmMjY4NzQ2MTU2MjNjMzQ0NGUwOTQ3ZTZjMWE2OWJmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Qmo9QzM9QjZybj0yMExpbmRxdmlzdD89IDxi
am91cm5lQGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAyNCBBdWcgMjAyNiAxNTowNTo0NyArMDIwMApT
dWJqZWN0OiBbUEFUQ0ggMS8yXSBGdW5jdGlvbiBmb3IgY29udmVydGluZyBmaWxlIFVSSXMgdG8g
bG9jYWwgZmlsZSBzeXN0ZW0KIHBhdGhzCgoqIGxpc3AvdXJsL3VybC11dGlsLmVsICh1cmwtdG8t
ZmlsZS1wYXRoKTogbmV3IGZ1bmN0aW9uCiogdGVzdC9saXNwL3VybC91cmwtdXRpbC10ZXN0cy5l
bCAodXJsLXRvLWZpbGUtcGF0aC10ZXN0cyk6IG5ldyB0ZXN0cwotLS0KIGxpc3AvdXJsL3VybC11
dGlsLmVsICAgICAgICAgICAgfCAzMSArKysrKysrKysrKysrKwogdGVzdC9saXNwL3VybC91cmwt
dXRpbC10ZXN0cy5lbCB8IDcxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMiBm
aWxlcyBjaGFuZ2VkLCAxMDIgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2xpc3AvdXJsL3Vy
bC11dGlsLmVsIGIvbGlzcC91cmwvdXJsLXV0aWwuZWwKaW5kZXggZmI3MGQ1NTM3NjguLjE1ODI1
MzkyNTIxIDEwMDY0NAotLS0gYS9saXNwL3VybC91cmwtdXRpbC5lbAorKysgYi9saXNwL3VybC91
cmwtdXRpbC5lbApAQCAtNjE2LDYgKzYxNiwzNyBAQCB1cmwtZG9tYWluCiAgICAgICApCiAgICAg
KGFuZCBmb3VuZCBjYW5kaWRhdGUpKSkKCis7OzsjIyNhdXRvbG9hZAorKGNsLWRlZnVuIHVybC10
by1maWxlLXBhdGh4IChtYXliZS11cmwgJmtleQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAoZGVjb2RlLWFzICd1dGYtOCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKGluY2x1ZGUtaG9zdCBuaWwpCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIChtdXN0LWJlLXJlYWRhYmxlIG5pbCkpCisgICJDb252ZXJ0IE1BWUJFLVVS
TCB0byBhIGZpbGUgcGF0aC4KKworSWYgTUFZQkUtVVJMIGlzIGEgZmlsZSBVUkwsIGFuZCBERUNP
REUtQVMgaXMgbm9uLW5pbCwgcGVyY2VudC1kZWNvZGUgdGhlCitmaWxlbmFtZSBjb21wb25lbnQg
KHBhdGggYW5kIHF1ZXJ5KSBhbmQgZGVjb2RlIHRoZSByZXN1bHQgdXNpbmcgdGhlCitnaXZlbiBj
aGFyYWN0ZXIgZW5jb2RpbmcuIElmIE1BWUJFLVVSTCBpbmNsdWRlcyBhIGhvc3QgYW5kIElOQ0xV
REUtSE9TVAoraXMgbm9uLW5pbCwgcHJlcGVuZCBcIi8vaG9zdFwiIHRvIHRoZSBmaWxlIHBhdGgg
KHVzZWZ1bCBmb3IgVU5DCitwYXRocykuIElmIE1BWUJFLVVSTCBpcyBub3QgYSBmaWxlIFVSSSBp
dCBpcyBhc3N1bWVkIHRvIGJlIGEgZmlsZQorcGF0aC4gUmV0dXJuIG5pbCBpZiBNVVNULUJFLVJF
QURBQkxFIGFuZCB0aGUgZmlsZSBwYXRoIGlzIG5vdAorcmVhZGFibGUuIEVtYmVkZGVkIFdpbmRv
d3MgZHJpdmUtbGV0dGVycyBhcmUgcGFyc2VkIGNvcnJlY3RseS4iCisgIChsZXQqICgocGFyc2Ug
KHVybC1nZW5lcmljLXBhcnNlLXVybCBtYXliZS11cmwpKQorICAgICAgICAgKGZpbGUtcGF0aCAo
aWYgKHN0cmluZz0gImZpbGUiICh1cmwtdHlwZSBwYXJzZSkpCisgICAgICAgICAgICAgICAgICAg
ICAgICAobGV0KiAoKGhvc3QgKHVybC1ob3N0IHBhcnNlKSkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAocDAgKHVybC1maWxlbmFtZSBwYXJzZSkpCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKHAxIChpZiBkZWNvZGUtYXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIChkZWNvZGUtY29kaW5nLXN0cmluZworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICh1cmwtdW5oZXgtc3RyaW5nIHAwKQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRlY29kZS1hcykKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwMCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChp
ZiAoYW5kIGluY2x1ZGUtaG9zdCAobGVuZ3RoPiBob3N0IDApKQorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAiLy8iIGhvc3QgcDEpCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwMSkpCisgICAgICAgICAgICAgICAgICAgICAgbWF5YmUtdXJs
KSkpCisgICAgKHdoZW4gKG9yIChub3QgbXVzdC1iZS1yZWFkYWJsZSkKKyAgICAgICAgICAgICAg
KGZpbGUtcmVhZGFibGUtcCBmaWxlLXBhdGgpKQorICAgICAgZmlsZS1wYXRoKSkpCisKIChwcm92
aWRlICd1cmwtdXRpbCkKCiA7OzsgdXJsLXV0aWwuZWwgZW5kcyBoZXJlCmRpZmYgLS1naXQgYS90
ZXN0L2xpc3AvdXJsL3VybC11dGlsLXRlc3RzLmVsIGIvdGVzdC9saXNwL3VybC91cmwtdXRpbC10
ZXN0cy5lbAppbmRleCA4NDM1YTJlOWUyYy4uODRiYjZlZmM1YTAgMTAwNjQ0Ci0tLSBhL3Rlc3Qv
bGlzcC91cmwvdXJsLXV0aWwtdGVzdHMuZWwKKysrIGIvdGVzdC9saXNwL3VybC91cmwtdXRpbC10
ZXN0cy5lbApAQCAtODIsNiArODIsNzcgQEAgdXJsLWRvbWFpbi10ZXN0cwogICAoc2hvdWxkIChl
cXVhbCAodXJsLWRvbWFpbiAodXJsLWdlbmVyaWMtcGFyc2UtdXJsICJodHRwOi8vMTkyLjE2OC4w
LjEiKSkKICAgICAgICAgICAgICAgICAgbmlsKSkpCgorKGVydC1kZWZ0ZXN0IHVybC10by1maWxl
LXBhdGgtdGVzdHMgKCkKKyAgOzsgQmFzaWMgdGVzdHMKKyAgKGxldCAoKHRlc3RzCisgICAgICAg
ICAnKAorICAgICAgICAgICA7OyBXaW5kb3dzIGRyaXZlIGxldHRlcnMgYXJlIHNwZWNpYWwgY2Fz
ZWQKKyAgICAgICAgICAgKCJmaWxlOi8vL1g6L2JsYWgudHh0IiAiWDovYmxhaC50eHQiKQorICAg
ICAgICAgICAoImZpbGU6Ly8vYzpcXGJsYWgiICJjOlxcYmxhaCIpCisgICAgICAgICAgICgiZmls
ZTovLy9DOi9Vc2Vycy9mb28iICJDOi9Vc2Vycy9mb28iKQorCisgICAgICAgICAgIDs7IDQtc2xh
c2ggVU5DCisgICAgICAgICAgICgiZmlsZTovLy8vaG9zdC9wYXRoIiAiLy9ob3N0L3BhdGgiKQor
CisgICAgICAgICAgIDs7IFBlcmNlbnQtZW5jb2RlZCBvY3RldHMgYXJlIHV0Zi04CisgICAgICAg
ICAgICgiZmlsZTovLy8lYzMlYTVrZSIgIi/DpWtlIikKKyAgICAgICAgICAgKCJmaWxlOi8vLyVD
MyVhNG5nbGEiICIvw6RuZ2xhIikKKyAgICAgICAgICAgKCJmaWxlOi8vLyVDMyVCNnJqYW4iICIv
w7ZyamFuIikKKyAgICAgICAgICAgKCJmaWxlOi8vLyUyRiUyRiUyRmhtLnR4dCIgIi8vLy9obS50
eHQiKQorCisgICAgICAgICAgIDs7IE1hbGZvcm1lZCBVUkxzIHRoYXQgbGVnYWN5IHByb2dyYW1z
IG1heSBwcm9kdWNlCisgICAgICAgICAgICgiZmlsZTpobSIgImhtIikKKyAgICAgICAgICAgKCJm
aWxlOi9obSIgIi9obSIpCisKKyAgICAgICAgICAgOzsgRW1wdHkgcGF0aAorICAgICAgICAgICAo
ImZpbGU6Ly9ob3N0IiAiIikKKworICAgICAgICAgICA7OyBPdGhlciBzY2hlbWVzIGFyZSBub3Qg
cGFyc2VkCisgICAgICAgICAgICgiZnB0Oi8vaG9zdC90ZXN0LnR4dCIgImZwdDovL2hvc3QvdGVz
dC50eHQiKQorCisgICAgICAgICAgIDs7IE5vdCBVUklzCisgICAgICAgICAgICgiXFxcXHJlbVxc
c2hyXFxkaXJcXGZpbGUudHh0IiAiXFxcXHJlbVxcc2hyXFxkaXJcXGZpbGUudHh0IikKKyAgICAg
ICAgICAgKCIvbm9ybWFsL3BhdGglQjZyamFuIiAiL25vcm1hbC9wYXRoJUI2cmphbiIpCisgICAg
ICAgICAgICkpKQorICAgIChjbC1sb29wIGZvciAoaW4gb3V0KSBpbiB0ZXN0cworICAgICAgICAg
ICAgIGRvIChzaG91bGQgKGVxdWFsICh1cmwtdG8tZmlsZS1wYXRoIGluKSBvdXQpKSkpCisgIDs7
IEJyaW5nIHlvdXIgb3duIGVuY29kaW5nCisgIChsZXQgKCh0ZXN0cworICAgICAgICAgJygKKyAg
ICAgICAgICAgKCJmaWxlOi8vLyVDMyVCNnJqYW4iICIvJUMzJUI2cmphbiIgbmlsKQorICAgICAg
ICAgICAoImZpbGU6Ly8vJUMzJUI2cmphbiIgIi/DtnJqYW4iIHV0Zi04KQorICAgICAgICAgICAo
ImZpbGU6JTEyJTM0JTU2IiAiJTEyJTM0JTU2IiBuaWwpCisgICAgICAgICAgIDsgRG9uJ3QgZG8g
dGhpcworICAgICAgICAgICAoImZpbGU6Ly8vJUMzJUI2cmphbiIgIi/Dg8K2cmphbiIgbGF0aW4t
MSkKKyAgICAgICAgICAgKSkpCisgICAgKGNsLWxvb3AgZm9yIChpbiBvdXQgZGVjb2RlLWFzKSBp
biB0ZXN0cworICAgICAgICAgICAgIGRvIChzaG91bGQgKGVxdWFsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgKHVybC10by1maWxlLXBhdGggaW4gOmRlY29kZS1hcyBkZWNvZGUtYXMpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgb3V0KSkpKQorCisgIDs7IEhvc3QgaW5jbHVzaW9uIGZvciBX
aW5kb3dzIFVOQyBwYXRocworICAobGV0ICgodGVzdHMKKyAgICAgICAgICcoCisgICAgICAgICAg
ICgiZmlsZTovL3RoZWhvc3QvcDEvcDIiICIvL3RoZWhvc3QvcDEvcDIiKQorICAgICAgICAgICAo
ImZpbGU6Ly8vL2hvc3QvcGF0aCIgIi8vaG9zdC9wYXRoIikKKyAgICAgICAgICAgKCJmaWxlOi8v
L2MxL2MyL2MzIiAiL2MxL2MyL2MzIikKKyAgICAgICAgICAgKSkpCisgICAgKGNsLWxvb3AgZm9y
IChpbiBvdXQgZGVjb2RlLWFzKSBpbiB0ZXN0cworICAgICAgICAgICAgIGRvIChzaG91bGQgKGVx
dWFsCisgICAgICAgICAgICAgICAgICAgICAgICAgKHVybC10by1maWxlLXBhdGggaW4gOmluY2x1
ZGUtaG9zdCB0KQorICAgICAgICAgICAgICAgICAgICAgICAgIG91dCkpKSkKKworICA7OyBSZXR1
cm4gbmlsIGlmIHBhdGggZG9lc24ndCBleGlzdAorICAobGV0ICgodGVzdHMKKyAgICAgICAgICco
CisgICAgICAgICAgICgiL2RvZXMvbm90L2V4aXN0IiBuaWwpCisgICAgICAgICAgICgiZmlsZTov
Ly9ldGMvbm90aGluZy9oZXJlIiBuaWwpCisgICAgICAgICAgICkpKQorICAgIChjbC1sb29wIGZv
ciAoaW4gb3V0KSBpbiB0ZXN0cworICAgICAgICAgICAgIGRvIChzaG91bGQgKGVxdWFsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgKHVybC10by1maWxlLXBhdGggaW4gOm11c3QtYmUtcmVhZGFi
bGUgdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICBvdXQpKSkpKQorCiAocHJvdmlkZSAndXJs
LXV0aWwtdGVzdHMpCgogOzs7IHVybC11dGlsLXRlc3RzLmVsIGVuZHMgaGVyZQotLQoyLjU1LjAK
--000000000000b9ee970659e72963
Content-Type: text/x-patch; charset="US-ASCII"; 
	name="0002-Outsource-file-URL-parsing-to-url-to-file-path-it-ne.patch"
Content-Disposition: attachment; 
	filename="0002-Outsource-file-URL-parsing-to-url-to-file-path-it-ne.patch"
Content-Transfer-Encoding: base64
Content-ID: <f_mt99vl1n1>
X-Attachment-Id: f_mt99vl1n1

RnJvbSA1ZmU3MDQ4NmYyODQzZDEyMWIyZjQwZWEwNTEzZWZkNzExODJhZGM5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Qmo9QzM9QjZybj0yMExpbmRxdmlzdD89IDxi
am91cm5lQGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyNSBBdWcgMjAyNiAyMjoyNTozOSArMDIwMApT
dWJqZWN0OiBbUEFUQ0ggMi8yXSBPdXRzb3VyY2UgZmlsZSBVUkwgcGFyc2luZyB0byB1cmwtdG8t
ZmlsZS1wYXRoIC0tIGl0CiBuZWVkcyBjYWxsc2l0ZXMKCiogbGlzcC9kbmQuZWwgKGRuZC1nZXQt
bG9jYWwtZmlsZS1uYW1lKTogdXNlIHVybC10by1maWxlLXBhdGgKKiBsaXNwL2VnbG90LmVsIChl
Z2xvdC1wYXRoLXRvLXVyaSk6IGRpdG8KLS0tCiBsaXNwL2RuZC5lbCAgICAgICAgICAgICB8IDU3
ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBsaXNwL3Byb2dtb2Rl
cy9lZ2xvdC5lbCB8IDQyICsrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBj
aGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCA2NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9s
aXNwL2RuZC5lbCBiL2xpc3AvZG5kLmVsCmluZGV4IGVjZDM3YWRjMDU0Li5kZTc4ZGU0NTg0YyAx
MDA2NDQKLS0tIGEvbGlzcC9kbmQuZWwKKysrIGIvbGlzcC9kbmQuZWwKQEAgLTMwMSw1MiArMzAx
LDM1IEBAIGRuZC11bmVzY2FwZS1maWxlLXVyaXMKIEJpbmQgdGhpcyB0byBuaWwgd2hlbiBwcm92
aWRpbmcgYGRuZC1nZXQtbG9jYWwtZmlsZS1uYW1lJyB3aXRoIGEKIGZpbGUgbmFtZSB0aGF0IG1h
eSBpbmNvcnBvcmF0ZSBVUkkgZXNjYXBlIHNlcXVlbmNlcy4iKQogCi0oZGVmdW4gZG5kLS11bmVz
Y2FwZS11cmkgKHVyaSkKLSAgOzsgTWVyZ2Ugd2l0aCBjb3JyZXNwb25kaW5nIGNvZGUgaW4gVVJM
IGxpYnJhcnkuCi0gIChyZXBsYWNlLXJlZ2V4cC1pbi1zdHJpbmcKLSAgICIlW1s6eGRpZ2l0Ol1d
W1s6eGRpZ2l0Ol1dIgotICAgKGxhbWJkYSAoYXJnKQotICAgICAobGV0ICgoc3RyIChtYWtlLXN0
cmluZyAxIDApKSkKLSAgICAgICAoYXNldCBzdHIgMCAoc3RyaW5nLXRvLW51bWJlciAoc3Vic3Ry
aW5nIGFyZyAxKSAxNikpCi0gICAgICAgc3RyKSkKLSAgIHVyaSB0IHQpKQotCiA7OyBodHRwczov
L2xpc3RzLmdudS5vcmcvci9lbWFjcy1kZXZlbC8yMDA2LTA1L21zZzAxMDYwLmh0bWwKIChkZWZ1
biBkbmQtZ2V0LWxvY2FsLWZpbGUtbmFtZSAodXJpICZvcHRpb25hbCBtdXN0LWV4aXN0KQogICAi
UmV0dXJuIGZpbGUgbmFtZSBjb252ZXJ0ZWQgZnJvbSBmaWxlOi8vLyBvciBmaWxlOiBzeW50YXgu
Ci1VUkkgaXMgdGhlIHVyaSBmb3IgdGhlIGZpbGUuICBJZiBNVVNULUVYSVNUIGlzIGdpdmVuIGFu
ZCBub24tbmlsLAotb25seSByZXR1cm4gbm9uLW5pbCBpZiB0aGUgZmlsZSBleGlzdHMuCi1SZXR1
cm4gbmlsIGlmIFVSSSBpcyBub3QgYSBsb2NhbCBmaWxlLiIKLSAgKGxldCAoKGYgKGNvbmQgKChz
dHJpbmctbWF0Y2ggIl5maWxlOi8vLyIgdXJpKQk7IFhETkQgZm9ybWF0LgotCQkgIChzdWJzdHJp
bmcgdXJpICgxLSAobWF0Y2gtZW5kIDApKSkpCi0JCSAoKHN0cmluZy1tYXRjaCAiXmZpbGU6IiB1
cmkpCQk7IE9sZCBLREUsIE1vdGlmLCBTdW4KLQkJICAoc3Vic3RyaW5nIHVyaSAobWF0Y2gtZW5k
IDApKSkpKQotCShjb2RpbmcgKGlmIChlcXVhbCBzeXN0ZW0tdHlwZSAnd2luZG93cy1udCkKLQkJ
ICAgIDs7IFczMiBwcmV0ZW5kcyB0aGF0IGZpbGUgbmFtZXMgYXJlIFVURi04IGVuY29kZWQuCi0J
CSAgICAndXRmLTgKLQkJICAob3IgZmlsZS1uYW1lLWNvZGluZy1zeXN0ZW0KLQkJICAgICAgZGVm
YXVsdC1maWxlLW5hbWUtY29kaW5nLXN5c3RlbSkpKSkKLSAgICAoYW5kIGYgKHNldHEgZiAoZGVj
b2RlLWNvZGluZy1zdHJpbmcKLSAgICAgICAgICAgICAgICAgICAgKGlmIGRuZC11bmVzY2FwZS1m
aWxlLXVyaXMKLSAgICAgICAgICAgICAgICAgICAgICAgIChkbmQtLXVuZXNjYXBlLXVyaSBmKSBm
KQotICAgICAgICAgICAgICAgICAgICBjb2RpbmcpKSkKLSAgICAod2hlbiAoYW5kIGYgbXVzdC1l
eGlzdCAobm90IChmaWxlLXJlYWRhYmxlLXAgZikpKQotICAgICAgKHNldHEgZiBuaWwpKQotICAg
IGYpKQorVVJJIGlzIHRoZSB1cmkgZm9yIHRoZSBmaWxlLiAgSWYgTVVTVC1FWElTVCBpcyBub24t
bmlsLCBvbmx5IHJldHVybgorbm9uLW5pbCBpZiB0aGUgZmlsZSBleGlzdHMuICBSZXR1cm4gbmls
IGlmIFVSSSBpcyBub3QgYSBsb2NhbCBmaWxlLiIKKworICAobGV0ICgoZGVjb2RlLWFzICh3aGVu
IGRuZC11bmVzY2FwZS1maWxlLXVyaXMKKyAgICAgICAgICAgICAgICAgICAgIDs7IFczMiBwcmV0
ZW5kcyB0aGF0IGZpbGUgbmFtZXMgYXJlIFVURi04IGVuY29kZWQuCisgICAgICAgICAgICAgICAg
ICAgICAoaWYgKGVxdWFsIHN5c3RlbS10eXBlICd3aW5kb3dzLW50KQorICAgICAgICAgICAgICAg
ICAgICAgICAgICd1dGYtOAorICAgICAgICAgICAgICAgICAgICAgICAob3IgZmlsZS1uYW1lLWNv
ZGluZy1zeXN0ZW0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQtZmlsZS1uYW1l
LWNvZGluZy1zeXN0ZW0pKSkpKQorICAgICh1cmwtdG8tZmlsZS1wYXRoIHVyaQorICAgICAgICAg
ICAgICAgICAgICAgIDpkZWNvZGUtYXMgZGVjb2RlLWFzCisgICAgICAgICAgICAgICAgICAgICAg
OmluY2x1ZGUtaG9zdCB0CisgICAgICAgICAgICAgICAgICAgICAgOm11c3QtYmUtcmVhZGFibGUg
bXVzdC1leGlzdCkpKQogCiAoZGVmdW4gZG5kLW9wZW4tbG9jYWwtZmlsZSAodXJpIF9hY3Rpb24p
CiAgICJPcGVuIGEgbG9jYWwgZmlsZS4KIFRoZSBmaWxlIGlzIG9wZW5lZCBpbiB0aGUgY3VycmVu
dCB3aW5kb3csIG9yIGEgbmV3IHdpbmRvdyBpZgotYGRuZC1vcGVuLWZpbGUtb3RoZXItd2luZG93
JyBpcyBzZXQuICBVUkkgaXMgdGhlIHVybCBmb3IgdGhlIGZpbGUsCi1hbmQgbXVzdCBoYXZlIHRo
ZSBmb3JtYXQgZmlsZTpmaWxlLW5hbWUgb3IgZmlsZTovLy9maWxlLW5hbWUuCi1UaGUgbGFzdCAv
IGluIGZpbGU6Ly8vIGlzIHBhcnQgb2YgdGhlIGZpbGUgbmFtZS4gIElmIHRoZSBzeXN0ZW0KLW5h
dGl2ZWx5IHN1cHBvcnRzIHVuYyBmaWxlIG5hbWVzLCB0aGVuIHJlbW90ZSB1cmxzIG9mIHRoZSBm
b3JtCi1maWxlOi8vc2VydmVyLW5hbWUvZmlsZS1uYW1lIHdpbGwgYWxzbyBiZSBoYW5kbGVkIGJ5
IHRoaXMgZnVuY3Rpb24uCi1BbiBhbHRlcm5hdGl2ZSBmb3Igc3lzdGVtcyB0aGF0IGRvIG5vdCBz
dXBwb3J0IHVuYyBmaWxlIG5hbWVzIGlzCi1gZG5kLW9wZW4tcmVtb3RlLXVybCcuICBBQ1RJT04g
aXMgaWdub3JlZC4iCitgZG5kLW9wZW4tZmlsZS1vdGhlci13aW5kb3cnIGlzIHNldC4gIFVSSSBp
cyB0aGUgdXJsIGZvciB0aGUgZmlsZSwgYW5kCittdXN0IGhhdmUgdGhlIGZvcm1hdCBmaWxlOmZp
bGUtbmFtZSBvciBmaWxlOi8vL2ZpbGUtbmFtZS4gIFRoZSBsYXN0IC8gaW4KK2ZpbGU6Ly8vIGlz
IHBhcnQgb2YgdGhlIGZpbGUgbmFtZS4gIFJlbW90ZSB1cmxzIG9mIHRoZSBmb3JtCitmaWxlOi8v
c2VydmVyLW5hbWUvZmlsZS1uYW1lIGFyZSBoYW5kbGVkIGJ5IHRoaXMgZnVuY3Rpb24gaWYKK3Ro
ZSBzeXN0ZW0gc3VwcG9ydHMgdGhlbS4gIEFuIGFsdGVybmF0aXZlIGZvciBzeXN0ZW1zIHRoYXQg
ZG8gbm90CitzdXBwb3J0IHVuYyBmaWxlIG5hbWVzIGlzIGBkbmQtb3Blbi1yZW1vdGUtdXJsJy4g
IEFDVElPTiBpcyBpZ25vcmVkLiIKIAogICAobGV0KiAoKGYgKGRuZC1nZXQtbG9jYWwtZmlsZS1u
YW1lIHVyaSB0KSkpCi0gICAgKGlmIChhbmQgZiAoZmlsZS1yZWFkYWJsZS1wIGYpKQorICAgIChp
ZiBmCiAJKHByb2duCiAJICAoaWYgZG5kLW9wZW4tZmlsZS1vdGhlci13aW5kb3cKIAkgICAgICAo
ZmluZC1maWxlLW90aGVyLXdpbmRvdyBmKQpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvZWds
b3QuZWwgYi9saXNwL3Byb2dtb2Rlcy9lZ2xvdC5lbAppbmRleCBmMmE5ZTM2OTg5Yy4uOTFhMDNh
MGVmMmIgMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL2VnbG90LmVsCisrKyBiL2xpc3AvcHJv
Z21vZGVzL2VnbG90LmVsCkBAIC0xMjU0LDM5ICsxMjU0LDI3IEBAIGVnbG90LWxzcC1zZXJ2ZXIK
ICAgOmRvY3VtZW50YXRpb24KICAgIlJlcHJlc2VudHMgYSBzZXJ2ZXIuIFdyYXBzIGEgcHJvY2Vz
cyBmb3IgTFNQIGNvbW11bmljYXRpb24uIikKIAotKGRlY2xhcmUtZnVuY3Rpb24gdzMyLWxvbmct
ZmlsZS1uYW1lICJ3MzJwcm9jLmMiIChmbikpCiAoZGVmdW4gZWdsb3QtdXJpLXRvLXBhdGggKHVy
aSkKICAgIkNvbnZlcnQgVVJJIHRvIGZpbGUgcGF0aCwgaGVscGVkIGJ5IGBlZ2xvdC1jdXJyZW50
LXNlcnZlcicuIgogICAod2hlbiAoa2V5d29yZHAgdXJpKSAoc2V0cSB1cmkgKHN1YnN0cmluZyAo
c3ltYm9sLW5hbWUgdXJpKSAxKSkpCiAgIChsZXQqICgoc2VydmVyIChlZ2xvdC1jdXJyZW50LXNl
cnZlcikpCi0gICAgICAgICAocmVtb3RlLXByZWZpeCAoYW5kIHNlcnZlciAoZWdsb3QtLXRyYW1w
aXNoLXAgc2VydmVyKSkpCiAgICAgICAgICAocm9vdCAoYW5kIHNlcnZlciAocHJvamVjdC1yb290
IChlZ2xvdC0tcHJvamVjdCBzZXJ2ZXIpKSkpCisgICAgICAgICAocmVtb3RlLXByZWZpeCAoYW5k
IHNlcnZlciAoZWdsb3QtLXRyYW1waXNoLXAgc2VydmVyKSkpCiAgICAgICAgICAodHJ1ZXJvb3Qg
KGFuZCBzZXJ2ZXIgKGVnbG90LS10cnVlcm9vdCBzZXJ2ZXIpKSkKLSAgICAgICAgICh1cmwgKHVy
bC1nZW5lcmljLXBhcnNlLXVybCB1cmkpKSkKLSAgICA7OyBPbmx5IHBhcnNlIGZpbGU6Ly8gVVJJ
cywgbGVhdmUgb3RoZXIgVVJJIHVudG91Y2hlZCBhcwotICAgIDs7IGBmaWxlLW5hbWUtaGFuZGxl
ci1hbGlzdCcgc2hvdWxkIGtub3cgaG93IHRvIGhhbmRsZSB0aGVtCi0gICAgOzsgKGJ1ZyM1ODc5
MCkuCi0gICAgKGlmIChzdHJpbmc9ICJmaWxlIiAodXJsLXR5cGUgdXJsKSkKLSAgICAgICAgKGxl
dCogKCh1bmhleGVkIChkZWNvZGUtY29kaW5nLXN0cmluZwotICAgICAgICAgICAgICAgICAgICAg
ICAgICh1cmwtdW5oZXgtc3RyaW5nICh1cmwtZmlsZW5hbWUgdXJsKSkgJ3V0Zi04LXVuaXgpKQot
ICAgICAgICAgICAgICAgOzsgUmVtb3ZlIHRoZSBsZWFkaW5nICIvIiBmb3IgbG9jYWwgTVMgV2lu
ZG93cy1zdHlsZSBwYXRocy4KLSAgICAgICAgICAgICAgIChub3JtIChpZiAoYW5kIChub3QgcmVt
b3RlLXByZWZpeCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlcSBzeXN0
ZW0tdHlwZSAnd2luZG93cy1udCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IChjbC1wbHVzcCAobGVuZ3RoIHVuaGV4ZWQpKQotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKGVxIChhcmVmIHVuaGV4ZWQgMCkgPy8pKQotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICh3MzItbG9uZy1maWxlLW5hbWUgKHN1YnN0cmluZyB1bmhleGVkIDEpKQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1bmhleGVkKSkKLSAgICAgICAgICAgICAgIDs7IEV2
ZW4gdGhvdWdoIHdlIGV4Y2hhbmdlIHRydWVuYW1lIFVSSXMgd2l0aCB0aGUgc2VydmVyLAotICAg
ICAgICAgICAgICAgOzsgZW5zdXJlIHBhdGhzIGV4Y2hhbmdlZCB3aXRoIEVtYWNzIGZhY2lsaXRp
ZXMgc3VjaCBhcwotICAgICAgICAgICAgICAgOzsgWHJlZiBjb250YWlucyB0aGUgZmFtaWxpYXIg
cm9vdCBhcyBmb3VuZCBieQotICAgICAgICAgICAgICAgOzsgJ3Byb2plY3QtY3VycmVudCcsIG5v
dCBhIHBvdGVudGlhbGx5IG9ic2N1cmUKLSAgICAgICAgICAgICAgIDs7IGNhbm9uaWNhbGl6ZWQg
dHJ1ZW5hbWUuCi0gICAgICAgICAgICAgICAobm9ybQotICAgICAgICAgICAgICAgIChpZiAoYW5k
IHRydWVyb290IChzdHJpbmctcHJlZml4LXAgdHJ1ZXJvb3Qgbm9ybSkpCi0gICAgICAgICAgICAg
ICAgICAgIChleHBhbmQtZmlsZS1uYW1lIChzdWJzdHJpbmcgbm9ybSAobGVuZ3RoIHRydWVyb290
KSkgcm9vdCkKLSAgICAgICAgICAgICAgICAgIG5vcm0pKSkKLSAgICAgICAgICAoY29uY2F0IHJl
bW90ZS1wcmVmaXggbm9ybSkpCi0gICAgICB1cmkpKSkKKyAgICAgICAgIDs7IE9ubHkgcGFyc2Vz
IGZpbGU6Ly8gVVJJcywgbGVhdmVzIG90aGVyIFVSSSB1bnRvdWNoZWQgYXMKKyAgICAgICAgIDs7
IGBmaWxlLW5hbWUtaGFuZGxlci1hbGlzdCcga25vd3MgaG93IHRvIGhhbmRsZSB0aGVtCisgICAg
ICAgICA7OyAoYnVnIzU4NzkwKS4KKyAgICAgICAgIChwYXRoICh1cmwtdG8tZmlsZS1wYXRoIHVy
aSkpCisgICAgICAgICA7OyBFdmVuIHRob3VnaCB3ZSBleGNoYW5nZSB0cnVlbmFtZSBVUklzIHdp
dGggdGhlIHNlcnZlciwKKyAgICAgICAgIDs7IGVuc3VyZSBwYXRocyBleGNoYW5nZWQgd2l0aCBF
bWFjcyBmYWNpbGl0aWVzIHN1Y2ggYXMgWHJlZgorICAgICAgICAgOzsgY29udGFpbnMgdGhlIGZh
bWlsaWFyIHJvb3QgYXMgZm91bmQgYnkgJ3Byb2plY3QtY3VycmVudCcsCisgICAgICAgICA7OyBu
b3QgYSBwb3RlbnRpYWxseSBvYnNjdXJlIGNhbm9uaWNhbGl6ZWQgdHJ1ZW5hbWUuCisgICAgICAg
ICAobm9ybWVkLXBhdGggKGlmIChhbmQgdHJ1ZXJvb3QgKHN0cmluZy1wcmVmaXgtcCB0cnVlcm9v
dCBwYXRoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGV4cGFuZC1maWxlLW5hbWUKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIChzdWJzdHJpbmcgcGF0aCAobGVuZ3RoIHRydWVyb290
KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvb3QpCisgICAgICAgICAgICAgICAgICAg
ICAgICBwYXRoKSkpCisgICAgKGNvbmNhdCByZW1vdGUtcHJlZml4IG5vcm1lZC1wYXRoKSkpCiAK
IChjbC1kZWZ1biBlZ2xvdC1wYXRoLXRvLXVyaSAocGF0aCAma2V5IHRydWVuYW1lcCkKICAgIkNv
bnZlcnQgUEFUSCwgYSBmaWxlIG5hbWUsIHRvIExTUCBVUkkgc3RyaW5nIGFuZCByZXR1cm4gaXQu
Ci0tIAoyLjU1LjAKCg==
--000000000000b9ee970659e72963--




Acknowledgement sent to Björn A. Lindqvist <bjourne@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#81709; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Wed, 26 Aug 2026 11:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.