[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS
From: |
Mattias Engdegård |
Subject: |
bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS |
Date: |
Mon, 17 Aug 2020 16:11:52 +0200 |
Setting a frame title that contains non-Unicode characters causes a crash in
the NS backend. (Other platforms may or may not deal with it appropriately --
if you have the opportunity to test, please report.)
Since the title is typically derived from the buffer name, this is easily
reproduced by
(rename-buffer "n\351")
The crash occurs in ns_set_name_internal:
encoded_name = ENCODE_UTF_8 (name);
Here encoded_name is still "n\351" (a 2 byte unibyte string), because the \351
couldn't be encoded.
str = [NSString stringWithUTF8String: SSDATA (encoded_name)];
Now str is nil since "n\351" isn't valid UTF-8.
[[view window] setTitle: str];
Here we get an NS crash because nil isn't a valid setTitle: argument.
Proposed patch attached. I didn't find any obvious way to encode an Emacs
string into valid UTF-8 (with bad parts replaced) so a new function was
written. The corresponding Lisp function was marked internal because it's only
there for test purposes, but it could of course be promoted to non-internal if
someone wants it.
0001-Fix-NS-crash-on-invalid-frame-title-string.patch
Description: Binary data
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS,
Mattias Engdegård <=
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Andrii Kolomoiets, 2020/08/17
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Eli Zaretskii, 2020/08/17
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Mattias Engdegård, 2020/08/17
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Eli Zaretskii, 2020/08/17
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Mattias Engdegård, 2020/08/17
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Alan Third, 2020/08/17
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Mattias Engdegård, 2020/08/18
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Alan Third, 2020/08/18
- bug#42904: [PATCH] Non-Unicode frame title crashes Emacs on macOS, Mattias Engdegård, 2020/08/18