Mercurial > emacs
diff src/alloc.c @ 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 | dc002877ce12 1842d7137ff2 |
| children | 0ece58f6e0aa |
line wrap: on
line diff
--- a/src/alloc.c Mon Jun 04 05:58:18 2007 +0000 +++ b/src/alloc.c Mon Jun 11 01:00:07 2007 +0000 @@ -1759,6 +1759,8 @@ string_blocks = NULL; n_string_blocks = 0; string_free_list = NULL; + empty_unibyte_string = make_pure_string ("", 0, 0, 0); + empty_multibyte_string = make_pure_string ("", 0, 0, 1); } @@ -2482,6 +2484,9 @@ int length; { Lisp_Object val; + + if (!length) + return empty_unibyte_string; val = make_uninit_multibyte_string (length, length); STRING_SET_UNIBYTE (val); return val; @@ -2500,6 +2505,8 @@ if (nchars < 0) abort (); + if (!nbytes) + return empty_multibyte_string; s = allocate_string (); allocate_string_data (s, nchars, nbytes);
