1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-29 07:58:28 +00:00

(init_strings): Initialize canonical empty strings.

(make_uninit_string, make_uninit_multibyte_string): Return appropriate
canonical empty string when the requested size is 0.
This commit is contained in:
Juanma Barranquero 2007-06-08 19:59:46 +00:00
parent 7e9fa161dc
commit 4d774b0fe6

View File

@ -1756,6 +1756,8 @@ init_strings ()
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);
}
@ -2479,6 +2481,9 @@ make_uninit_string (length)
int length;
{
Lisp_Object val;
if (!length)
return empty_unibyte_string;
val = make_uninit_multibyte_string (length, length);
STRING_SET_UNIBYTE (val);
return val;
@ -2497,6 +2502,8 @@ make_uninit_multibyte_string (nchars, nbytes)
if (nchars < 0)
abort ();
if (!nbytes)
return empty_multibyte_string;
s = allocate_string ();
allocate_string_data (s, nchars, nbytes);