GNU bug report logs - #48902
28.0.50; Directory names containing apostrophes and backticks cause problems

Previous Next

Package: emacs;

Reported by: Rudolf Adamkovič <salutis <at> me.com>

Date: Mon, 7 Jun 2021 14:05:02 UTC

Severity: normal

Found in version 28.0.50

Fixed in version 28.1

Done: Alan Third <alan <at> idiocy.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: naofumi <at> yasufuku.dev <naofumi <at> yasufuku.dev>
To: "Eli Zaretskii" <eliz <at> gnu.org>
Cc: 48902 <at> debbugs.gnu.org, Mattias Engdegård <mattiase <at> acm.org>, larsi <at> gnus.org, salutis <at> me.com, alan <at> idiocy.org
Subject: bug#48902: 28.0.50; Directory names containing apostrophes and backticks cause problems
Date: Tue, 08 Jun 2021 21:13:13 +0200
[Message part 1 (text/plain, inline)]
On Tuesday, June 08, 2021 20:18 CEST, Eli Zaretskii <eliz <at> gnu.org> wrote:

> > From: Mattias Engdegård <mattiase <at> acm.org>
> > Date: Tue, 8 Jun 2021 19:45:22 +0200
> > Cc: 48902 <at> debbugs.gnu.org, Alan Third <alan <at> idiocy.org>,
> >  Rudolf Adamkovič <salutis <at> me.com>, naofumi <at> yasufuku.dev
> >
> > The quick fix of reverting to stringWithUTF8String: will work, but the real problem is that we have no control of the encodedness of lisp strings being passed around.
>
> The usual technique in these cases is to keep Lisp strings unencoded,
> encode them when passing to the low-level C functions, and pass to
> those functions only the pointer to the string's data.
>
> In those rare cases when you really need to pass a Lisp string that is
> an encoded file name, call the argument "encoded_file" or somesuch.
> But these cases should be rare exceptions.
>
>

I agree that [NSString stringWithLispString:] is working as expected,
and it is not the real problem.

For example, another patch using STRING_SET_MULTIBYTE() is here.
This looks still just a quick fix and bit weired, though..

attachments:
0001-Fix-to-show-images-with-non-ascii-filename-STRING_SET_MULTIBYTE.patch
image-non-ascii-filename-STRING_SET_MULTIBYTE-macos.png
image-non-ascii-filename-STRING_SET_MULTIBYTE-linux.png

On the other hand, I cannot find out that non-UTF-8 filename coding is
really needed on macOS.  It might be over-engineered thing, and just an overhead.

Regards,
--Naofumi
[image-non-ascii-filename-STRING_SET_MULTIBYTE-macos.png (image/png, inline)]
[0001-Fix-to-show-images-with-non-ascii-filename-STRING_SET_MULTIBYTE.patch (application/octet-stream, attachment)]
[image-non-ascii-filename-STRING_SET_MULTIBYTE-linux.png (image/png, inline)]

This bug report was last modified 4 years and 59 days ago.

Previous Next


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