HCoop
/
bpt
/
emacs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge from emacs--devo--0
[bpt/emacs.git]
/
src
/
emacs.c
diff --git
a/src/emacs.c
b/src/emacs.c
index
961a179
..
94357bb
100644
(file)
--- a/
src/emacs.c
+++ b/
src/emacs.c
@@
-6,7
+6,7
@@
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version
2
, or (at your option)
+the Free Software Foundation; either version
3
, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
any later version.
GNU Emacs is distributed in the hope that it will be useful,
@@
-57,6
+57,7
@@
Boston, MA 02110-1301, USA. */
#include "blockinput.h"
#include "syssignal.h"
#include "process.h"
#include "blockinput.h"
#include "syssignal.h"
#include "process.h"
+#include "frame.h"
#include "termhooks.h"
#include "keyboard.h"
#include "keymap.h"
#include "termhooks.h"
#include "keyboard.h"
#include "keymap.h"
@@
-214,7
+215,7
@@
static unsigned long heap_bss_diff;
#ifdef HAVE_WINDOW_SYSTEM
#ifdef HAVE_WINDOW_SYSTEM
-extern Lisp_Object Vwindow_system;
+extern Lisp_Object V
initial_
window_system;
#endif /* HAVE_WINDOW_SYSTEM */
extern Lisp_Object Vauto_save_list_file_name;
#endif /* HAVE_WINDOW_SYSTEM */
extern Lisp_Object Vauto_save_list_file_name;
@@
-280,9
+281,8
@@
Initialization options:\n\
Action options:\n\
\n\
FILE visit FILE using find-file\n\
Action options:\n\
\n\
FILE visit FILE using find-file\n\
-+LINE FILE visit FILE using find-file, then go to line LINE\n\
-+LINE:COLUMN FILE visit FILE using find-file, then go to line LINE,\n\
- column COLUMN\n\
++LINE go to line LINE in next FILE\n\
++LINE:COLUMN go to line LINE, column COLUMN, in next FILE\n\
--directory, -L DIR add DIR to variable load-path\n\
--eval EXPR evaluate Emacs Lisp expression EXPR\n\
--execute EXPR evaluate Emacs Lisp expression EXPR\n\
--directory, -L DIR add DIR to variable load-path\n\
--eval EXPR evaluate Emacs Lisp expression EXPR\n\
--execute EXPR evaluate Emacs Lisp expression EXPR\n\
@@
-1166,6
+1166,13
@@
main (argc, argv
#if defined (USG5) && defined (INTERRUPT_INPUT)
setpgrp ();
#endif
#if defined (USG5) && defined (INTERRUPT_INPUT)
setpgrp ();
#endif
+#endif
+#if defined (HAVE_GTK_AND_PTHREAD) && !defined (SYSTEM_MALLOC) && !defined (DOUG_LEA_MALLOC)
+ {
+ extern void malloc_enable_thread P_ ((void));
+
+ malloc_enable_thread ();
+ }
#endif
}
#endif
}
@@
-1294,6
+1301,9
@@
main (argc, argv
faces, and the face implementation uses some symbols as
face names. */
syms_of_xfaces ();
faces, and the face implementation uses some symbols as
face names. */
syms_of_xfaces ();
+ /* XXX syms_of_keyboard uses some symbols in keymap.c. It would
+ be better to arrange things not to have this dependency. */
+ syms_of_keymap ();
/* Call syms_of_keyboard before init_window_once because
keyboard sets up symbols that include some face names that
the X support will want to use. This can happen when
/* Call syms_of_keyboard before init_window_once because
keyboard sets up symbols that include some face names that
the X support will want to use. This can happen when
@@
-1314,7
+1324,6
@@
main (argc, argv
syms_of_macterm ();
syms_of_macmenu ();
syms_of_macselect ();
syms_of_macterm ();
syms_of_macmenu ();
syms_of_macselect ();
- syms_of_data ();
syms_of_search ();
syms_of_frame ();
syms_of_search ();
syms_of_frame ();
@@
-1322,6
+1331,16
@@
main (argc, argv
mac_term_init (build_string ("Mac"), NULL, NULL);
init_keyboard ();
#endif
mac_term_init (build_string ("Mac"), NULL, NULL);
init_keyboard ();
#endif
+ /* Called before syms_of_fileio, because it sets up Qerror_condition. */
+ syms_of_data ();
+ syms_of_fileio ();
+ /* Before syms_of_coding to initialize Vgc_cons_threshold. */
+ syms_of_alloc ();
+ /* Before syms_of_coding because it initializes Qcharsetp. */
+ syms_of_charset ();
+ /* Before init_window_once, because it sets up the
+ Vcoding_system_hash_table. */
+ syms_of_coding (); /* This should be after syms_of_fileio. */
init_window_once (); /* Init the window system. */
init_fileio_once (); /* Must precede any path manipulation. */
init_window_once (); /* Init the window system. */
init_fileio_once (); /* Must precede any path manipulation. */
@@
-1504,10
+1523,10
@@
main (argc, argv
/* egetenv is a pretty low-level facility, which may get called in
many circumstances; it seems flimsy to put off initializing it
until calling init_callproc. */
/* egetenv is a pretty low-level facility, which may get called in
many circumstances; it seems flimsy to put off initializing it
until calling init_callproc. */
- set_
process
_environment ();
+ set_
initial
_environment ();
/* AIX crashes are reported in system versions 3.2.3 and 3.2.4
/* AIX crashes are reported in system versions 3.2.3 and 3.2.4
- if this is not done. Do it after set_
process
_environment so that we
- don't pollute V
process
_environment. */
+ if this is not done. Do it after set_
global
_environment so that we
+ don't pollute V
global
_environment. */
/* Setting LANG here will defeat the startup locale processing... */
#ifdef AIX3_2
putenv ("LANG=C");
/* Setting LANG here will defeat the startup locale processing... */
#ifdef AIX3_2
putenv ("LANG=C");
@@
-1543,7
+1562,6
@@
main (argc, argv
/* Called before init_window_once for Mac OS Classic. */
syms_of_data ();
#endif
/* Called before init_window_once for Mac OS Classic. */
syms_of_data ();
#endif
- syms_of_alloc ();
syms_of_chartab ();
syms_of_lread ();
syms_of_print ();
syms_of_chartab ();
syms_of_lread ();
syms_of_print ();
@@
-1564,7
+1582,6
@@
main (argc, argv
syms_of_ccl ();
#endif
syms_of_character ();
syms_of_ccl ();
#endif
syms_of_character ();
- syms_of_charset ();
syms_of_cmds ();
#ifndef NO_DIR_LIBRARY
syms_of_dired ();
syms_of_cmds ();
#ifndef NO_DIR_LIBRARY
syms_of_dired ();
@@
-1573,14
+1590,12
@@
main (argc, argv
syms_of_doc ();
syms_of_editfns ();
syms_of_emacs ();
syms_of_doc ();
syms_of_editfns ();
syms_of_emacs ();
- syms_of_fileio ();
- syms_of_coding (); /* This should be after syms_of_fileio. */
#ifdef CLASH_DETECTION
syms_of_filelock ();
#endif /* CLASH_DETECTION */
syms_of_indent ();
syms_of_insdel ();
#ifdef CLASH_DETECTION
syms_of_filelock ();
#endif /* CLASH_DETECTION */
syms_of_indent ();
syms_of_insdel ();
- syms_of_keymap ();
+ /* syms_of_keymap (); */
syms_of_macros ();
syms_of_marker ();
syms_of_minibuf ();
syms_of_macros ();
syms_of_marker ();
syms_of_minibuf ();
@@
-1591,6
+1606,7
@@
main (argc, argv
syms_of_frame ();
#endif
syms_of_syntax ();
syms_of_frame ();
#endif
syms_of_syntax ();
+ syms_of_terminal ();
syms_of_term ();
syms_of_undo ();
#ifdef HAVE_SOUND
syms_of_term ();
syms_of_undo ();
#ifdef HAVE_SOUND
@@
-1680,13
+1696,7
@@
main (argc, argv
init_charset ();
init_charset ();
- if (!noninteractive)
- {
-#ifdef VMS
- init_vms_input ();/* init_display calls get_frame_size, that needs this. */
-#endif /* VMS */
- init_display (); /* Determine terminal type. init_sys_modes uses results. */
- }
+ init_process (); /* init_display uses add_keyboard_wait_descriptor. */
#ifndef MAC_OS8
/* Called before init_window_once for Mac OS Classic. */
init_keyboard (); /* This too must precede init_sys_modes. */
#ifndef MAC_OS8
/* Called before init_window_once for Mac OS Classic. */
init_keyboard (); /* This too must precede init_sys_modes. */
@@
-1694,7
+1704,13
@@
main (argc, argv
#ifdef VMS
init_vmsproc (); /* And this too. */
#endif /* VMS */
#ifdef VMS
init_vmsproc (); /* And this too. */
#endif /* VMS */
- init_sys_modes (); /* Init system terminal modes (RAW or CBREAK, etc.). */
+ if (!noninteractive)
+ {
+#ifdef VMS
+ init_vms_input ();/* init_display calls get_tty_size, that needs this. */
+#endif /* VMS */
+ init_display (); /* Determine terminal type. Calls init_sys_modes. */
+ }
init_fns ();
init_xdisp ();
#ifdef HAVE_WINDOW_SYSTEM
init_fns ();
init_xdisp ();
#ifdef HAVE_WINDOW_SYSTEM
@@
-1707,7
+1723,6
@@
main (argc, argv
#ifdef VMS
init_vmsfns ();
#endif /* VMS */
#ifdef VMS
init_vmsfns ();
#endif /* VMS */
- init_process ();
#ifdef HAVE_SOUND
init_sound ();
#endif
#ifdef HAVE_SOUND
init_sound ();
#endif
@@
-1838,7
+1853,6
@@
struct standard_args standard_args[] =
{ "-q", "--no-init-file", 50, 0 },
{ "-no-init-file", 0, 50, 0 },
{ "-no-site-file", "--no-site-file", 40, 0 },
{ "-q", "--no-init-file", 50, 0 },
{ "-no-init-file", 0, 50, 0 },
{ "-no-site-file", "--no-site-file", 40, 0 },
- { "-no-splash", "--no-splash", 40, 0 },
{ "-u", "--user", 30, 1 },
{ "-user", 0, 30, 1 },
{ "-debug-init", "--debug-init", 20, 0 },
{ "-u", "--user", 30, 1 },
{ "-user", 0, 30, 1 },
{ "-debug-init", "--debug-init", 20, 0 },
@@
-1873,6
+1887,8
@@
struct standard_args standard_args[] =
{ "-hb", "--horizontal-scroll-bars", 5, 0 },
{ "-vb", "--vertical-scroll-bars", 5, 0 },
{ "-color", "--color", 5, 0},
{ "-hb", "--horizontal-scroll-bars", 5, 0 },
{ "-vb", "--vertical-scroll-bars", 5, 0 },
{ "-color", "--color", 5, 0},
+ { "-no-splash", "--no-splash", 3, 0 },
+ { "-no-desktop", "--no-desktop", 3, 0 },
/* These have the same priority as ordinary file name args,
so they are not reordered with respect to those. */
{ "-L", "--directory", 0, 1 },
/* These have the same priority as ordinary file name args,
so they are not reordered with respect to those. */
{ "-L", "--directory", 0, 1 },
@@
-2122,15
+2138,14
@@
shut_down_emacs (sig, no_x, stuff)
if (EMACS_GET_TTY_PGRP (0, &tpgrp) != -1
&& tpgrp == pgrp)
{
if (EMACS_GET_TTY_PGRP (0, &tpgrp) != -1
&& tpgrp == pgrp)
{
- fflush (stdout);
- reset_sys_modes ();
+ reset_all_sys_modes ();
if (sig && sig != SIGTERM)
fprintf (stderr, "Fatal error (%d)", sig);
}
}
#else
fflush (stdout);
if (sig && sig != SIGTERM)
fprintf (stderr, "Fatal error (%d)", sig);
}
}
#else
fflush (stdout);
- reset_sys_modes ();
+ reset_
all_
sys_modes ();
#endif
stuff_buffered_input (stuff);
#endif
stuff_buffered_input (stuff);
@@
-2152,9
+2167,9
@@
shut_down_emacs (sig, no_x, stuff)
#if 0 /* This triggers a bug in XCloseDisplay and is not needed. */
#ifdef HAVE_X_WINDOWS
/* It's not safe to call intern here. Maybe we are crashing. */
#if 0 /* This triggers a bug in XCloseDisplay and is not needed. */
#ifdef HAVE_X_WINDOWS
/* It's not safe to call intern here. Maybe we are crashing. */
- if (!noninteractive && SYMBOLP (Vwindow_system)
- && SCHARS (SYMBOL_NAME (Vwindow_system)) == 1
- && SREF (SYMBOL_NAME (Vwindow_system), 0) == 'x'
+ if (!noninteractive && SYMBOLP (V
initial_
window_system)
+ && SCHARS (SYMBOL_NAME (V
initial_
window_system)) == 1
+ && SREF (SYMBOL_NAME (V
initial_
window_system), 0) == 'x'
&& ! no_x)
Fx_close_current_connection ();
#endif /* HAVE_X_WINDOWS */
&& ! no_x)
Fx_close_current_connection ();
#endif /* HAVE_X_WINDOWS */