Mercurial > hg > xemacs-beta
comparison src/process.c @ 4952:19a72041c5ed
Mule-izing, various fixes related to char * arguments
-------------------- ChangeLog entries follow: --------------------
modules/ChangeLog addition:
2010-01-26 Ben Wing <ben@xemacs.org>
* postgresql/postgresql.c:
* postgresql/postgresql.c (CHECK_LIVE_CONNECTION):
* postgresql/postgresql.c (print_pgresult):
* postgresql/postgresql.c (Fpq_conn_defaults):
* postgresql/postgresql.c (Fpq_connectdb):
* postgresql/postgresql.c (Fpq_connect_start):
* postgresql/postgresql.c (Fpq_result_status):
* postgresql/postgresql.c (Fpq_res_status):
Mule-ize large parts of it.
2010-01-26 Ben Wing <ben@xemacs.org>
* ldap/eldap.c (print_ldap):
* ldap/eldap.c (allocate_ldap):
Use write_ascstring().
src/ChangeLog addition:
2010-01-26 Ben Wing <ben@xemacs.org>
* alloc.c:
* alloc.c (build_ascstring):
* alloc.c (build_msg_cistring):
* alloc.c (staticpro_1):
* alloc.c (staticpro_name):
* alloc.c (staticpro_nodump_1):
* alloc.c (staticpro_nodump_name):
* alloc.c (unstaticpro_nodump_1):
* alloc.c (mcpro_1):
* alloc.c (mcpro_name):
* alloc.c (object_memory_usage_stats):
* alloc.c (common_init_alloc_early):
* alloc.c (init_alloc_once_early):
* buffer.c (print_buffer):
* buffer.c (vars_of_buffer):
* buffer.c (common_init_complex_vars_of_buffer):
* buffer.c (init_initial_directory):
* bytecode.c (invalid_byte_code):
* bytecode.c (print_compiled_function):
* bytecode.c (mark_compiled_function):
* chartab.c (print_table_entry):
* chartab.c (print_char_table):
* config.h.in:
* console-gtk.c:
* console-gtk.c (gtk_device_to_console_connection):
* console-gtk.c (gtk_semi_canonicalize_console_connection):
* console-gtk.c (gtk_canonicalize_console_connection):
* console-gtk.c (gtk_semi_canonicalize_device_connection):
* console-gtk.c (gtk_canonicalize_device_connection):
* console-stream.c (stream_init_frame_1):
* console-stream.c (vars_of_console_stream):
* console-stream.c (init_console_stream):
* console-x.c (x_semi_canonicalize_console_connection):
* console-x.c (x_semi_canonicalize_device_connection):
* console-x.c (x_canonicalize_device_connection):
* console-x.h:
* data.c (eq_with_ebola_notice):
* data.c (Fsubr_interactive):
* data.c (Fnumber_to_string):
* data.c (digit_to_number):
* device-gtk.c (gtk_init_device):
* device-msw.c (print_devmode):
* device-x.c (x_event_name):
* dialog-msw.c (handle_directory_dialog_box):
* dialog-msw.c (handle_file_dialog_box):
* dialog-msw.c (vars_of_dialog_mswindows):
* doc.c (weird_doc):
* doc.c (Fsnarf_documentation):
* doc.c (vars_of_doc):
* dumper.c (pdump):
* dynarr.c:
* dynarr.c (Dynarr_realloc):
* editfns.c (Fuser_real_login_name):
* editfns.c (get_home_directory):
* elhash.c (print_hash_table_data):
* elhash.c (print_hash_table):
* emacs.c (main_1):
* emacs.c (vars_of_emacs):
* emodules.c:
* emodules.c (_emodules_list):
* emodules.c (Fload_module):
* emodules.c (Funload_module):
* emodules.c (Flist_modules):
* emodules.c (find_make_module):
* emodules.c (attempt_module_delete):
* emodules.c (emodules_load):
* emodules.c (emodules_doc_subr):
* emodules.c (emodules_doc_sym):
* emodules.c (syms_of_module):
* emodules.c (vars_of_module):
* emodules.h:
* eval.c (print_subr):
* eval.c (signal_call_debugger):
* eval.c (build_error_data):
* eval.c (signal_error):
* eval.c (maybe_signal_error):
* eval.c (signal_continuable_error):
* eval.c (maybe_signal_continuable_error):
* eval.c (signal_error_2):
* eval.c (maybe_signal_error_2):
* eval.c (signal_continuable_error_2):
* eval.c (maybe_signal_continuable_error_2):
* eval.c (signal_ferror):
* eval.c (maybe_signal_ferror):
* eval.c (signal_continuable_ferror):
* eval.c (maybe_signal_continuable_ferror):
* eval.c (signal_ferror_with_frob):
* eval.c (maybe_signal_ferror_with_frob):
* eval.c (signal_continuable_ferror_with_frob):
* eval.c (maybe_signal_continuable_ferror_with_frob):
* eval.c (syntax_error):
* eval.c (syntax_error_2):
* eval.c (maybe_syntax_error):
* eval.c (sferror):
* eval.c (sferror_2):
* eval.c (maybe_sferror):
* eval.c (invalid_argument):
* eval.c (invalid_argument_2):
* eval.c (maybe_invalid_argument):
* eval.c (invalid_constant):
* eval.c (invalid_constant_2):
* eval.c (maybe_invalid_constant):
* eval.c (invalid_operation):
* eval.c (invalid_operation_2):
* eval.c (maybe_invalid_operation):
* eval.c (invalid_change):
* eval.c (invalid_change_2):
* eval.c (maybe_invalid_change):
* eval.c (invalid_state):
* eval.c (invalid_state_2):
* eval.c (maybe_invalid_state):
* eval.c (wtaerror):
* eval.c (stack_overflow):
* eval.c (out_of_memory):
* eval.c (print_multiple_value):
* eval.c (issue_call_trapping_problems_warning):
* eval.c (backtrace_specials):
* eval.c (backtrace_unevalled_args):
* eval.c (Fbacktrace):
* eval.c (warn_when_safe):
* event-Xt.c (modwarn):
* event-Xt.c (modbarf):
* event-Xt.c (check_modifier):
* event-Xt.c (store_modifier):
* event-Xt.c (emacs_Xt_format_magic_event):
* event-Xt.c (describe_event):
* event-gtk.c (dragndrop_data_received):
* event-gtk.c (store_modifier):
* event-gtk.c (gtk_reset_modifier_mapping):
* event-msw.c (dde_eval_string):
* event-msw.c (Fdde_alloc_advise_item):
* event-msw.c (mswindows_dde_callback):
* event-msw.c (FROB):
* event-msw.c (emacs_mswindows_format_magic_event):
* event-stream.c (external_debugging_print_event):
* event-stream.c (execute_help_form):
* event-stream.c (vars_of_event_stream):
* events.c (print_event_1):
* events.c (print_event):
* events.c (event_equal):
* extents.c (print_extent_1):
* extents.c (print_extent):
* extents.c (vars_of_extents):
* faces.c (print_face):
* faces.c (complex_vars_of_faces):
* file-coding.c:
* file-coding.c (print_coding_system):
* file-coding.c (print_coding_system_in_print_method):
* file-coding.c (default_query_method):
* file-coding.c (find_coding_system):
* file-coding.c (make_coding_system_1):
* file-coding.c (chain_print):
* file-coding.c (undecided_print):
* file-coding.c (gzip_print):
* file-coding.c (vars_of_file_coding):
* file-coding.c (complex_vars_of_file_coding):
* fileio.c:
* fileio.c (report_file_type_error):
* fileio.c (report_error_with_errno):
* fileio.c (report_file_error):
* fileio.c (barf_or_query_if_file_exists):
* fileio.c (vars_of_fileio):
* floatfns.c (matherr):
* fns.c (print_bit_vector):
* fns.c (Fmapconcat):
* fns.c (add_suffix_to_symbol):
* fns.c (add_prefix_to_symbol):
* frame-gtk.c:
* frame-gtk.c (Fgtk_window_id):
* frame-x.c (def):
* frame-x.c (x_cde_transfer_callback):
* frame.c:
* frame.c (Fmake_frame):
* gc.c (show_gc_cursor_and_message):
* gc.c (vars_of_gc):
* glyphs-eimage.c (png_instantiate):
* glyphs-eimage.c (tiff_instantiate):
* glyphs-gtk.c (gtk_print_image_instance):
* glyphs-msw.c (mswindows_print_image_instance):
* glyphs-x.c (x_print_image_instance):
* glyphs-x.c (update_widget_face):
* glyphs.c (make_string_from_file):
* glyphs.c (print_image_instance):
* glyphs.c (signal_image_error):
* glyphs.c (signal_image_error_2):
* glyphs.c (signal_double_image_error):
* glyphs.c (signal_double_image_error_2):
* glyphs.c (xbm_mask_file_munging):
* glyphs.c (pixmap_to_lisp_data):
* glyphs.h:
* gui.c (gui_item_display_flush_left):
* hpplay.c (player_error_internal):
* hpplay.c (myHandler):
* intl-win32.c:
* intl-win32.c (langcode_to_lang):
* intl-win32.c (sublangcode_to_lang):
* intl-win32.c (Fmswindows_get_locale_info):
* intl-win32.c (lcid_to_locale_mule_or_no):
* intl-win32.c (mswindows_multibyte_to_unicode_print):
* intl-win32.c (complex_vars_of_intl_win32):
* keymap.c:
* keymap.c (print_keymap):
* keymap.c (ensure_meta_prefix_char_keymapp):
* keymap.c (Fkey_description):
* keymap.c (Ftext_char_description):
* lisp.h:
* lisp.h (struct):
* lisp.h (DECLARE_INLINE_HEADER):
* lread.c (Fload_internal):
* lread.c (locate_file):
* lread.c (read_escape):
* lread.c (read_raw_string):
* lread.c (read1):
* lread.c (read_list):
* lread.c (read_compiled_function):
* lread.c (init_lread):
* lrecord.h:
* marker.c (print_marker):
* marker.c (marker_equal):
* menubar-msw.c (displayable_menu_item):
* menubar-x.c (command_builder_operate_menu_accelerator):
* menubar.c (vars_of_menubar):
* minibuf.c (reinit_complex_vars_of_minibuf):
* minibuf.c (complex_vars_of_minibuf):
* mule-charset.c (Fmake_charset):
* mule-charset.c (complex_vars_of_mule_charset):
* mule-coding.c (iso2022_print):
* mule-coding.c (fixed_width_query):
* number.c (bignum_print):
* number.c (ratio_print):
* number.c (bigfloat_print):
* number.c (bigfloat_finalize):
* objects-msw.c:
* objects-msw.c (mswindows_color_to_string):
* objects-msw.c (mswindows_color_list):
* objects-tty.c:
* objects-tty.c (tty_font_list):
* objects-tty.c (tty_find_charset_font):
* objects-xlike-inc.c (xft_find_charset_font):
* objects-xlike-inc.c (endif):
* print.c:
* print.c (write_istring):
* print.c (write_ascstring):
* print.c (Fterpri):
* print.c (Fprint):
* print.c (print_error_message):
* print.c (print_vector_internal):
* print.c (print_cons):
* print.c (print_string):
* print.c (printing_unreadable_object):
* print.c (print_internal):
* print.c (print_float):
* print.c (print_symbol):
* process-nt.c (mswindows_report_winsock_error):
* process-nt.c (nt_canonicalize_host_name):
* process-unix.c (unix_canonicalize_host_name):
* process.c (print_process):
* process.c (report_process_error):
* process.c (report_network_error):
* process.c (make_process_internal):
* process.c (Fstart_process_internal):
* process.c (status_message):
* process.c (putenv_internal):
* process.c (vars_of_process):
* process.h:
* profile.c (vars_of_profile):
* rangetab.c (print_range_table):
* realpath.c (vars_of_realpath):
* redisplay.c (vars_of_redisplay):
* search.c (wordify):
* search.c (Freplace_match):
* sheap.c (sheap_adjust_h):
* sound.c (report_sound_error):
* sound.c (Fplay_sound_file):
* specifier.c (print_specifier):
* symbols.c (Fsubr_name):
* symbols.c (do_symval_forwarding):
* symbols.c (set_default_buffer_slot_variable):
* symbols.c (set_default_console_slot_variable):
* symbols.c (store_symval_forwarding):
* symbols.c (default_value):
* symbols.c (defsymbol_massage_name_1):
* symbols.c (defsymbol_massage_name_nodump):
* symbols.c (defsymbol_massage_name):
* symbols.c (defsymbol_massage_multiword_predicate_nodump):
* symbols.c (defsymbol_massage_multiword_predicate):
* symbols.c (defsymbol_nodump):
* symbols.c (defsymbol):
* symbols.c (defkeyword):
* symbols.c (defkeyword_massage_name):
* symbols.c (check_module_subr):
* symbols.c (deferror_1):
* symbols.c (deferror):
* symbols.c (deferror_massage_name):
* symbols.c (deferror_massage_name_and_message):
* symbols.c (defvar_magic):
* symeval.h:
* symeval.h (DEFVAR_SYMVAL_FWD):
* sysdep.c:
* sysdep.c (init_system_name):
* sysdll.c:
* sysdll.c (MAYBE_PREPEND_UNDERSCORE):
* sysdll.c (dll_function):
* sysdll.c (dll_variable):
* sysdll.c (dll_error):
* sysdll.c (dll_open):
* sysdll.c (dll_close):
* sysdll.c (image_for_address):
* sysdll.c (my_find_image):
* sysdll.c (search_linked_libs):
* sysdll.h:
* sysfile.h:
* sysfile.h (DEFAULT_DIRECTORY_FALLBACK):
* syswindows.h:
* tests.c (DFC_CHECK_LENGTH):
* tests.c (DFC_CHECK_CONTENT):
* tests.c (Ftest_hash_tables):
* text.c (vars_of_text):
* text.h:
* tooltalk.c (tt_opnum_string):
* tooltalk.c (tt_message_arg_ival_string):
* tooltalk.c (Ftooltalk_default_procid):
* tooltalk.c (Ftooltalk_default_session):
* tooltalk.c (init_tooltalk):
* tooltalk.c (vars_of_tooltalk):
* ui-gtk.c (Fdll_load):
* ui-gtk.c (type_to_marshaller_type):
* ui-gtk.c (Fgtk_import_function_internal):
* ui-gtk.c (emacs_gtk_object_printer):
* ui-gtk.c (emacs_gtk_boxed_printer):
* unicode.c (unicode_to_ichar):
* unicode.c (unicode_print):
* unicode.c (unicode_query):
* unicode.c (vars_of_unicode):
* unicode.c (complex_vars_of_unicode):
* win32.c:
* win32.c (mswindows_report_process_error):
* window.c (print_window):
* xemacs.def.in.in:
BASIC IDEA: Further fixing up uses of char * and CIbyte *
to reflect their actual semantics; Mule-izing some code;
redoing of the not-yet-working code to handle message translation.
Clean up code to handle message-translation (not yet working).
Create separate versions of build_msg_string() for working with
Ibyte *, CIbyte *, and Ascbyte * arguments. Assert that Ascbyte *
arguments are pure-ASCII. Make build_msg_string() be the same
as build_msg_ascstring(). Create same three versions of GETTEXT()
and DEFER_GETTEXT(). Also create build_defer_string() and
variants for the equivalent of DEFER_GETTEXT() when building a
string. Remove old CGETTEXT(). Clean up code where GETTEXT(),
DEFER_GETTEXT(), build_msg_string(), etc. was being called and
introduce some new calls to build_msg_string(), etc. Remove
GETTEXT() from calls to weird_doc() -- we assume that the
message snarfer knows about weird_doc(). Remove uses of
DEFER_GETTEXT() from error messages in sysdep.c and instead use
special comments /* @@@begin-snarf@@@ */ and /* @@@end-snarf@@@ */
that the message snarfer presumably knows about.
Create build_ascstring() and use it in many instances in place
of build_string(). The purpose of having Ascbyte * variants is
to make the code more self-documenting in terms of what sort of
semantics is expected for char * strings. In fact in the process
of looking for uses of build_string(), much improperly Mule-ized
was discovered.
Mule-ize a lot of code as described in previous paragraph,
e.g. in sysdep.c.
Make the error functions take Ascbyte * strings and fix up a
couple of places where non-pure-ASCII strings were being passed in
(file-coding.c, mule-coding.c, unicode.c). (It's debatable whether
we really need to make the error functions work this way. It
helps catch places where code is written in a way that message
translation won't work, but we may well never implement message
translation.)
Make staticpro() and friends take Ascbyte * strings instead of
raw char * strings. Create a const_Ascbyte_ptr dynarr type
to describe what's held by staticpro_names[] and friends,
create pdump descriptions for const_Ascbyte_ptr dynarrs, and
use them in place of specially-crafted staticpro descriptions.
Mule-ize certain other functions (e.g. x_event_name) by correcting
raw use of char * to Ascbyte *, Rawbyte * or another such type,
and raw use of char[] buffers to another type (usually Ascbyte[]).
Change many uses of write_c_string() to write_msg_string(),
write_ascstring(), etc.
Mule-ize emodules.c, emodules.h, sysdll.h.
Fix some un-Mule-ized code in intl-win32.c.
A comment in event-Xt.c and the limitations of the message
snarfer (make-msgfile or whatever) is presumably incorrect --
it should be smart enough to handle function calls spread over
more than one line. Clean up code in event-Xt.c that was
written awkwardly for this reason.
In config.h.in, instead of NEED_ERROR_CHECK_TYPES_INLINES,
create a more general XEMACS_DEFS_NEEDS_INLINE_DECLS to
indicate when inlined functions need to be declared in
xemacs.defs.in.in, and make use of it in xemacs.defs.in.in.
We need to do this because postgresql.c now calls qxestrdup(),
which is an inline function.
Make nconc2() and other such functions MODULE_API and put
them in xemacs.defs.in.in since postgresql.c now uses them.
Clean up indentation in lread.c and a few other places.
In text.h, document ASSERT_ASCTEXT_ASCII() and
ASSERT_ASCTEXT_ASCII_LEN(), group together the stand-in
encodings and add some more for DLL symbols, function and
variable names, etc.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Tue, 26 Jan 2010 23:22:30 -0600 |
parents | 8b63e21b0436 |
children | 304aebb79cd3 |
comparison
equal
deleted
inserted
replaced
4951:de60897044f4 | 4952:19a72041c5ed |
---|---|
157 print_internal (process->name, printcharfun, 0); | 157 print_internal (process->name, printcharfun, 0); |
158 } | 158 } |
159 else | 159 else |
160 { | 160 { |
161 int netp = network_connection_p (obj); | 161 int netp = network_connection_p (obj); |
162 write_c_string (printcharfun, | 162 write_ascstring (printcharfun, |
163 netp ? GETTEXT ("#<network connection ") : | 163 netp ? GETTEXT ("#<network connection ") : |
164 GETTEXT ("#<process ")); | 164 GETTEXT ("#<process ")); |
165 print_internal (process->name, printcharfun, 1); | 165 print_internal (process->name, printcharfun, 1); |
166 write_c_string (printcharfun, (netp ? " " : " pid ")); | 166 write_ascstring (printcharfun, (netp ? " " : " pid ")); |
167 print_internal (process->pid, printcharfun, 1); | 167 print_internal (process->pid, printcharfun, 1); |
168 write_fmt_string_lisp (printcharfun, " state:%S", 1, process->status_symbol); | 168 write_fmt_string_lisp (printcharfun, " state:%S", 1, process->status_symbol); |
169 MAYBE_PROCMETH (print_process_data, (process, printcharfun)); | 169 MAYBE_PROCMETH (print_process_data, (process, printcharfun)); |
170 write_c_string (printcharfun, ">"); | 170 write_ascstring (printcharfun, ">"); |
171 } | 171 } |
172 } | 172 } |
173 | 173 |
174 #ifdef HAVE_WINDOW_SYSTEM | 174 #ifdef HAVE_WINDOW_SYSTEM |
175 extern void debug_process_finalization (Lisp_Process *p); | 175 extern void debug_process_finalization (Lisp_Process *p); |
452 /************************************************************************/ | 452 /************************************************************************/ |
453 /* creating a process */ | 453 /* creating a process */ |
454 /************************************************************************/ | 454 /************************************************************************/ |
455 | 455 |
456 DOESNT_RETURN | 456 DOESNT_RETURN |
457 report_process_error (const char *string, Lisp_Object data) | 457 report_process_error (const Ascbyte *reason, Lisp_Object data) |
458 { | 458 { |
459 report_error_with_errno (Qprocess_error, string, data); | 459 report_error_with_errno (Qprocess_error, reason, data); |
460 } | 460 } |
461 | 461 |
462 DOESNT_RETURN | 462 DOESNT_RETURN |
463 report_network_error (const char *string, Lisp_Object data) | 463 report_network_error (const Ascbyte *reason, Lisp_Object data) |
464 { | 464 { |
465 report_error_with_errno (Qnetwork_error, string, data); | 465 report_error_with_errno (Qnetwork_error, reason, data); |
466 } | 466 } |
467 | 467 |
468 Lisp_Object | 468 Lisp_Object |
469 make_process_internal (Lisp_Object name) | 469 make_process_internal (Lisp_Object name) |
470 { | 470 { |
477 | 477 |
478 /* If name is already in use, modify it until it is unused. */ | 478 /* If name is already in use, modify it until it is unused. */ |
479 name1 = name; | 479 name1 = name; |
480 for (i = 1; ; i++) | 480 for (i = 1; ; i++) |
481 { | 481 { |
482 char suffix[10]; | 482 Ascbyte suffix[10]; |
483 Lisp_Object tem = Fget_process (name1); | 483 Lisp_Object tem = Fget_process (name1); |
484 if (NILP (tem)) | 484 if (NILP (tem)) |
485 break; | 485 break; |
486 sprintf (suffix, "<%d>", i); | 486 sprintf (suffix, "<%d>", i); |
487 name1 = concat2 (name, build_string (suffix)); | 487 name1 = concat2 (name, build_ascstring (suffix)); |
488 } | 488 } |
489 name = name1; | 489 name = name1; |
490 p->name = name; | 490 p->name = name; |
491 | 491 |
492 p->mark = Fmake_marker (); | 492 p->mark = Fmake_marker (); |
744 ending, e.g. .exe */ | 744 ending, e.g. .exe */ |
745 struct gcpro ngcpro1; | 745 struct gcpro ngcpro1; |
746 | 746 |
747 tem = Qnil; | 747 tem = Qnil; |
748 NGCPRO1 (tem); | 748 NGCPRO1 (tem); |
749 locate_file (list1 (build_string ("")), program, Vlisp_EXEC_SUFFIXES, | 749 locate_file (list1 (build_ascstring ("")), program, Vlisp_EXEC_SUFFIXES, |
750 &tem, X_OK); | 750 &tem, X_OK); |
751 if (NILP (tem)) | 751 if (NILP (tem)) |
752 signal_error (Qprocess_error, "Searching for program", program); | 752 signal_error (Qprocess_error, "Searching for program", program); |
753 program = tem; | 753 program = tem; |
754 NUNGCPRO; | 754 NUNGCPRO; |
1572 { | 1572 { |
1573 string = build_string (signal_name (code)); | 1573 string = build_string (signal_name (code)); |
1574 if (coredump) | 1574 if (coredump) |
1575 string2 = build_msg_string (" (core dumped)\n"); | 1575 string2 = build_msg_string (" (core dumped)\n"); |
1576 else | 1576 else |
1577 string2 = build_string ("\n"); | 1577 string2 = build_ascstring ("\n"); |
1578 set_string_char (string, 0, | 1578 set_string_char (string, 0, |
1579 DOWNCASE (0, string_ichar (string, 0))); | 1579 DOWNCASE (0, string_ichar (string, 0))); |
1580 return concat2 (string, string2); | 1580 return concat2 (string, string2); |
1581 } | 1581 } |
1582 else if (EQ (symbol, Qexit)) | 1582 else if (EQ (symbol, Qexit)) |
1585 return build_msg_string ("finished\n"); | 1585 return build_msg_string ("finished\n"); |
1586 string = Fnumber_to_string (make_int (code)); | 1586 string = Fnumber_to_string (make_int (code)); |
1587 if (coredump) | 1587 if (coredump) |
1588 string2 = build_msg_string (" (core dumped)\n"); | 1588 string2 = build_msg_string (" (core dumped)\n"); |
1589 else | 1589 else |
1590 string2 = build_string ("\n"); | 1590 string2 = build_ascstring ("\n"); |
1591 return concat2 (build_msg_string ("exited abnormally with code "), | 1591 return concat2 (build_msg_string ("exited abnormally with code "), |
1592 concat2 (string, string2)); | 1592 concat2 (string, string2)); |
1593 } | 1593 } |
1594 else | 1594 else |
1595 return Fcopy_sequence (Fsymbol_name (symbol)); | 1595 return Fcopy_sequence (Fsymbol_name (symbol)); |
2306 && ! memcmp (XSTRING_DATA (entry), var, varlen) | 2306 && ! memcmp (XSTRING_DATA (entry), var, varlen) |
2307 #endif /* not WIN32_NATIVE */ | 2307 #endif /* not WIN32_NATIVE */ |
2308 ) | 2308 ) |
2309 { | 2309 { |
2310 XCAR (scan) = concat3 (make_string (var, varlen), | 2310 XCAR (scan) = concat3 (make_string (var, varlen), |
2311 build_string ("="), | 2311 build_ascstring ("="), |
2312 make_string (value, valuelen)); | 2312 make_string (value, valuelen)); |
2313 return; | 2313 return; |
2314 } | 2314 } |
2315 } | 2315 } |
2316 | 2316 |
2317 Vprocess_environment = Fcons (concat3 (make_string (var, varlen), | 2317 Vprocess_environment = Fcons (concat3 (make_string (var, varlen), |
2318 build_string ("="), | 2318 build_ascstring ("="), |
2319 make_string (value, valuelen)), | 2319 make_string (value, valuelen)), |
2320 Vprocess_environment); | 2320 Vprocess_environment); |
2321 } | 2321 } |
2322 | 2322 |
2323 /* NOTE: | 2323 /* NOTE: |
2603 it sends a non-ending stream of zero bytes. It's used most often along | 2603 it sends a non-ending stream of zero bytes. It's used most often along |
2604 with memory-mapping. We don't provide a Lisp variable for this because | 2604 with memory-mapping. We don't provide a Lisp variable for this because |
2605 the operations needing this are lower level than what ELisp programs | 2605 the operations needing this are lower level than what ELisp programs |
2606 typically do, and in any case no equivalent exists under native MS Windows. | 2606 typically do, and in any case no equivalent exists under native MS Windows. |
2607 */ ); | 2607 */ ); |
2608 Vnull_device = build_string (NULL_DEVICE); | 2608 Vnull_device = build_ascstring (NULL_DEVICE); |
2609 | 2609 |
2610 DEFVAR_LISP ("process-connection-type", &Vprocess_connection_type /* | 2610 DEFVAR_LISP ("process-connection-type", &Vprocess_connection_type /* |
2611 Control type of device used to communicate with subprocesses. | 2611 Control type of device used to communicate with subprocesses. |
2612 Values are nil to use a pipe, or t or `pty' to use a pty. | 2612 Values are nil to use a pipe, or t or `pty' to use a pty. |
2613 The value has no effect if the system has no ptys or if all ptys are busy: | 2613 The value has no effect if the system has no ptys or if all ptys are busy: |
2683 Each element should be a string of the form ENVVARNAME=VALUE. | 2683 Each element should be a string of the form ENVVARNAME=VALUE. |
2684 The environment which Emacs inherits is placed in this variable | 2684 The environment which Emacs inherits is placed in this variable |
2685 when Emacs starts. | 2685 when Emacs starts. |
2686 */ ); | 2686 */ ); |
2687 | 2687 |
2688 Vlisp_EXEC_SUFFIXES = build_string (EXEC_SUFFIXES); | 2688 Vlisp_EXEC_SUFFIXES = build_ascstring (EXEC_SUFFIXES); |
2689 staticpro (&Vlisp_EXEC_SUFFIXES); | 2689 staticpro (&Vlisp_EXEC_SUFFIXES); |
2690 } | 2690 } |