• Paul Eggert's avatar
    New C macro AUTO_STRING_WITH_LEN · 17cb263a
    Paul Eggert authored
    Put a bit less pressure on the garbage collector by defining a
    macro that is like AUTO_STRING but also allows null bytes in strings,
    and by extending AUTO_STRING to work with any unibyte string.
    * src/alloc.c (verify_ascii): Remove; all uses removed.
    AUTO_STRING can now be used on non-ASCII unibyte strings.
    * src/lisp.h (AUTO_STRING): Now allows non-ASCII unibyte strings.
    (AUTO_STRING_WITH_LEN): New macro.
    * src/coding.c (from_unicode_buffer):
    * src/editfns.c (format_time_string):
    * src/emacs-module.c (module_make_string, module_format_fun_env):
    * src/fileio.c (Fexpand_file_name):
    * src/font.c (font_parse_family_registry):
    * src/ftfont.c (ftfont_get_charset):
    * src/keymap.c (silly_event_symbol_error):
    * src/menu.c (single_menu_item):
    * src/sysdep.c (system_process_attributes):
    Use AUTO_STRING_WITH_LEN if possible.
    * src/emacs-module.c (module_make_function):
    * src/fileio.c (report_file_errno, report_file_notify_error):
    * src/fns.c (Flocale_info):
    * src/sysdep.c (system_process_attributes):
    Use AUTO_STRING if possible.  This is doable more often now
    that AUTO_STRING works on any unibyte string.
keymap.c 110 KB