Subject: bug#16048: 24.3.50; String compare surprise

From: Eli Zaretskii <[email-masked]>
Date: Thu, 05 Dec 2013 19:38:51 +0200

> From: Michael Albinus <[email-masked]>
> Cc: Eli Zaretskii <[email-masked]>,  [email-masked]
> Date: Thu, 05 Dec 2013 08:51:41 +0100
> 
> > IIUC this is dbus code, so it likely handles marshalled data, which
> > often has to manage bytes rather than chars, so a unibyte string might
> > be the right thing.
> 
> Indeed. My ert test case is
> 
>   (should
>    (string-equal
>     (dbus-unescape-from-identifier
>      (dbus-escape-as-identifier "0123abc_xyz\x01\xff"))
>     "0123abc_xyz\x01\xff"))

FWIW, I don't see anything in this snippet that requires unibyte
strings.

Just to make it clear: Emacs is perfectly capable of holding raw bytes
in multibyte strings.  That's why we have the eight-bit charset.