Mercurial > emacs
diff src/lisp.h @ 83632:cc587bfd19ca
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 781-792)
- Update from CVS
- Merge from gnus--rel--5.10
- Merge from emacs--rel--22
* emacs--rel--22 (patch 33-41)
* gnus--rel--5.10 (patch 226-228)
- Update from CVS
Revision: emacs@sv.gnu.org/emacs--multi-tty--0--patch-21
author | Miles Bader <miles@gnu.org> |
---|---|
date | Mon, 11 Jun 2007 01:00:07 +0000 |
parents | 0a3247aa24a4 5e310b8be81d |
children | 0ece58f6e0aa |
line wrap: on
line diff
--- a/src/lisp.h Mon Jun 04 05:58:18 2007 +0000 +++ b/src/lisp.h Mon Jun 11 01:00:07 2007 +0000 @@ -701,7 +701,10 @@ #endif /* not GC_CHECK_STRING_BYTES */ /* Mark STR as a unibyte string. */ -#define STRING_SET_UNIBYTE(STR) (XSTRING (STR)->size_byte = -1) +#define STRING_SET_UNIBYTE(STR) \ + do { if (EQ (STR, empty_multibyte_string)) \ + (STR) = empty_unibyte_string; \ + else XSTRING (STR)->size_byte = -1; } while (0) /* Get text properties. */ #define STRING_INTERVALS(STR) (XSTRING (STR)->intervals + 0) @@ -3065,7 +3068,8 @@ /* defined in emacs.c */ extern Lisp_Object decode_env_path P_ ((char *, char *)); extern Lisp_Object Vinvocation_name, Vinvocation_directory; -extern Lisp_Object Vinstallation_directory, empty_string; +extern Lisp_Object Vinstallation_directory; +extern Lisp_Object empty_unibyte_string, empty_multibyte_string; EXFUN (Fkill_emacs, 1); #if HAVE_SETLOCALE void fixup_locale P_ ((void));