ChangeLog 94.6 KB
Newer Older
1 2 3 4 5 6
2007-10-17  Chong Yidong  <cyd@stupidchicken.com>

	* process.c: Link to libs for calling res_init() if available.
	(Fmake_network_process): Call res_init() before getaddrinfo or
	gethostbyname, if possible.

Stefan Monnier's avatar
Stefan Monnier committed
7 8
2007-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>

9 10
	* lread.c (read1): Set pvectype for char_tables.

11 12 13 14 15
	* lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
	(XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
	Add type checks.
	(SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.

Stefan Monnier's avatar
Stefan Monnier committed
16 17 18
	* alloc.c (free_misc): Use XMISCTYPE.
	(live_misc_p, gc_sweep): Use Lisp_Misc_Any.

19 20 21 22 23 24 25 26 27 28 29 30
2007-10-17  Glenn Morris  <rgm@gnu.org>

	* minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
	(syms_of_minibuf): Add Qcompletion_ignore_case.
	* dired.c (Qcompletion_ignore_case): Change to external.
	(syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
	* fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
	(Fread_file_name): Use it rather than intern'ing.

	* coding.c (Qcompletion_ignore_case): New external Lisp_Object.
	(Fread_coding_system): Ignore case of user input.

31 32 33 34 35 36 37
2007-10-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* xdisp.c (handle_display_prop): Ignore display specs after
	replacing one when string text is being replaced.
	(handle_single_display_spec): Pretend as if characters with display
	property haven't been consumed only when buffer text is being replaced.

38 39
2007-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>

40 41 42 43 44 45 46 47 48 49 50
	* xfns.c (Fx_create_frame, Fx_display_list):
	* window.c (window_fixed_size_p, enlarge_window)
	(shrink_window_lowest_first):
	* macterm.c (init_font_name_table):
	* macfns.c (Fx_create_frame, Fx_display_list):
	* lread.c (close_load_descs):
	* keyboard.c (read_char_x_menu_prompt):
	* fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
	* coding.c (code_convert_region_unwind): Test the type of an object
	rather than just !NILP before extracting data from it.

51 52
	* alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.

53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
	* lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
	(XMISCANY): New macro.
	(XMISCTYPE): Use it.
	(struct Lisp_Misc_Any): New type.
	(union Lisp_Misc): Use it.
	(struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
	* data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
	(find_symbol_value, set_internal, default_value, Fset_default)
	(Fmake_variable_buffer_local, Fmake_local_variable)
	(Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
	(Flocal_variable_if_set_p, Fvariable_binding_locus):
	The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
	* alloc.c (allocate_buffer): Set the size and tag.
	(allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
	Use XMISCANY.
	(die): Follow the GNU convention for error messages.
	* print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
	* buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
	tag any more.
	(set_buffer_internal_1):
	* frame.c (store_frame_param):
	* eval.c (specbind):
	* xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.

77 78
	* doc.c (Fsnarf_documentation): Simplify.

79 80 81 82 83
2007-10-14  Juanma Barranquero  <lekktu@gmail.com>

	* w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
	(syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.

84 85 86 87
2007-10-14  Stefan Monnier  <monnier@iro.umontreal.ca>

	* buffer.c (Fmake_indirect_buffer): Set the buffer's tag.

Juanma Barranquero's avatar
Juanma Barranquero committed
88 89 90 91 92 93
2007-10-14  Juanma Barranquero  <lekktu@gmail.com>

	* eval.c (do_autoload): Don't save autoloads.

	* data.c (Ffset): Save autoload of the function being set.

94 95 96 97 98
2007-10-07  John Paul Wallington  <jpw@pobox.com>

	* xfns.c (x_create_tip_frame): Set the `display-type' frame
	parameter before setting up faces.

Eli Zaretskii's avatar
Eli Zaretskii committed
99 100
2007-10-13  Eli Zaretskii  <eliz@gnu.org>

101
	* ccl.c (Fregister_code_conversion_map):
102 103
	* keyboard.c (append_tool_bar_item): Reformat last change.

Eli Zaretskii's avatar
Eli Zaretskii committed
104 105
	* lisp.h (eabs): Rename from `abs'.  All callers changed.

Juanma Barranquero's avatar
Juanma Barranquero committed
106
2007-10-05  Dmitry Antipov  <dmantipov@yandex.ru>
107 108 109 110 111 112 113

	* buffer.c (add_overlay_mod_hooklist):
	* ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
	* fontset.c (make_fontset):
	* keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
	(append_tool_bar_item):
	* macmenu.c (grow_menu_items):
114
	* w32menu.c (grow_menu_items):
115
	* xmenu.c (grow_menu_items): Use larger_vector.
116

117 118 119 120 121
2007-10-13  Eli Zaretskii  <eliz@gnu.org>

	* msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
	selected frame'' on MSDOS).

Juanma Barranquero's avatar
Juanma Barranquero committed
122
2007-10-10  Patrick Mahan  <mahan@mahan.org>  (tiny change)
123 124 125

	* macfns.c (x_create_tip_frame): Set terminal for frame.

126 127
2007-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>

128 129 130 131 132 133
	* frame.c (Qenvironment): Remove.
	(syms_of_frame) <Qenvironment>: Don't initialize.
	(Fdelete_frame): Don't treat the `environment' param specially.
	* frame.h (Qenvironment): Don't declare.
	* callproc.c (set_initial_environment): Don't set unused frame param.

134 135
	* frame.c (Fframe_with_environment): Remove.
	(syms_of_frame) <Sframe_with_environment>: Don't declare.
136

137 138
	* lisp.h (Fframe_with_environment): Don't declare.

139 140 141 142 143 144
2007-10-10  Juanma Barranquero  <lekktu@gmail.com>

	* indent.c (indent_tabs_mode, last_known_column)
	(last_known_column_modified): Make static.
	(syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.

145 146 147 148
2007-10-10  Katsumi Yamaoka  <yamaoka@jpl.org>

	* puresize.h (BASE_PURESIZE): Increase to 1170000.

Miles Bader's avatar
Miles Bader committed
149
2007-10-09  Richard Stallman  <rms@gnu.org>
Kim F. Storm's avatar
Kim F. Storm committed
150

Miles Bader's avatar
Miles Bader committed
151 152
	* xdisp.c (handle_invisible_prop): After setting up an ellipsis,
	return HANDLED_RETURN.
Kim F. Storm's avatar
Kim F. Storm committed
153

Miles Bader's avatar
Miles Bader committed
154
2007-10-08  Martin Rudalics  <rudalics@gmx.at>
Jason Rumney's avatar
Jason Rumney committed
155

Miles Bader's avatar
Miles Bader committed
156 157
	* keyboard.c (kbd_buffer_get_event): Break loop waiting for input
	when there's an unread command event.
158

159
	* frame.c (focus_follows_mouse): Move here from frame.el to allow
Miles Bader's avatar
Miles Bader committed
160 161 162 163
	window autoselection act appropriately when leaving selected frame.
	(syms_of_frame): Initialize focus_follows_mouse.
	* frame.h (focus_follows_mouse): Extern it.
	* macterm.c (XTread_socket): When focus_follows_mouse is nil
164
	make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
Miles Bader's avatar
Miles Bader committed
165 166 167 168 169
	* msdos.c (dos_rawgetc): Likewise.
	* w32term.c (w32_read_socket): Likewise.
	* xterm.c (handle_one_xevent): Likewise.
	* xdisp.c (syms_of_xdisp): In doc-string of
	mouse-autoselect-window mention focus-follows-mouse.
170

Miles Bader's avatar
Miles Bader committed
171
2007-10-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
172

Miles Bader's avatar
Miles Bader committed
173 174 175
	* macterm.c (mac_load_query_font): Fix missing return value.
	[USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
	Add BLOCK_INPUT.
Stefan Monnier's avatar
Stefan Monnier committed
176

Miles Bader's avatar
Miles Bader committed
177
2007-10-08  Richard Stallman  <rms@gnu.org>
Stefan Monnier's avatar
Stefan Monnier committed
178

Miles Bader's avatar
Miles Bader committed
179 180
	* xdisp.c (get_window_cursor_type): Implement documented behavior
	for cursor-in-non-selected-windows = t.
Stefan Monnier's avatar
Stefan Monnier committed
181

Miles Bader's avatar
Miles Bader committed
182
2007-10-08  Jason Rumney  <jasonr@gnu.org>
Stefan Monnier's avatar
Stefan Monnier committed
183

Miles Bader's avatar
Miles Bader committed
184
	* w32.c (w32_get_resource): Always close registry keys.
Pavel Janík's avatar
Pavel Janík committed
185

Miles Bader's avatar
Miles Bader committed
186
2007-10-08  Jason Rumney  <jasonr@gnu.org>
Pavel Janík's avatar
Pavel Janík committed
187

Miles Bader's avatar
Miles Bader committed
188
	* makefile.w32-in (LIBS): Add COMCTL32.
189

Miles Bader's avatar
Miles Bader committed
190
	* w32fns.c (globals_of_w32fns): Init common controls.
191

Miles Bader's avatar
Miles Bader committed
192
2007-10-08  Richard Stallman  <rms@gnu.org>
193

194
	* image.c (our_memory_buffer): Rename from omfib_buffer.
195

Miles Bader's avatar
Miles Bader committed
196
2007-10-08  Richard Stallman  <rms@gnu.org>
197

Miles Bader's avatar
Miles Bader committed
198
	* buffer.c (Foverlays_at): Doc fix.
Stefan Monnier's avatar
Stefan Monnier committed
199

Miles Bader's avatar
Miles Bader committed
200
2007-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
Stefan Monnier's avatar
Stefan Monnier committed
201

Miles Bader's avatar
Miles Bader committed
202
	* fns.c (Fplist_put): Preserve uneven tail data.
Gerd Moellmann's avatar
Gerd Moellmann committed
203

Miles Bader's avatar
Miles Bader committed
204
2007-10-08  Peter O'Gorman  <bug-gnu-emacs@mlists.thewrittenword.com>  (tiny change)
Gerd Moellmann's avatar
Gerd Moellmann committed
205

Miles Bader's avatar
Miles Bader committed
206
	* termhooks.h (enum event_kind): Remove trailing comma.
207

Miles Bader's avatar
Miles Bader committed
208
	* frame.h (enum): Remove trailing comma.
209

Miles Bader's avatar
Miles Bader committed
210
2007-10-08  Dhuvra Krishnamurthy  <dhuvrakm@gmail.com>  (tiny change)
211

Miles Bader's avatar
Miles Bader committed
212
	* w32proc.c (delete_child): Don't terminate threads of zombies.
213

Miles Bader's avatar
Miles Bader committed
214
2007-10-08  Martin Rudalics  <rudalics@gmx.at>
215

Miles Bader's avatar
Miles Bader committed
216
	* keyboard.h (struct kboard): New elt Vlast_repeatable_command.
217

Miles Bader's avatar
Miles Bader committed
218 219 220 221 222 223
	* keyboard.c (syms_of_keyboard): Set up new Lisp variable
	last-repeatable-command.
	(init_kboard): Initialize Vlast_repeatable_command.
	(command_loop_1): Set it to real_this_command unless that was
	bound to an input event.
	(mark_kboards): Mark it.
Kim F. Storm's avatar
Kim F. Storm committed
224

Miles Bader's avatar
Miles Bader committed
225
2007-10-08  Richard Stallman  <rms@gnu.org>
Stefan Monnier's avatar
Stefan Monnier committed
226

Miles Bader's avatar
Miles Bader committed
227
	* eval.c (condition-case): Doc fix.
Kim F. Storm's avatar
Kim F. Storm committed
228

Miles Bader's avatar
Miles Bader committed
229
2007-10-08  Masatake YAMATO  <jet@gyve.org>
Kim F. Storm's avatar
Kim F. Storm committed
230

Miles Bader's avatar
Miles Bader committed
231 232 233
	* xfaces.c (tty_supports_face_attributes_p): Fix code
	for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
	was copied and not edited.
Kim F. Storm's avatar
Kim F. Storm committed
234

235 236
2007-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>

237
	Add new `input-decode-map' keymap and use it for terminal
238 239 240 241 242 243 244 245 246 247 248 249 250 251 252
	escape sequences.
	* keyboard.h (struct kboard): Add Vinput_decode_map.
	Remove Vlocal_key_translation_map.
	* keyboard.c (read_key_sequence): Add support for input-decode-map.
	(init_kboard): Init input-decode-map.
	Replace local-key-translation-map back with key-translation-map.
	(syms_of_keyboard): Declare input-decode-map.
	Remove local-key-translation-map.  Update docstrings.
	(mark_kboards): Mark Vinput_decode_map.
	Don't mark Vlocal_key_translation_map.
	* keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
	Replace local-key-translation-map back with key-translation-map.
	* term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
	Bind in input-decode-map rather than function-key-map.

253 254 255
	* lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
	This was made redundant by the previous introduction of XSETPVECTYPE.

256 257
2007-10-09  Richard Stallman  <rms@gnu.org>

258
	* image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
259 260 261 262 263 264 265

2007-09-29  Richard Stallman  <rms@gnu.org>

	* eval.c (internal_condition_case_2, internal_condition_case_1)
	(internal_condition_case): Reenable abort if x_catching_errors ()
	to see if that really happens and why.

266 267 268 269
2007-10-06  Andreas Schwab  <schwab@suse.de>

	* fileio.c (Fwrite_region): Ignore EINVAL error from fsync.

270 271 272 273
2007-10-04  Juanma Barranquero  <lekktu@gmail.com>

	* image.c (syms_of_image) <image-types>: Fix typo in docstring.

274 275 276 277
2007-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>

	* frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.

278 279
2007-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
280 281 282 283 284 285 286 287 288 289 290
	* window.h (struct window):
	* window.c (struct save_window_data, struct saved_window):
	* termhooks.h (struct terminal):
	* process.h (struct Lisp_Process):
	* frame.h (struct frame):
	* buffer.h (struct buffer):
	* lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
	(struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
	The size field of (pseudo)vectors is now unsigned.
	(ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.

291 292
	* lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
	Turn `count' into an integer.
Stefan Monnier's avatar
Stefan Monnier committed
293

294 295 296 297 298 299
	* fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
	(sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
	* print.c (print_object) <HASH_TABLE_P>: `count' is an int.
	* alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
	(mark_object) <HASH_TABLE_P>: Use mark_vectorlike.

300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325
	* alloc.c (allocate_pseudovector): New fun.
	(ALLOCATE_PSEUDOVECTOR): New macro.
	(allocate_window, allocate_terminal, allocate_frame)
	(allocate_process): Use it.
	(mark_vectorlike): New function.
	(mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
	(mark_terminals): Use it.
	(Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
	(Fmake_byte_code): Use XSETPVECTYPE.

	* frame.c (Fframe_parameters): Minor simplification.

	* insdel.c (adjust_markers_for_insert): Generalize assertion checks.

	* marker.c (Fmarker_buffer): Make test for odd case into a failure.

	* buffer.c (Fget_buffer_create, init_buffer_once):
	* lread.c (defsubr):
	* window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.

	* lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
	defined differently in the m/*.h files.
	(XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
	(XSETPVECTYPE): New macro.
	(XSETPSEUDOVECTOR): Use it.

326 327
	* buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
	(DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
328

329 330 331 332 333 334 335 336 337
	* lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
	* lread.c (defvar_per_buffer):
	* abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.

	* window.c (candidate_window_p): Only consider as visible frames that
	are on the same terminal.

	* m/ibms390x.h (MARKBIT): Remove unused macro.

338 339 340 341
2007-10-01  Juanma Barranquero  <lekktu@gmail.com>

	* lread.c (Fload): Fix typo in docstring.

342 343 344 345 346
2007-10-01  Micha,Ak(Bl Cadilhac  <michael@cadilhac.name>

	* floatfns.c (Fexpt): Manually check for overflows, so that a power
	of a non-zero value can't yield zero.

347 348
2007-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>

349 350 351
	* term.c (term_clear_mouse_face, term_mouse_highlight)
	(tty_write_glyphs_with_face): Only define is HAVE_GPM.

352 353
	* print.c (safe_debug_print): Use XHASH.

354 355 356 357 358 359 360
	* lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
	Lisp elements such as tags.
	(XHASH): New macro.
	(EQ): Use it.
	(SREF, SSET, STRING_COPYIN): Use SDATA.
	(VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.

361 362 363 364 365 366
	* alloc.c (mark_terminal): Remove left-over declaration.
	(enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
	(allocate_vectorlike): Remove type argument.  Adjust callers.
	(live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
	Only handle the one remaining MEM_TYPE_VECTORLIKE.

367 368 369 370 371 372 373
	* alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
	to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
	(xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
	(lisp_align_free, make_interval, allocate_string, allocate_string_data)
	(make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
	Use them.

374 375 376 377
	* xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
	Don't let signal handlers run when a GC is freed but not yet NULL'ed.
	(x_free_gc): Remove BLOCK_INPUT since it's now redundant.

378 379 380 381 382
2007-09-28  Dan Nicolaescu  <dann@ics.uci.edu>

	* Makefile.in (lisp, shortlisp): Delete server.elc, it is not
	loaded by default.

383 384
2007-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>

385 386 387 388
	* term.c (Fgpm_mouse_start): Don't signal an error if already activated
	on this tty.
	(Fgpm_mouse_stop): Only deactivate if it was activated on this tty.

389 390 391 392 393 394 395 396 397
	* term.c (mouse_face_window): Rename from Qmouse_face_window.
	Update all users.
	(handle_one_term_event): Use Gpm_DrawPointer.
	(Fgpm_mouse_start): Rename from Fterm_open_connection.
	Signal errors instead of returning nil.  Always return nil.
	(Fgpm_mouse_stop): Rename from Fterm_close_connection.
	Make it a noop if gpm-mouse was not activated.
	(syms_of_term): Update names.

398 399
2007-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>

400 401 402
	* sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
	(init_sys_modes): Check that gpm_tty is the current tty.

403 404 405 406 407 408
	* alloc.c (allocate_terminal): Set the vector size to only count the
	lisp fields.  Initialize those to nil.
	(mark_object): Don't treat terminals specially.
	(mark_terminal): Remove.
	(mark_terminals): Use mark_object instead.

409 410 411
	* termhooks.h (struct terminal): Move all Lisp_Object fields traced by
	the GC to the beginning.

Stefan Monnier's avatar
Stefan Monnier committed
412 413 414
	* indent.h:
	* indent.c: Use EMACS_INT for ints coming from Elisp data.

415 416
	* indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.

417 418 419 420 421 422 423 424 425 426 427
2007-09-25  Jason Rumney  <jasonr@gnu.org>

	* frame.c (make_terminal_frame): Remove special case for WINDOWSNT.

	* w32console.c (create_w32cons_output): Remove.

	* term.c (init_tty): Call init_sys_modes on WINDOWSNT also.

	* sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
	(reset_sys_modes): Use reset_terminal_modes_hook.

428 429 430 431
2007-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>

	* eval.c (do_autoload): Don't output any message.

432 433 434 435 436
2007-09-24  Juri Linkov  <juri@jurta.org>

	* emacs.c (standard_args): Change priority of "--no-splash"
	from 40 to 3.  Add "--no-desktop" with the same priority.

437 438 439 440 441
2007-09-23  Dmitry Antipov  <dmantipov@yandex.ru>

	* alloc.c (gc_sweep): Check cons cell mark bits word by word
	and optimize the case where they are all 1.

442 443
2007-09-23  Johannes Weiner  <hannes@saeurebad.de>

444 445 446
	* lisp.h (abs): Define if not defined.
	* keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
	Don't define `abs', since it's defined in lisp.h.
447

448 449
2007-09-22  Eli Zaretskii  <eliz@gnu.org>

450
	* term.c (DEV_TTY): New macro.  Provide a definition for MS-Windows.
451 452 453 454 455
	(FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
	(Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
	(init_tty): Use DEV_TTY instead of "/dev/tty".
	[WINDOWSNT]: No need to protect from NAME arg being null.

456 457 458 459 460
2007-09-21  Dan Nicolaescu  <dann@ics.uci.edu>

	* term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
	up the tty state.

461 462 463 464 465 466 467 468 469 470 471 472
2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>

	* termhooks.h (term_gpm): Delete.  Use gpm_tty's NULLness instead.
	(gpm_tty): Change its type.
	* term.c (term_gpm): Delete.  Use gpm_tty's NULLness instead.
	(gpm_tty): Change its type and initialize it.
	(Fterm_open_connection): Check the frame is indeed a tty.
	Use the new gpm_tty.
	(Fterm_close_connection): Use the new gpm_tty.
	* keyboard.c (tty_read_avail_input): Use the new gpm_tty.
	* sysdep.c (init_sys_modes): term_gpm -> gpm_tty.

473 474 475 476 477
2007-09-21  Juanma Barranquero  <lekktu@gmail.com>

	* w32term.c (x_draw_glyph_string): Use strike_through_color, not
	underline_color, to draw strike-through.

478 479
2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
480 481
	* lisp.h (allocate_terminal): Declare.

482 483 484 485 486 487
	* window.c (candidate_window_p): Consider frames that are being placed
	by the user as somewhere between visible and iconified.
	(window_loop): Prefer windows on the current frame.
	(Fselect_window): Move the use of select-frame to the beginning so we
	can just delegate all the work (it'll call us back anyway).

488 489 490
	* frame.c (Qdisplay_environment_variable):
	* frame.h (Qdisplay_environment_variable): Delete.

491 492 493
	* .gdbinit (xbacktrace): Print the arg's address rather than the value
	of the first arg, since that value may be a union.

494 495 496 497
	* callproc.c (child_setup, getenv_internal): Use the frame's `display'
	parameter rather than Qdisplay_environment_variable.  If all else
	fails, look for DISPLAY in initial-environment.

Glenn Morris's avatar
Glenn Morris committed
498 499 500
2007-09-21  Glenn Morris  <rgm@gnu.org>

	* Makefile.in (emacstool): Remove target.
Glenn Morris's avatar
Glenn Morris committed
501
	(lisp, shortlisp): Remove termdev.elc.
Glenn Morris's avatar
Glenn Morris committed
502

503 504
2007-09-21  Markus Triska  <markus.triska@gmx.at>

505
	* xterm.c (x_delete_display): Compile session management conditionally.
506

507 508
2007-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>

509 510 511 512
	* callproc.c (getenv_internal_1): New function.
	(getenv_internal): Use it.
	(Fgetenv_internal): Use it.  Accept an env-list as optional arg.

513
	* terminal.c (get_terminal): Don't accept ints to represent terminals.
514 515 516 517
	(Fterminal_name, Fterminal_parameters, Fterminal_parameter)
	(Fset_terminal_parameter): Work with dead terminals as well.
	(Fmodify_terminal_parameters): Remove.

518 519 520 521 522 523 524 525 526 527 528 529 530 531
	* terminal.c (get_terminal): Handle terminals.
	Make sure the terminal returned is live.
	(create_terminal): Use allocate_terminal.
	(mark_terminals): Move to alloc.c.
	(delete_terminal): Use terminal->name as liveness status.
	NULL out fields after freeing their contents.
	Don't deallocate the object.
	(Fframe_terminal): Use FRAME_TERMINAL.  Return the terminal object
	rather than an int.
	(Fterminal_live_p): Accept non-integer arguments.
	(Fterminal_list): Return terminal objects rather than an ints.

	* alloc.c (enum mem_type): New member for `terminal' objects.
	(allocate_terminal): New function.
532 533
	(mark_maybe_pointer, valid_lisp_object_p, mark_object):
	Handle terminals.
534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554
	(mark_terminal): New fun.
	(mark_terminals): Move from terminal.c.

	* term.c (get_tty_terminal): Don't treat output_initial specially.
	(Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
	(delete_tty): Use terminal->name as liveness status.

	* termhooks.h (struct terminal): Make it into a pseudovector.
	Remove `deleted' replaced by checking `name's nullness.

	* print.c (print_object): Handle terminals.

	* lisp.h (enum pvec_type): New `terminal' pseudovector.
	(XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.

	* frame.c (make_terminal_frame):
	* keyboard.c (tty_read_avail_input):
	* w32term.c (x_delete_terminal):
	* xfns.c (Fx_create_frame, x_create_tip_frame):
	* xterm.c (x_delete_terminal): Use terminal->name as liveness status.

555 556 557 558
2007-09-20  Glenn Morris  <rgm@gnu.org>

	* process.c (Fmake_network_process): Doc fix.

559 560 561 562
2007-09-19  Jason Rumney  <jasonr@gnu.org>

	* dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.

563 564 565 566 567 568 569
2007-09-19  Micha,Ak(Bl Cadilhac  <michael@cadilhac.name>

	* coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
	Fix a C warning regarding variable constness.

	* xterm.c (handle_one_xevent): Fix a C warning.

570 571 572 573
2007-09-18  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.

Jan Djärv's avatar
Jan Djärv committed
574 575 576 577 578 579 580
2007-09-17  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* gtkutil.c (gdpy_def): New variable.
	(xg_initialize): Initialize gdpy_def.
	(xg_display_close): If no other display exists, set gdpy_def to a
	new connection.

581 582 583 584 585 586 587 588 589
2007-09-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
	when we have no file name for the icon.
	(xg_tool_bar_expose_callback): Remove.
	(xg_create_tool_bar): Don't connect expose signal to
	xg_tool_bar_expose_callback.
	(xg_get_file_with_chooser): Move GCPRO1 after declarations.

590 591 592 593 594
2007-09-16  Andreas Schwab  <schwab@suse.de>

	* alloc.c (reset_malloc_hooks): Set the hooks to the previous
	values instead of zapping them.

595 596 597 598 599 600 601 602
2007-09-14  Glenn Morris  <rgm@gnu.org>

	* fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
	* gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
	* image.c (our_memory_fill_input_buffer) <buffer>: Move to file
	scope and rename to omfib_buffer for clarity.
	(gif_load) <interlace_start, interlace_increment>: Move to file scope.

603 604 605 606
2007-09-14  Kenichi Handa  <handa@m17n.org>

	* xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.

607 608 609 610 611 612 613 614 615
2007-09-13  Jason Rumney  <jasonr@gnu.org>

	* fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.

	* w32term.c (w32_term_init): Pass rif to w32_init_fringe.

	* macterm.c (mac_initialize): Don't call mac_init_fringe here.
	(mac_term_init): Call here instead, passing rif.

Glenn Morris's avatar
Glenn Morris committed
616 617 618 619
2007-09-13  Glenn Morris  <rgm@gnu.org>

	* s/hpux.h: No longer define `static' as nothing.

Glenn Morris's avatar
Glenn Morris committed
620 621 622 623
2007-09-13  Johan Bockg,Ae(Brd  <bojohan@gnu.org>

	* callint.c (Fcall_interactively): Remove unused var `fun'.

624 625 626 627 628
2007-09-12  Romain Francoise  <romain@orebokech.com>

	* window.c (prefer_window_split_horizontally, display_buffer):
	Revert 2007-09-08 change.

Glenn Morris's avatar
Glenn Morris committed
629 630
2007-09-12  Glenn Morris  <rgm@gnu.org>

Glenn Morris's avatar
Glenn Morris committed
631
	* alloca.c: Remove file.
632 633 634 635 636 637 638 639
	* Makefile.in (alloca): Do not undef.
	(allocaobj, alloca.o): Remove.
	(otherobj): Remove allocaobj.
	* keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
	* regex.c (C_ALLOCA): Remove all references and code that was only
	used when this was defined.
	* search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
	* xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
640 641
	* m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.

Glenn Morris's avatar
Glenn Morris committed
642
	* Makefile.in (SOURCES, unlock, relock): Delete.
643 644 645 646 647 648

	* gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
	(menu_grab_callback): All uses changed.

	* xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
	(x_reply_selection_request): All uses changed.
Glenn Morris's avatar
Glenn Morris committed
649

650 651 652 653 654
2007-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>

	* lread.c (load_warn_old_style_backquotes): Change message to look
	better when it appears in the middle of byte-compiler messages.

655 656
2007-09-10  Dan Nicolaescu  <dann@ics.uci.edu>

657 658
	* s/darwin.h (MULTI_KBOARD): Only define for Carbon.

659 660 661 662
	* xterm.c (x_create_terminal): Add comment.

	* term.c (clear_tty_hooks, set_tty_hooks): Add comments.

663 664 665 666
2007-09-10  Richard Stallman  <rms@gnu.org>

	* xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.

667 668
2007-09-10  Micha,Ak(Bl Cadilhac  <michael@cadilhac.name>

669 670 671
	* lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
	(DEFUN): Document `intspec', use it instead of `prompt'.

672 673
	* eval.c (Fcommandp): Change `->prompt' to `->intspec'.

674 675 676
	* data.c (Finteractive_form): If the interactive specification starts
	with a `(', use it as a Lisp form.

677 678 679
	* fileio.c (Fset_file_modes): Add an interactive spec that reads a file
	name and file modes.

680 681
	* callint.c (Fcall_interactively): Comment fixes.

682 683 684 685 686
2007-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>

	* callint.c (Fcall_interactively): Use Finteractive_form also for subrs
	and compiled functions.

687 688 689 690 691 692
2007-09-08  Fredrik Axelsson  <f.axelsson@gmail.com>

	* window.c (prefer_window_split_horizontally): New variable.
	(display_buffer): Consider splitting window horizontally depending
	on prefer_window_split_horizontally.

693 694
2007-09-08  Eli Zaretskii  <eliz@gnu.org>

Juanma Barranquero's avatar
Juanma Barranquero committed
695
	* sysdep.c [WINDOWSNT]: Don't include sysselect.h.
696

697 698
2007-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>

699 700
	* s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.

701 702 703 704 705
	* frame.c (x_set_frame_parameters): Check number is positive before
	using XFASTINT.

	* window.c (freeze_window_start): Don't presume selected_window holds
	a window object.
706
	(Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
707

Juanma Barranquero's avatar
Juanma Barranquero committed
708
2007-09-07  Angelo Graziosi  <Angelo.Graziosi@roma1.infn.it>  (tiny change)
709 710 711

	* term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.

712 713 714 715 716 717
2007-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>

	* window.c (Vsplit_window_preferred_function): New var.
	(Fdisplay_buffer): Use it.
	(syms_of_window): Export, and initialize it.

718 719 720 721
2007-09-06  Pixel  <pixel@mandriva.com>  (tiny change)

	* image.c (gif_load): Fix bug: Handle nonexistent colormap.

Glenn Morris's avatar
Glenn Morris committed
722 723
2007-09-06  Glenn Morris  <rgm@gnu.org>

Glenn Morris's avatar
Glenn Morris committed
724
	* gtkutil.c (menu_grab_callback) <cnt>:
Glenn Morris's avatar
Glenn Morris committed
725 726 727
	* xselect.c (x_reply_selection_request) <cnt>: Move static
	variable to file scope.

728 729 730 731 732
2007-09-06  Stefan Monnier  <monnier@iro.umontreal.ca>

	* xdisp.c (redisplay_internal): Make sure Elisp code always sees
	consistent values of selected_frame and selected_window.

Jason Rumney's avatar
Jason Rumney committed
733 734 735 736
2007-09-04  Jason Rumney  <jasonr@gnu.org>

	* w32console.c (initialize_w32_display): Zero unused hooks.

737 738 739 740 741
2007-09-04  Dan Nicolaescu  <dann@ics.uci.edu>

	* term.c (Vsuspend_tty_functions, Vresume_tty_functions)
	(syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.

742 743
2007-09-04  Jason Rumney  <jasonr@gnu.org>

744 745 746 747
	* term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
	in w32console.c.  Set up input.  Remove XXX comments that have been
	confirmed as correct.

Jason Rumney's avatar
Jason Rumney committed
748 749
	* s/ms-w32.h (MULTI_KBOARD): Define.

750 751 752 753 754 755 756
	* w32console.c (one_and_only_w32cons): Remove.
	(initialize_w32_display): Take terminal argument.

	* term.c (init_tty) [WINDOWSNT]: Pass terminal to
	initialize_w32_display.
	(init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.

757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778
	* termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.

	* keyboard.c (discard_mouse_events): Discard it.
	(make_lispy_event): Translate it to a lisp event.
	(lispy_wheel_names): Add wheel-left and right events.
	(syms_of_keyboard): Enlarge wheel_syms.

	* w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
	<WM_MOUSEHWHEEL>: Pass new system message to lisp.

	* w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.

	* w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
	from WM_MOUSEHWHEEL.
	(w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.

	* w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
	terminal.

	* w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
	keyboard for the terminal.

779 780 781 782 783 784 785 786
2007-09-04  Dan Nicolaescu  <dann@ics.uci.edu>

	* term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
	(Vresume_tty_hook): Rename from Vresume_tty_functions.
	(syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
	and resume-tty-function to resume-tty-hook.
	(Fsuspend_tty, Fresume_tty): Use new names.

787 788 789 790 791
2007-09-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
	if it starts with "n:".

792 793 794 795
2007-08-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.

796 797
2007-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>

798 799 800 801 802 803
	* frame.h:
	* frame.c (Qterm_environment_variable): Remove.
	(syms_of_frame): Don't init and staticpro it.

	* callproc.c (getenv_internal): Remove special case for $TERM.

804 805 806 807 808 809 810
	* callproc.c (Vinitial_environment): New variable.
	(set_initial_environment): Initialize it.
	(syms_of_callproc): Declare it.
	(child_setup): Don't mess with TERM via Qterm_environment_variable; the
	TERM under which a process runs is never related to the TERM in which
	Emacs is running.

811 812 813 814 815
2007-08-29  Dan Nicolaescu  <dann@ics.uci.edu>

	* config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
	* s/darwin.h: ... do it here.

816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836
2007-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>

	* lisp.h (set_initial_environment): Rename from set_global_environment.

	* Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
	removed by mistake on the multi-tty branch.

	* frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
	(Fmodify_frame_parameters): Return a value.

	* image.c (png_load): Comment-out var only used in commented-out code.

	* term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
	before passing it to mark_object.

	* xfaces.c (internal_resolve_face_name): Return a value.
	(internal_resolve_face_name, resolve_face_name_error): Comment out.

	* xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
	(x_icon): Comment-out var only used in commented-out code.

837 838 839 840 841
2007-08-29  Romain Francoise  <romain@orebokech.com>

	* keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
	QUIT hasn't been provided.

Miles Bader's avatar
Miles Bader committed
842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878
2007-08-29  Dan Nicolaescu  <dann@ics.uci.edu>

	* callproc.c (child_setup, getenv_internal): Use the
	display-environment-variable and term-environment-variable frame
	params.
	(set_initial_environment): Initialise Vprocess_environment.

	* config.in: Disable multi-keyboard support on a mac.

	* frame.c (Qterm_environment_variable)
	(Qdisplay_environment_variable): New variables.
	(syms_of_frame): Intern and staticpro them.
	(Fmake_terminal_frame): Disable output method test.

	* frame.h: Declare them here.

	* macfns.c (x_set_mouse_color): Get rif from the frame.
	(x_set_tool_bar_lines): Don't use updating_frame.
	(mac_window): Add 2 new parameters for consistency with other systems.
	(Fx_create_frame): Fix doc string.  Rename the parameter.  Set the
	frame parameters following what is done in X11 and w32.  Don't use
	FRAME_MAC_DISPLAY_INFO.
	(Fx_open_connection, start_hourglass): Remove window-system check.
	(x_create_tip_frame): Get the keyboard from the terminal.

	* macmenu.c: Reorder includes.
	(Fx_popup_menu): Use terminal specific mouse_position_hook.

	* macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
	terminal parameter.
	(x_clear_frame): Add a frame parameter.
	(note_mouse_movement): Get rif from the frame.
	(mac_term_init): Initialize the terminal.
	(mac_initialize): Make static and move terminal initialization ...
	(mac_create_terminal): ... to this new function.

	* macterm.h (struct mac_display_info): Add terminal.
879
	(mac_initialize): Delete declaration.
Miles Bader's avatar
Miles Bader committed
880

881
	* puresize.h (BASE_PURESIZE): Increase base value to 1164000.
Miles Bader's avatar
Miles Bader committed
882 883 884 885 886 887 888 889 890

	* sysdep.c: Comment out text after #endif.

	* term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
	is defined.  Better initialize ttys in windows.  Use terminal
	specific mouse_position_hook.

	* termhooks.h (union display_info): Add mac_display_info.

891 892
	* w32fns.c (Fx_create_frame): Use kboard from the terminal.
	Set the default minibuffer frame, window_system and the rest of the
Miles Bader's avatar
Miles Bader committed
893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913
	frame parameters following what is done in X11.

	* w32term.c (w32_initialize): Make static.

	* xselect.c (x_handle_selection_clear): Only access
	terminal->kboard when MULTI_KBOARD is defined.

	* s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
	(SYSTEM_PURESIZE_EXTRA): Only define on Carbon.

2007-08-29  Jason Rumney  <jasonr@gnu.org>

	* frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
	(make_terminal_frame) [WINDOWSNT]: Initialize terminal.

	* fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
	(mac_init_fringe) [MAC_OS]: Get rif from selected_frame.

	* keyboard.c (restore_kboard_configuration): Only define when
	MULTI_KBOARD defined.

Juanma Barranquero's avatar
Juanma Barranquero committed
914
	* makefile.w32-in: Update dependancies from Makefile.in.
Miles Bader's avatar
Miles Bader committed
915 916
	(OBJ1): Add terminal.$(O)

917 918
	* term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
	Don't define function body.
Miles Bader's avatar
Miles Bader committed
919 920 921 922 923 924 925 926 927 928 929
	(init_tty) [WINDOWSNT]: Use selected_frame for initializing.

	* termhooks.h (display_info) [WINDOWSNT]: Add w32.

	* w32.c (request_sigio, unrequest_sigio): Remove.

	* w32console.c (w32con_move_cursor, w32con_clear_to_end)
	(w32con_clear_frame, w32con_clear_end_of_line)
	(w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
	(w32con_delete_glyphs, w32con_set_terminal_window)
	(scroll_line, w32_sys_ring_bell): Add frame arg.
930 931
	(w32con_set_terminal_modes, w32con_reset_terminal_modes):
	Add terminal arg.
Miles Bader's avatar
Miles Bader committed
932 933 934 935 936 937 938 939 940
	(PICK_FRAME): Remove.
	(w32con_write_glyphs): Use frame specific terminal coding.
	(one_and_only_w32cons): New global variable.
	(initialize_w32_display): Use it for storing hooks.
	(create_w32cons_output): New function.

	* w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
	arg a frame.

941 942
	* w32fns.c (x_create_tip_frame): Set terminal and ref count.
	Set window_system.
Miles Bader's avatar
Miles Bader committed
943 944 945 946 947 948 949 950 951 952 953 954 955 956 957
	(x_set_tool_bar_lines): Don't use updating_frame.
	(Fx_create_frame): Set terminal and ref count.
	(Fx_open_connection): Remove window-system check.

	* w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.

	* w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
	(w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
	(x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
	Add frame arg.
	(x_delete_terminal, w32_create_terminal): New functions.
	(w32_term_init): Create a terminal.
	(w32_initialize): Move terminal specific initialization to
	w32_create_terminal.

958
	* w32term.h (x_output): Remove foreground_pixel and background_pixel.
Miles Bader's avatar
Miles Bader committed
959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981
	(w32_clear_rect, w32_clear_area): Use background from frame.
	(w32_display_info): Add terminal.
	(w32_sys_ring_bell, x_delete_display): Declare here.

	* xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.

	* s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.

2007-08-29  Kalle Olavi Niemitalo  <kon@iki.fi>  (tiny change)

	* keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
	Fix get_named_tty calls for the controlling tty.

2007-08-29  ARISAWA Akihiro  <ari@mbf.ocn.ne.jp>  (tiny change)

	* term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.

2007-08-29  Yoshiaki Kasahara  <kasahara@nc.kyushu-u.ac.jp>  (tiny change)

	* term.c (tty_insert_glyphs): Add missing first parameter.

2007-08-29  Karoly Lorentey  <karoly@lorentey.hu>

982 983
	* buffer.c (Fbuffer_list, Fbury_buffer):
	Take frame->buried_buffer_list into account.
Miles Bader's avatar
Miles Bader committed
984 985 986 987 988

	* cm.c (current_tty): New variable, for cmputc().
	(cmputc): Use it.
	(cmcheckmagic): Add tty parameter, look up terminal streams there.
	(calccost): Add tty parameter.  Use emacs_tputs() instead of tputs().
989 990
	(cmgoto): Add tty parameter.  Pass it on to calccost().
	Use emacs_tputs() instead of tputs().
Miles Bader's avatar
Miles Bader committed
991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010

	* cm.h (emacs_tputs): New macro to set current_tty, and then call
	tputs().
	(current_tty): New variable, for cmputc().
	(cmcheckmagic, cmputc, cmgoto): Add prototypes.

	* eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
	(internal_condition_case, internal_condition_case_1)
	(internal_condition_case_2): Don't abort when x_catching_errors.

	* fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
	(Fy_or_n_p): Likewise.  Use temporarily_switch_to_single_kboard to
	prevent crashes caused by bogus longjmps in read_char.

	* keymap.h (Fset_keymap_parent): Add EXFUN.

	* macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
	* w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
	Remove redundant definition.

1011 1012
	* macfns.c (x_set_mouse_color, x_make_gc):
	Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
Miles Bader's avatar
Miles Bader committed
1013

1014 1015
	* w32term.c (x_free_frame_resources):
	Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
Miles Bader's avatar
Miles Bader committed
1016 1017 1018 1019 1020 1021
	(w32_initialize): Use the accessor macros for terminal characteristics.

	* macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
	Use the accessor macros for terminal characteristics.
	* msdos.c (internal_terminal_init): Use the accessor macros for
	terminal characteristics.
1022 1023
	(ScreenVisualBell, internal_terminal_init):
	Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
Miles Bader's avatar
Miles Bader committed
1024 1025 1026 1027

	* termopts.h (no_redraw_on_reenter): Declare.

	* alloc.c (emacs_blocked_malloc): Disable mallopt call.
Juanma Barranquero's avatar
Juanma Barranquero committed
1028
	(mark_terminals, mark_ttys): Declare.
Miles Bader's avatar
Miles Bader committed
1029
	(Fgarbage_collect): Call them.
Juanma Barranquero's avatar
Juanma Barranquero committed
1030
	(mark_object): Mark buried_buffer_list.
Miles Bader's avatar
Miles Bader committed
1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051

	* prefix-args.c: Include stdlib.h for exit.

	* syssignal.h: Add comment.

	* indent.c: Include stdio.h.

	* window.h (Vinitial_window_system): Declare.
	(Vwindow_system): Delete declaration.

	* fontset.c (Finternal_char_font): Use FRAME_RIF.

	* image.c (lookup_image): Don't initialize `c' until the xasserts
	have been run.

	* gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
	FRAME_FOREGROUND_PIXEL.

	* print.c (print_preprocess): Don't lose print_depth levels while
	iterating.

1052 1053
	* widget.c (update_from_various_frame_slots):
	Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
Miles Bader's avatar
Miles Bader committed
1054 1055 1056 1057

	* window.c (set_window_buffer): Don't call clear_mouse_face on tty
	frames.
	(window_internal_height): Remove bogus make_number call.
1058
	(init_window_once): Call make_terminal_frame with two zero parameters.
Miles Bader's avatar
Miles Bader committed
1059 1060 1061

	* fileio.c (Fread_file_name): Update comment.

1062 1063
	* callint.c (Fcall_interactively):
	Use temporarily_switch_to_single_kboard instead of single_kboard_state.
Miles Bader's avatar
Miles Bader committed
1064 1065 1066 1067
	Make sure it is correctly unwound.

	* xsmfns.c (x_session_close): New function.

Juanma Barranquero's avatar
Juanma Barranquero committed
1068
	* coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
Miles Bader's avatar
Miles Bader committed
1069 1070 1071 1072
	Delete declarations.

	* xterm.h: Remove declaration for x_fully_uncatch_errors.
	(x_output): Remove background_pixel and foreground_pixel fields.
Juanma Barranquero's avatar
Juanma Barranquero committed
1073
	(x_display_info): Add new field TERMINAL.  Remove KBOARD field.
Miles Bader's avatar
Miles Bader committed
1074 1075 1076 1077 1078 1079 1080
	(x_delete_device):
	(x_session_close): Declare.

	* lread.c: Include setjmp.h.  Update declaration of `read_char'.
	(read_filtered_event): Call `read_char' with a local
	`wrong_kboard_jmpbuf'.

1081 1082
	* minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
	Don't call single_kboard_state.  Use FRAME_RIF.
Miles Bader's avatar
Miles Bader committed
1083 1084 1085 1086

	* process.c (Fmake_network_process): Don't unrequest_sigio on modern
	systems.

1087
	* lisp.h (set_process_environment): Rename to `set_global_environment'.
Juanma Barranquero's avatar
Juanma Barranquero committed
1088
	(Fframe_with_environment, Fset_input_meta_mode)
Miles Bader's avatar
Miles Bader committed
1089
	(Fset_quit_char): EXFUN.
Juanma Barranquero's avatar
Juanma Barranquero committed
1090
	(x_create_device, tty_output, terminal, tty_display_info): Declare.
Miles Bader's avatar
Miles Bader committed
1091 1092 1093
	(init_sys_modes, reset_sys_modes): Update prototypes.
	(init_all_sys_modes, reset_all_sys_modes): New prototypes.

1094 1095
	* keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
	Vlocal_key_translation_map, and Vkeyboard_translate_table.
Juanma Barranquero's avatar
Juanma Barranquero committed
1096
	(Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
Miles Bader's avatar
Miles Bader committed
1097
	Delete declarations.
Juanma Barranquero's avatar
Juanma Barranquero committed
1098 1099
	(Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
	(temporarily_switch_to_single_kboard, tty_read_avail_input):
Miles Bader's avatar
Miles Bader committed
1100 1101 1102 1103
	New declarations.

	* emacs.c (main): Don't call init_sys_modes(), the new term_init()
	already does that during init_display().  Call syms_of_keymap
1104 1105
	before syms_of_keyboard.  Call `syms_of_terminal'.
	Call set_initial_environment, not set_process_environment.
Miles Bader's avatar
Miles Bader committed
1106 1107 1108 1109
	(shut_down_emacs): Call reset_all_sys_modes() instead of
	reset_sys_modes().

	* xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
Juanma Barranquero's avatar
Juanma Barranquero committed
1110 1111 1112
	(internal_resolve_face_name, resolve_face_name_error): New functions.
	(resolve_face_name): Protect against loops and errors thrown by Fget.
	(realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
Miles Bader's avatar
Miles Bader committed
1113 1114 1115 1116 1117 1118 1119 1120 1121
	(Ftty_supports_face_attributes_p): Update tty_capable_p call.

	* scroll.c: Replace CURTTY() with local variables throughout the
	file (where applicable).
	(calculate_scrolling, calculate_direct_scrolling)
	(scrolling_1, scroll_cost): Use the accessor macros for terminal
	characteristics.

	* keymap.c (Vfunction_key_map): Remove.
1122
	(Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
Miles Bader's avatar
Miles Bader committed
1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161
	(syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
	(Vkey_translation_map): Remove.
	(syms_of_keymap): Remove DEFVAR for key-translation-map.
	(Fdescribe_buffer_bindings):
	(read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
	Update for terminal-local key-translation-map.

	* Makefile.in (callproc.o): Update dependencies.
	(lisp, shortlisp): Add termdev.elc.
	(obj): Add terminal.o.
	(terminal.o): Add dependencies.
	[HAVE_CARBON]: Make terminal.o depend on macgui.h.
	(data.o, fns.o): Add termhooks.h dependency.
	(SOME_MACHINE_LISP): Add dnd.elc.
	(minibuf.o): Fix typo.
	Update dependencies.

	* data.c (do_symval_forwarding, store_symval_forwarding)
	(find_symbol_value): Use the selected frame's keyboard, not
	current_kboard.

	* .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
	Vwindow_system.

	* xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
	Fmenu_bar_open.
	(syms_of_xmenu): Update defsubr.
	(mouse_position_for_popup, Fx_popup_menu)
	(Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
	(set_frame_menubar, free_frame_menubar)
	(create_and_show_popup_menu, xmenu_show, )
	(create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
	an X frame.

	* xselect.c (x_own_selection): Abort if not an X frame.
	(some_frame_on_display): Check if it is an X frame.
	(x_handle_selection_clear): Deal with MULTI_KBOARD.

	* coding.c: Include frame.h and termhooks.h.
Juanma Barranquero's avatar
Juanma Barranquero committed
1162
	(terminal_coding, keyboard_coding): Delete.
Miles Bader's avatar
Miles Bader committed
1163 1164 1165
	(Fset_terminal_coding_system_internal):
	(Fset_keyboard_coding_system_internal):
	(Fkeyboard_coding_system):
Juanma Barranquero's avatar
Juanma Barranquero committed
1166 1167
	(Fterminal_coding_system): Add a terminal parameter.
	Get terminal_coding from the terminal.
Miles Bader's avatar
Miles Bader committed
1168 1169 1170 1171 1172
	(init_coding_once): Don't call setup_coding_system here.

	* dispextern.h (set_scroll_region, turn_off_insert)
	(turn_off_highlight, background_highlight, clear_end_of_line_raw)
	(tty_clear_end_of_line, tty_setup_colors)
Juanma Barranquero's avatar
Juanma Barranquero committed
1173
	(delete_tty, updating_frame)
Miles Bader's avatar
Miles Bader committed
1174 1175 1176
	(produce_special_glyphs, produce_glyphs, write_glyphs)
	(insert_glyphs): Remove.
	(raw_cursor_to, clear_to_end, tty_turn_off_insert)
Juanma Barranquero's avatar
Juanma Barranquero committed
1177
	(tty_turn_off_highlight, get_tty_size): Add declaration.
1178
	(tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
Miles Bader's avatar
Miles Bader committed
1179 1180 1181

	* frame.h (enum output_method): Add output_initial.
	(struct x_output): Delete.
1182 1183
	(FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
	Access foreground_pixel and background_pixel directly from the frame.
Miles Bader's avatar
Miles Bader committed
1184 1185
	(tty_display): Delete.
	(struct frame): Add buried_buffer_list, foreground_pixel,
Juanma Barranquero's avatar
Juanma Barranquero committed
1186
	background_pixel and terminal.  Delete kboard
Miles Bader's avatar
Miles Bader committed
1187 1188 1189 1190 1191
	(union output_data): Add tty.
	(FRAME_KBOARD): Get the kboard from the terminal.
	(FRAME_INITIAL_P): New macro.
	(Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
	(Qterm_environment_variable, Qdisplay_environment_variable)
1192 1193
	(make_terminal_frame, Qburied_buffer_list, Qwindow_system):
	New declarations.
Miles Bader's avatar
Miles Bader committed
1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206

	* termchar.h (tty_output, tty_display_info): New structures.
	(tty_list): Declare.
	(FRAME_TTY, CURTTY): New macros.
	(must_write_spaces, min_padding_speed, fast_clear_end_of_line)
	(line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
	(scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
	(dont_calculate_costs, no_redraw_on_reenter): Remove declarations.

	* callproc.c: Include frame.h and termhooks.h, for terminal
	parameters.
	(add_env): New function.
	(child_setup): Use it.
1207
	(child_setup, getenv_internal): Handle the new Vprocess_environment.
Miles Bader's avatar
Miles Bader committed
1208 1209 1210
	(getenv_internal): Fix get_terminal_param call.
	(Fgetenv_internal, egetenv): Update doc.
	(syms_of_callproc): Initialize Vprocess_environment to nil.
Juanma Barranquero's avatar
Juanma Barranquero committed
1211
	Register and initialize them.  Remove obsolete defvars.  Update doc
Miles Bader's avatar
Miles Bader committed
1212 1213
	strings.
	(child_setup): Handle Vlocal_environment_variables.
1214 1215
	(getenv_internal): Add terminal parameter.
	Handle Vlocal_environment_variables.
Miles Bader's avatar
Miles Bader committed
1216 1217
	(Fgetenv_internal): Add terminal parameter.
	(child_setup, getenv_internal, Fgetenv_internal): Store the local
1218
	environment in a frame (not terminal) parameter.  Update doc strings.
Miles Bader's avatar
Miles Bader committed
1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239
	(set_initial_environment): Rename from set_global_environment.
	Store Emacs environment in initial frame parameter.

	* xdisp.c (redisplay_internal): Update references to
	`previous_terminal_frame'.
	(display_mode_line, Fformat_mode_line): Replace calls to
	`push_frame_kboard' with `push_kboard'.
	(get_glyph_string_clip_rects): Add extra parentheses and
	braces to prevent compiler warnings.
	(calc_pixel_width_or_height): Add xassert to check that the
	frame is alive.  Don't call `lookup_image' on a termcap frame.
	(message2_nolog, message3_nolog, redisplay_internal)
	(set_vertical_scroll_bar, redisplay_window, check_x_display_info)
	(x_set_scroll_bar_foreground, x_set_scroll_bar_background)
	(Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
	(Fx_display_pixel_width, Fx_display_pixel_height)
	(Fx_display_planes, Fx_display_color_cells)
	(Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
	(Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
	(Fx_display_backing_store, Fx_display_visual_class)
	(Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
Juanma Barranquero's avatar
Juanma Barranquero committed
1240
	Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
Miles Bader's avatar
Miles Bader committed
1241 1242

	* xfns.c (x_set_foreground_color x_set_background_color)
1243 1244
	(x_set_mouse_color, x_set_cursor_color, x_make_gc):
	Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
Miles Bader's avatar
Miles Bader committed
1245 1246 1247 1248
	(Fx_create_frame, x_create_tip_frame, build_string, x_window)
	(Fx_create_frame, x_create_tip_frame): Don't create frames on a
	terminal that is being deleted.
	(Fx_create_frame): Use `store_frame_param' to set `window-system'
1249
	frame parameter, and make sure it overrides any user-supplied setting.
Miles Bader's avatar
Miles Bader committed
1250 1251 1252 1253 1254 1255
	(Fx_close_connection, Fx_synchronize): Unify argument names with
	the rest of the DEFUNs.

	* dispnew.c (Fsend_string_to_terminal): Update call to
	`get_tty_terminal'.
	(Fredraw_frame, Fsend_string_to_terminal)
Glenn Morris's avatar
Glenn Morris committed
1256
	(Fsend_string_to_terminal, init_display): Use FRAME_RIF,
Miles Bader's avatar
Miles Bader committed
1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290
	FRAME_TERMCAP_P and FRAME_TTY.
	(window_change_signal): Don't believe width/height values that are
	impossibly small.
	(Vinitial_window_system): Rename from Vwindow_system.
	(termscript, Wcm, rif): Delete.

	* termhooks.h (struct terminal): New struct containing the
	previously global text display hooks and new members NAME,
	DELETED and PARAM_ALIST.
	(FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
	(TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
	(FRAME_RIF): New macros.
	(get_terminal_param, get_device): New declarations.
	(termscript): Delete declaration.

	* xterm.c (x_initialize): Use Fset_input_interrupt_mode.
	(XTflash, x_free_frame_resources, x_scroll_bar_create)
	(x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
	FRAME_FOREGROUND_PIXEL.
	(x_fully_uncatch_errors): Disable definition.
	(x_scroll_bar_expose): Fix reference to foreground pixel.
	(XTread_socket): Disable loop on all X displays.
	(x_delete_terminal): Don't set terminal->deleted and let
	delete_terminal delete the frames on the terminal.
	(x_delete_display): Doc update to reflect changes in
	delete_terminal.
	(x_display_info) <terminal>: Move member earlier in the struct.
	(deleting_tty): Remove old variable.
	(Fsuspend_tty): Call clear_tty_hooks.
	(Fresume_tty, init_tty): Call set_tty_hooks.
	(Ftty_display_color_p, Ftty_display_color_cells): Don't throw
	errors on X frames.
	(x_catch_errors_unwind): Abort if x_error_message is NULL.
	(handle_one_xevent): Initialize `f' to NULL.
Dan Nicolaescu's avatar
Dan Nicolaescu committed
1291
	(x_delete_terminal, x_create_terminal): New functions.
Miles Bader's avatar
Miles Bader committed
1292 1293 1294 1295 1296 1297 1298 1299 1300
	(XTset_terminal_modes, XTreset_terminal_modes)
	(XTread_socket, x_connection_closed, x_term_init)
	(x_term_init, x_delete_display): Add terminal parameter.
	(x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
	X connections.

	* frame.c (Fframep): Deal with output_initial.
	(Qbuffer_predicate, Qbuffer_list, Qburied_buffer_list, Qtty)
	(Qtty_type, Qwindow_system, Qenvironment)
1301
	(Qterm_environment_variable, Qdisplay_environment_variable): New vars.
Miles Bader's avatar
Miles Bader committed
1302 1303 1304 1305 1306
	(x_set_screen_gamma, store_frame_param): Fix compilation errors.
	(make_terminal_frame): Don't create frames on a terminal that is
	being deleted.
	(make_terminal_frame): Use FRAME_BACKGROUND_PIXEL and
	FRAME_FOREGROUND_PIXEL.
1307
	(store_frame_param): Check for found_for_frame before calling XFRAME.