ChangeLog 628 KB
Newer Older
Jason Rumney's avatar
Jason Rumney committed
1
2005-02-15  Benjamin Riefenstahl  <Benjamin.Riefenstahl@epost.de>
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47

	* w32select.c: Summary: Thorough rework to implement Unicode
	clipboard operations and delayed rendering.

	Drop last_clipboard_text and related code, keep track of
	ownership via clipboard_owner instead.  Drop old #if0
	sections.

	(DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
	(clipboard_owner, modifying_clipboard, cfg_coding_system)
	(cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
	(current_coding_system, current_requires_encoding)
	(current_num_nls, current_clipboard_type, current_lcid): New
	static variables.

	(convert_to_handle_as_ascii, convert_to_handle_as_coded)
	(render, render_all, run_protected, lisp_error_handler)
	(owner_callback, create_owner, setup_config)
	(enum_locale_callback, cp_from_locale, coding_from_cp): New
	local functions.

	(term_w32select, globals_of_w32select): New global functions.

	(Fw32_set_clipboard_data): Ignore parameter FRAME, use
	clipboard_owner instead.  Use delayed rendering and provide
	all text formats.  Provide CF_LOCALE if necessary.

	(Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
	CF_LOCALE.  Fall back to CF_TEXT, if CF_UNICODETEXT is not
	available.  Force DOS line-ends for decoding.

	(Fx_selection_exists_p): Handle CF_UNICODETEXT.

	(syms_of_w32select): Init and register new variables.

	* w32.h: Add prototypes for globals_of_w32select and
	term_w32select.  Make the neighboring K&R declarations into
	prototypes, too.

	* emacs.c: Include w32.h to get function prototypes.
	(main): Call globals_of_w32select.

	* w32.c (term_ntproc): Call term_w32select. 

	* s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.

Kim F. Storm's avatar
Kim F. Storm committed
48 49 50 51 52
2005-02-16  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
	at end of display vector.

53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
2005-02-15  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (get_next_display_element): Fix escape-glyph criterion
	for mode and header lines.

	* lread.c (syms_of_lread) <user-init-file>: Doc fix.

	* keymap.h (describe_map_tree): Change decl.

	* keyboard.c (command_loop_1): Always use safe_run_hooks
	to run Qdeferred_action_function.

	* keymap.c (describe_map_tree): New arg MENTION_SHADOW.  Calls changed.
	(describe_map, describe_vector): Likewise.  When it's 1,
	don't omit shadowed bindings, instead mark them as shadowed.

	* doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
	for describe_map_tree.  Pass 1 for MENTION_SHADOW.

	* data.c (Fsetq_default): Allow no arg case.

74 75 76 77 78 79 80 81 82
2005-02-14  Kenichi Handa  <handa@m17n.org>

	* coding.c (encode_coding_string): Always return a unibyte string.
	If NOCOPY is nonzero and there's no need of encoding, make STR
	unibyte directly.

	* xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
	multibyte string, signal an error instead of aborting.

83 84 85 86
2005-02-12  Dan Nicolaescu  <dann@ics.uci.edu>

	* keyboard.c: If HAVE_FCNTL_H include fcntl.h.

Kim F. Storm's avatar
Kim F. Storm committed
87 88 89 90
2005-02-12  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (expose_window): Don't fix overlaps for mode lines.

Kim F. Storm's avatar
Kim F. Storm committed
91 92 93 94 95
2005-02-10  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
	if it moves outside window or it doesn't display text.

Kim F. Storm's avatar
Kim F. Storm committed
96 97 98 99 100
2005-02-09  Kim F. Storm  <storm@cua.dk>

	* undo.c (Fprimitive_undo): Check that undo function does not
	switch buffer.

101 102 103 104 105 106 107
2005-02-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xselect.c (selection_data_to_lisp_data): For the special case
	type == XA_ATOM, data contains array of int, not array of Atom.
	(x_property_data_to_lisp, selection_data_to_lisp_data): Comment
	update: data must be array of int for format == 32.

108 109 110 111
2005-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>

	* undo.c (Fprimitive_undo): Check veracity of delta,start,end.

112 113
2005-02-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

114 115 116
	* xfns.c (Fx_change_window_property): Use long array when format is 32.
	(Fx_window_property): If format is 32 and long is bigger than 32 bits,
	convert long array returned from XGetWindowProperty to an int array.
117 118
	(x_set_tool_bar_lines): Check that width and height is greater than
	zero before clearing area.
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133

	* xselect.c (x_reply_selection_request): Pass long array to
	XChangeProperty so that 64 bit longs are handeled correctly.
	(x_get_window_property): If format is 32 and long is bigger than 32
	bits convert data from XGetWindowProperty from long array to int array.
	(lisp_data_to_selection_data): When the input is a vector and the
	format is 32, allocate a long array even if long is bigger than 32 bits.
	(x_fill_property_data): Use char, short and long as the man page
	for XChangeProperty specifies.  This way the data returned is OK for
	both 32 and 64 bit machines.
	(x_handle_dnd_message): Calculate size correctly even for 64 bit
	machines.
	(Fx_send_client_event): Undo change from 2005-02-05,
	x_fill_property_data now handles that case.

134
	* xfns.c (Fx_backspace_delete_keys_p): Add comment about the
135 136
	reason for the approach in the code.

Kim F. Storm's avatar
Kim F. Storm committed
137 138 139 140
2005-02-07  Kim F. Storm  <storm@cua.dk>

	* undo.c (Fprimitive_undo): Record max one dummmy apply element.

141 142 143 144 145 146
2005-02-06  Richard M. Stallman  <rms@gnu.org>

	* eval.c (Frun_hook_with_args)
	(Frun_hook_with_args_until_success)
	(Frun_hook_with_args_until_failure): Doc fixes.

147 148
2005-02-05  Andreas Schwab  <schwab@suse.de>

149
	* sysdep.c (sys_subshell): Properly terminate execlp argument list.
150

151 152 153 154 155
2005-02-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
	the longs in a XClientMessageEvent correctly when long is 64 bits.

Eli Zaretskii's avatar
Eli Zaretskii committed
156 157 158 159 160
2005-02-05  Eli Zaretskii  <eliz@gnu.org>

	* xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
	instead of HAVE_X_WINDOWS, for non-X windowed sessions.

161 162 163 164 165 166 167 168 169 170 171 172
2005-02-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (menubar_selection_callback): Force out GTK buffered
	events so the menu event comes after them.  This is to prevent sit-for
	from exiting on buffered events directly after a menu selection,
	lisp code for Help => About Emacs uses sit-for.

	* gtkutil.c (create_menus): Connect selection-done event instead of
	the deactivate event to deactivate_cb.  This will make the last
	leave event come before the call to deactivate_cb, so the leave
	event does not make sit-for exit after a menu selection.

Kim F. Storm's avatar
Kim F. Storm committed
173 174 175 176 177 178 179 180 181
2005-02-03  Kim F. Storm  <storm@cua.dk>

	* dispnew.c (build_frame_matrix_from_leaf_window)
	 [!GLYPH_DEBUG]: Fix xassert.

	* xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.

	* xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.

182 183 184 185 186 187 188
2005-02-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
	the compiling OS version.

	* macfns.c (x_create_tip_frame): Likewise.

189
	* macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
190

191 192 193 194 195 196 197 198
2005-02-03  Richard M. Stallman  <rms@gnu.org>

	* xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.

	* xdisp.c (echo_area_display): Clear echo_message_buffer.

	* buffer.c (Fbury_buffer): Doc fix.

199 200
2005-02-02  Steven Tamm  <steventamm@mac.com>

201 202
	* macfns.c (unwind_create_frame): Fixing compile error due to
	xassert being uncondition, but predicate is.
203
	* dispnew.c (update_window): Fixing compile error due to
204
	xassert being uncondition, but predicate is.
205

206 207 208 209
2005-02-02  Miles Bader  <miles@gnu.org>

	* dispextern.h (xassert): Enable unconditionally.

Kim F. Storm's avatar
Kim F. Storm committed
210 211 212 213
2005-02-02  Kim F. Storm  <storm@cua.dk>

	* undo.c (Fprimitive_undo): Fix dummy apply undo entry.

Kenichi Handa's avatar
Kenichi Handa committed
214 215 216 217 218 219 220 221 222 223
2005-02-02  Kenichi Handa  <handa@m17n.org>

	* casefiddle.c (casify_object): Enable changing characters of
	different byte length.
	(casify_region): Fix loop condition, args to replace_range_2, and
	update opoint_byte.

	* insdel.c (replace_range_2): Fix bugs in adjusting markers and
	point.

Kim F. Storm's avatar
Kim F. Storm committed
224 225 226 227 228
2005-02-01  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (back_to_previous_visible_line_start): Reset iterator
	stack before calling handle_display_prop.

Kim F. Storm's avatar
Kim F. Storm committed
229 230 231 232 233 234 235 236 237
2005-01-31  Kim F. Storm  <storm@cua.dk>

	* undo.c (Qapply): New lisp var.
	(syms_of_undo): Intern and staticpro it.
	(Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
	(apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).

	* buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.

238 239
2005-01-30  Jesper Harder  <harder@phys.au.dk>

Kim F. Storm's avatar
Kim F. Storm committed
240 241
	* macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
	<mac-emulate-three-button-mouse>: Fix docstring indentation.
242

Luc Teirlinck's avatar
Luc Teirlinck committed
243 244 245
2005-01-29  Luc Teirlinck  <teirllm@auburn.edu>

	* undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
246
	Increase value to 3 Meg.
Luc Teirlinck's avatar
Luc Teirlinck committed
247

248 249 250 251 252
2005-01-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
	button events are not received otherwise.

253 254 255 256 257 258
2005-01-29  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.

	* undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.

Stefan Monnier's avatar
Stefan Monnier committed
259 260 261 262
2005-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>

	* keymap.c (access_keymap): YAILOM.

Kim F. Storm's avatar
Kim F. Storm committed
263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278
2005-01-27  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_phys_cursor_geometry): New function to calculate
	phys cursor position and size for hollow cursor.  Position is
	aligned with get_glyph_string_clip_rect and ensures that a hollow
	cursor is shown, even when the actual glyph is not visible.

	* dispextern.h (get_phys_cursor_geometry): Add prototype.

	* xterm.c (x_clip_to_row): Ensure y >= 0.
	(x_draw_hollow_cursor): Use get_phys_cursor_geometry.

	* w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.

	* macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.

279 280 281 282
2005-01-27  Stefan Monnier  <monnier@iro.umontreal.ca>

	* xterm.c (x_error_quitter): Add a prototype.  Make it static again.

Kim F. Storm's avatar
Kim F. Storm committed
283 284 285 286 287 288
2005-01-27  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_glyph_string_clip_rect): Always show a cursor
	glyph, even when row is only partially visible and actual cursor
	position is not visible.

289 290 291 292 293
2005-01-24  Richard M. Stallman  <rms@gnu.org>

	* xterm.c (x_error_quitter): No longer static, and moved after
	x_error_handler.

Kim F. Storm's avatar
Kim F. Storm committed
294 295 296 297 298
2005-01-24  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (move_it_by_lines): If we move forward after going too
	far back, cancel move if end position is same as start position.

299 300 301 302
2005-01-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* dispextern.h (struct glyph_string): New members clip_head and
	clip_tail.
Kim F. Storm's avatar
Kim F. Storm committed
303

304 305 306 307 308 309 310
	* xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
	region to the area between clip_head and clip_tail.
	(draw_glyphs): Record the area that need to be actually redrawn to
	the new variables clip_head and clip_tail when there are
	overhangs.  Set values of these variables to the corresponding
	members in struct glyph_string.  Refine x coordinates for
	notice_overwritten_cursor using clip_head and clip_tail.
Kim F. Storm's avatar
Kim F. Storm committed
311

312 313 314 315 316
	* macgui.h (STORE_XCHARSETSTRUCT): New macro.

	* macterm.c (mac_compute_glyph_string_overhangs): Implement with
	QDTextBounds.
	(x_draw_glyph_string): Don't fill the background of the successor
Kim F. Storm's avatar
Kim F. Storm committed
317
	of a glyph with a right overhang if the successor will draw a cursor.
318
	(XLoadQueryFont): Obtain font metrics using QDTextBounds.
Kim F. Storm's avatar
Kim F. Storm committed
319
	(x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
320

Kim F. Storm's avatar
Kim F. Storm committed
321 322
2005-01-24  Kim F. Storm  <storm@cua.dk>

323 324 325 326 327
	* window.c (window_scroll_pixel_based): Fix scrolling in the wrong
	direction if window height was smaller than next-screen-context-lines.
	Now always scroll at least one line in the requested direction.
	Ensure that we actually do scroll backwards when requested to do so.

Kim F. Storm's avatar
Kim F. Storm committed
328 329 330
	* xdisp.c (redisplay_window): Only try to make cursor line fully
	visible once (to avoid redisplay loop).

Kim F. Storm's avatar
Kim F. Storm committed
331 332
2005-01-23  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
333
	* window.c (Fpos_visible_in_window_p): Simplify return value for
Kim F. Storm's avatar
Kim F. Storm committed
334
	partially visible rows.
Kim F. Storm's avatar
Kim F. Storm committed
335 336
	(window_scroll_pixel_based): Adapt to that change.

Kim F. Storm's avatar
Kim F. Storm committed
337 338 339
	* window.c (window_scroll_pixel_based): Force moving to next line
	if scrolling doesn't move start point, e.g. if looking at tall image.

Kim F. Storm's avatar
Kim F. Storm committed
340
	* xdisp.c (pos_visible_p): Return 0 if non-interactive.
Kim F. Storm's avatar
Kim F. Storm committed
341 342
	Clear last_height before calling line_bottom_y to get real height.
	Fix calculation of y.
Kim F. Storm's avatar
Kim F. Storm committed
343

344 345 346
2005-01-22  Steven Tamm  <steventamm@mac.com>

	* s/darwin.h: Removed PTY_ITERATION from here.
347
	(DARWIN): Define.
348 349 350 351 352
	* process.c (init_process): Default process-connection-type to
	nil on darwin 6 or less, t if it is 7 or higher.  This way the
	broken pty behavior is still allowed on darwin 6 for interactive
	processes for people that know what they are doing.

Kim F. Storm's avatar
Kim F. Storm committed
353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368
2005-01-22  Kim F. Storm  <storm@cua.dk>

	* window.c (auto_window_vscroll_p): New boolean.
	(syms_of_window): DEFVAR_BOOL it.
	(Fpos_visible_in_window_p): Extend return value to include RTOP
	and RBOT values if FULLY is nil.
	(window_scroll_pixel_based): Adjust vscroll for partially visible
	rows if auto_window_vscroll_p is set.
	(Fset_window_vscroll): Do nothing if vscroll is not modified.

	* xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
	to return number of partially invisible pixels at top and bottom
	of the dislay row at POS.

	* lisp.h (pos_visible_p): Fix prototype.

369 370 371 372
2005-01-21  Richard M. Stallman  <rms@gnu.org>

	* fileio.c (Fcopy_file): Doc fix.

373 374 375 376 377 378
2005-01-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
	(xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
	start of function for older compilers.

379 380 381 382 383 384 385 386 387
2005-01-20  Richard M. Stallman  <rms@gnu.org>

	* editfns.c (Fmessage): If arg is "", return "" (as before).

	* keymap.c (access_keymap): Protect from bad value of meta_prefix_char.

	* .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
	variable.

388 389
2005-01-20  Steven Tamm  <steventamm@mac.com>

390
	* editfns.c (Voperating_system_release): Add.
391 392
	(init_editfns): Assign new variable operating-system-release
	based on call to uname if available.
393
	(get_operating_system_release): Add function to
Kim F. Storm's avatar
Kim F. Storm committed
394
	allow c-level access to operating system release.
395 396 397

	* config.h: Regenerated.

398 399
	* s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
	(MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
400 401
	using ptys as '7'.

Kim F. Storm's avatar
Kim F. Storm committed
402 403
2005-01-20  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
404 405
	* alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.

Kim F. Storm's avatar
Kim F. Storm committed
406 407 408 409 410 411 412
	* xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
	Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.

	* macterm.c (x_draw_glyph_string_box): Likewise.

	* w32term.c (x_draw_glyph_string_box): Likewise.

Kim F. Storm's avatar
Kim F. Storm committed
413 414
	* indent.c (Fvertical_motion): Temporarily disable selective display.

Kim F. Storm's avatar
Kim F. Storm committed
415 416
2005-01-19  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
417 418 419
	* xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
	image property.

Kim F. Storm's avatar
Kim F. Storm committed
420 421
	* fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.

Kim F. Storm's avatar
Kim F. Storm committed
422 423 424 425 426
2005-01-18  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (fast_find_position): Backtrack to find first row if
	charpos is inside a display overlay that spans multiple lines.

Kenichi Handa's avatar
Kenichi Handa committed
427 428 429 430 431
2005-01-18  Kenichi Handa  <handa@m17n.org>

	* coding.c (decode_coding_iso2022): Translate invalid codes if
	translation-table is specified.

Kim F. Storm's avatar
Kim F. Storm committed
432 433 434 435 436 437 438
2005-01-18  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
	change.  If handle_display_prop indicates newline is replaced by
	image or text, move back to start of relevant overlay or interval
	and continue scan from there.  Simplify.

Kim F. Storm's avatar
Kim F. Storm committed
439 440
2005-01-17  Kim F. Storm  <storm@cua.dk>

441 442
	* dispnew.c (mode_line_string, marginal_area_string):
	Fix off-by-one error in search for glyph.
Kim F. Storm's avatar
Kim F. Storm committed
443

444 445 446 447
2005-01-16  Kim F. Storm  <storm@cua.dk>

	* macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.

448 449
2005-01-16  Steven Tamm  <steventamm@mac.com>

450
	* macterm.c (mac_to_x_fontname): Remove spurious argument.
451

452 453 454 455
2005-01-16  Andreas Schwab  <schwab@suse.de>

	* macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.

456 457 458 459 460
2005-01-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
	fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.

461 462 463
2005-01-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
464 465
	(READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
	New flags for readable_events.
466
	(get_filtered_input_pending, readable_filtered_events): Remove.
467 468 469 470 471 472 473 474 475
	(tracking_off): Call readable_events and get_input_pending with
	flag READABLE_EVENTS_DO_TIMERS_NOW.
	(readable_events): Move code from old readable_filtered_events here,
	but check new READABLE_EVENTS_* in argument flags instead of previous
	two boolean arguments do_timers_now and filter_events.
	If we are doing mouse tracking and the mouse moved, return only if
	READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
	(swallow_events): Call get_input_pending with flag
	READABLE_EVENTS_DO_TIMERS_NOW.
476
	(get_input_pending): Move code from old get_filtered_input_pending
477 478 479 480 481 482 483 484 485 486 487
	here.  Replace boolean arguments do_timers_now, filter_events with
	flags, and pass flags to readable_events.  Document new
	READABLE_EVENTS_* flags.
	(detect_input_pending_ignore_squeezables): New function.
	(detect_input_pending_run_timers): Call get_input_pending with flag
	READABLE_EVENTS_DO_TIMERS_NOW.
	(Finput_pending_p): Call get_input_pending with flags
	READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.

	* dispnew.c (update_window, update_frame_1): Replace calls to
	detect_input_pending with detect_input_pending_ignore_squeezables
488
	so that redisplay is not paused if the event queue contains only
489 490 491 492
	mouse movements.

	* lisp.h: Declare detect_input_pending_ignore_squeezables.

493 494
2005-01-15  Steven Tamm  <steventamm@mac.com>

495 496 497
	* macterm.c (Vmac_use_core_graphics): Declare variable for
	mac-allow-anti-aliasing.
	(syms_of_macterm): DEFVAR_LISP and initialize it.
498
	(mac_draw_string_common): Use core graphics text rendering if
499
	mac-allow-anti-aliasing is enabled.
500

501 502 503
	* macfns.c (Fx_file_dialog): Save As dialog includes only the
	file name in the text box.

504 505
2005-01-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

506 507
	* macfns.c (x_set_foreground_color, x_set_background_color):
	Sync with xfns.c.
508 509 510 511
	(mac_window, x_create_tip_frame): Use XSetWindowBackground.
	* macterm.c (XSetBackground, XSetWindowBackground): New functions.
	* macterm.h (XSetBackground, XSetWindowBackground): Add externs.

Kim F. Storm's avatar
Kim F. Storm committed
512 513 514 515
2005-01-14  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.

516 517 518 519 520 521 522
2005-01-13  Richard M. Stallman  <rms@gnu.org>

	* keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
	if Voverriding_terminal_local_map is non-nil.

	* keyboard.c (syms_of_keyboard): Doc fix.

Kim F. Storm's avatar
Kim F. Storm committed
523 524 525 526 527
2005-01-13  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (Fformat_mode_line): Fix last change.  Remove NO_PROPS arg
	(specify 0 for FACE instead). Reorder arg list.  Doc fix.

528 529 530 531 532 533 534
2005-01-12  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (Fformat_mode_line): New arg FACE specifies a default
	face property for characters that don't specify one.

	* fns.c (Frequire): Record in load-history unconditionally.

Kim F. Storm's avatar
Kim F. Storm committed
535 536 537 538 539 540 541 542 543 544 545 546
2005-01-10  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (merge_faces): Rename from merge_into_realized_face.

	* xfaces.c (merge_faces): Rename from merge_into_realized_face.
	Callers changed.
	Add support to merge with lisp face id too (if face_name is t).

	* xdisp.c (get_next_display_element, next_element_from_display_vector):
	Don't lookup lface_id from display table glyphs here; instead use
	merge_faces to merge the lisp face id into current face.

Kim F. Storm's avatar
Kim F. Storm committed
547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563
2005-01-09  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (struct it): New member dpvec_face_id.
	(merge_into_realized_face): Add prototype.

	* xfaces.c (merge_into_realized_face): New function.  Used to
	merge escape-glyph face or face from display table into current	face.

	* xdisp.c (Vshow_nonbreak_escape): New lisp var.
	(syms_of_xdisp): DEFVAR_LISP it.
	(escape_glyph_face): Remove var.
	(redisplay_window): Don't initialize it.
	(setup_for_ellipsis, get_next_display_element):
	Set it->dpvec_face_id to -1.
	(get_next_display_element): Test Vshow_nonbreak_escape.
	Do not setup escape_glyph_face.
	Properly merge escape-glyph face or face from display table with
564 565
	current face for escape and control characters.
	Set it->dpvec_face_id to relevant face id instead of adding it to each
Kim F. Storm's avatar
Kim F. Storm committed
566 567 568 569
	element of display vector.
	(next_element_from_display_vector): If it->dpvec_face_id is set,
	use that instead of lface_id from glyph itself.

570 571 572 573 574 575 576 577 578 579 580 581
2005-01-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.h (struct x_output): New member, toolbar_detached.

	* gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
	38.
	(xg_tool_bar_detach_callback): Set toolbar_detached to 1.
	(xg_tool_bar_attach_callback): Set toolbar_detached to 0.
	(xg_create_tool_bar): Initialize toolbar_detached.
	(update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
	toolbar_detached is zero.

582 583
2005-01-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

584 585 586
	* xmenu.c (create_and_show_popup_menu): Pass zero as button to
	gtk_menu_popup if not for_click, so callbacks for the menu are called.

587 588
	* gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
	(xg_tool_bar_callback, xg_tool_bar_help_callback)
589
	(update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
590 591

	* xselect.c (x_get_foreign_selection, x_fill_property_data)
Kim F. Storm's avatar
Kim F. Storm committed
592
	(Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
593 594
	XFLOAT_DATA to get extract number from Lisp object.

Kim F. Storm's avatar
Kim F. Storm committed
595 596 597 598 599
2005-01-07  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
	Set stop_charpos to current charpos instead of 0.

600 601 602 603
2005-01-06  Nick Roberts  <nickrob@snap.net.nz>

	* xdisp.c (Fformat_mode_line): First arg now required.

604 605 606 607 608
2005-01-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macterm.c (XLoadQueryFont): Correctly handle 0 size
	font widths that are returned from some Japanese fonts.

Kim F. Storm's avatar
Kim F. Storm committed
609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625
2005-01-06  Kim F. Storm  <storm@cua.dk>

	* fringe.c (fringe_faces): Change to Lisp_Object pointer.
	(draw_fringe_bitmap_1): Lookup user defined fringe faces here.
	(destroy_fringe_bitmap): Set fringe_faces element to nil.
	(Fdefine_fringe_bitmap, init_fringe): Change allocation of
	fringe_faces array and init elements to nil.
	(Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
	non-persistent face id.
	(mark_fringe_data): New function for GC.

	* alloc.c (mark_fringe_data): Declare extern.
	(Fgarbage_collect): Call mark_fringe_data.

	* alloc.c (overrun_check_free): Invalidate freed memory if
	XMALLOC_CLEAR_FREE_MEMORY is defined.

Steven Tamm's avatar
Steven Tamm committed
626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646
2005-01-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macfns.c: Include sys/param.h.
	[TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
	and function.
	[TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
	of filename string.  Set event callback function when creating
	dialog boxes.  Add code conversions for filenames.  Don't dispose
	apple event descriptor record if failed to create it.

	* macterm.c: Include sys/param.h.
	[USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
	kEventWindowUpdate.
	(install_window_handler) [USE_CARBON_EVENTS]: Register it.
	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
	of FSSpec from apple event descriptor record.
	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
	size of filename string.
	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
	file dialog is in action.
647 648
	[TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
	Reject only when there are no filename items.  Set background color
Steven Tamm's avatar
Steven Tamm committed
649 650 651
	before (un)highlighting the window below the dragged items.
	(XTread_socket) [!USE_CARBON_EVENTS]: Don't call do_window_update.

Kenichi Handa's avatar
Kenichi Handa committed
652 653 654 655
2005-01-05  Romain Francoise  <romain@orebokech.com>

	* term.c (encode_terminal_code): Fix buffer size computation.

656 657 658 659
2005-01-04  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (Fformat_mode_line): Doc fix.

660 661 662 663 664 665
2005-01-04  Stefan Monnier  <monnier@iro.umontreal.ca>

	* alloc.c (refill_memory_reserve): Move.
	(emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
	(reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.

666 667 668 669 670
2005-01-03  Richard M. Stallman  <rms@gnu.org>

	* window.c (window_scroll_pixel_based): Don't correct preserve_y
	for CURRENT_HEADER_LINE_HEIGHT when moving backwards.

Jason Rumney's avatar
Jason Rumney committed
671 672 673 674 675 676 677 678 679 680 681 682 683
2005-01-03  Jason Rumney  <jasonr@gnu.org>

	* w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
	fontp->space_width to FONT_WIDTH so they are valid.

	* w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
	average width. Set fontp->average_width and fontp->space_width to
	their appropriate values.

	* w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
	fontp->average_width, not FONT_WIDTH.  Set FRAME_SPACE_WIDTH to
	fontp->space_width.

684 685 686 687 688 689 690
2005-01-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
	(x_font_min_bounds, XLoadQueryFont): Use the correct font width
	metrics for max and min bounds.
	(x_load_font): Correctly calculate average font width metrics.

691 692 693 694
2005-01-02  Richard M. Stallman  <rms@gnu.org>

	* alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.

695 696 697 698
2004-12-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.c (handle_one_xevent): Clear area in expose event for GTK.

699 700
2004-12-31  Richard M. Stallman  <rms@gnu.org>

701 702 703 704 705 706 707 708 709 710 711 712 713
	* xdisp.c (setup_for_ellipsis, get_next_display_element):
	Set it->ellipsis_p to 1 or 0.
	(display_line): Record whether row ends in mid-ellipsis.
	(set_cursor_from_row): If ends in ellipsis. find start of it.
	(cursor_row_p): If PT's at the end of the ellipsis the row
	ends within, don't display cursor on this row.

	* dispextern.h (struct it): New element ellipsis_p.
	(struct glyph_row): New element ends_in_ellipsis_p.

	* xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
	position if we're reading from something other than the buffer.

714 715 716 717
	* window.c (window_scroll_pixel_based): Only look at
	Vscroll_preserve_screen_position if the old PT can't be kept.
	(syms_of_window) <scroll-preserve-screen-position>: Doc fix.

718 719 720 721 722 723 724 725
2004-12-30  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_line_height_property): New function extracted from
	original calc_line_height_property.
	(calc_line_height_property): Rework.  Handle t and (nil . ratio).
	(x_produce_glyphs): Use them to handle line-height and
	line-spacing according to new height spec.
	(Qtotal): Remove.
Kim F. Storm's avatar
Kim F. Storm committed
726
	(syms_of_xdisp): Remove intern and staticpro for Qtotal.
727

Kenichi Handa's avatar
Kenichi Handa committed
728 729 730 731
2004-12-30  Kenichi Handa  <handa@m17n.org>

	* fileio.c (Finsert_file_contents): Don't use
	current_buffer->buffer_file_coding_system even if REPLACE is
732
	non-nil.  Call Qafter_insert_file_set_coding with the second arg VISIT.
Kenichi Handa's avatar
Kenichi Handa committed
733 734 735 736 737 738 739 740 741 742 743

	* fontset.h (struct font_info): New members space_width and
	average_width.

	* frame.h (struct frame): New member space_width.
	(FRAME_SPACE_WIDTH): New macro.

	* xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.

	* xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
	fontp->average_width, not FONT_WIDTH.  Set FRAME_SPACE_WIDTH to
Jason Rumney's avatar
Jason Rumney committed
744
	fontp->space_width.
745
	(x_load_font): Calculate fontp->space_width and fontp->average_width.
Kenichi Handa's avatar
Kenichi Handa committed
746 747 748 749 750
	(x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.

	* xdisp.c (x_produce_glyphs): Calculate tab width by
	FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.

751 752 753
2004-12-29  Sanghyuk Suh  <han9kin@mac.com>

	* macterm.c (SelectionRange): Add Xcode position apple event struct.
754
	(do_ae_open_documents): Handle Xcode-style file position open events.
755

756 757 758 759
2004-12-29  Luc Teirlinck  <teirllm@auburn.edu>

	* buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.

760 761 762 763
2004-12-29  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.

764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779
2004-12-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macfns.c (install_window_handler): Modify extern to return OSErr
	value.
	(mac_window): Handle return value of install_window_handler.

	* macterm.c (reflect_byte): Remove function.
	(mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
	Lookup table instead.
	(mac_do_font_lists): Simplify calculation of the longest
	nonspecial string.
	(init_mac_drag_n_drop): Remove function	and declaration.
	(mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
	init_mac_drag_n_drop.
	(mac_do_track_drag): New function and declaration.
	(install_window_handler): Return OSErr value.
780 781
	(install_window_handler) [TARGET_API_MAC_CARBON]:
	Register handlers for tracking/receiving drag-and-drop items.
782
	(do_ae_open_documents): Generate unibyte strings for filenames.
Stefan Monnier's avatar
Stefan Monnier committed
783 784 785 786
<<<<<<< ChangeLog
	(mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
	Reject only non-filename items.  Set event modifiers and return value.
=======
787 788
	(mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
	Reject only non-filename items.  Set event modifiers, and return value.
Stefan Monnier's avatar
Stefan Monnier committed
789
>>>>>>> 1.4187
790

791 792 793 794
2004-12-28  Dan Nicolaescu  <dann@ics.uci.edu>

	* coding.c (decode_coding): Fix previous change.

795 796 797 798 799
2004-12-28  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (back_to_previous_visible_line_start):
	Don't call handle_display_prop.

800 801 802 803 804 805 806 807
2004-12-28  Dan Nicolaescu  <dann@ics.uci.edu>

	* coding.c (decode_coding_XXX, decode_composition_emacs_mule)
	(decode_coding_emacs_mule, encode_coding_emacs_mule)
	(decode_coding_iso2022, encode_designation_at_bol)
	(encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
	(decode_coding): Constify arguments and local vars.

808 809 810 811
2004-12-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (popup_get_selection): Only pop down dialogs
	on C-g and Escape.
812
	(popup_get_selection): Remove parameter down_on_keypress.
813 814
	(create_and_show_popup_menu, create_and_show_dialog):
	Remove parameter down_on_keypress to popup_get_selection.
815

816 817 818 819
2004-12-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* dispextern.h: Change HAVE_CARBON to MAC_OS.
	(struct glyph_string): Likewise.
Kim F. Storm's avatar
Kim F. Storm committed
820

821 822
	* emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
	mac_initialize.
Kim F. Storm's avatar
Kim F. Storm committed
823

824 825
	* fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
	Change TARGET_API_MAC_CARBON to HAVE_CARBON.
Kim F. Storm's avatar
Kim F. Storm committed
826

827
	* fns.c (vector): Change MAC_OSX to MAC_OS.
Kim F. Storm's avatar
Kim F. Storm committed
828

829 830
	* frame.c (x_set_frame_parameters, x_report_frame_params)
	(x_set_fullscreen): Remove #ifndef HAVE_CARBON.
831 832
	(x_set_border_width, Vdefault_frame_scroll_bars):
	Change HAVE_CARBON to MAC_OS.
Kim F. Storm's avatar
Kim F. Storm committed
833

834 835 836
	* image.c [MAC_OS]: Include sys/stat.h.
	[MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
	QuickTimeComponents.h.
Kim F. Storm's avatar
Kim F. Storm committed
837

838 839
	* mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
	[!MAC_OSX] (select): Use mac_wait_next_event.
840
	[!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
841 842 843 844 845 846 847 848 849 850 851 852 853 854
	[!MAC_OSX] (select, run_mac_command): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(mac_clear_font_name_table): Add extern.
	(Fmac_clear_font_name_table): New defun.
	(syms_of_mac): Defsubr it.
	[MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
	[MAC_OSX] (select_and_poll_event): New function.
	[MAC_OSX] (sys_select): Use it.
	[MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
	[MAC_OSX && SELECT_USE_CFSOCKET]
	(SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
	[MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
	RunLoop for simultaneously monitoring two kinds of inputs, window
	events and process outputs, without periodically polling.
Kim F. Storm's avatar
Kim F. Storm committed
855

856 857 858
	* macfns.c (mac_initialized): Remove extern.
	(stricmp): Put in #if 0.  All callers changed to use xstricmp in
	xfaces.c.
859 860
	(strnicmp): Decrement `n' at the end of each loop, not the beginning.
	(check_mac): Use the term "Mac native windows" instead of "Mac OS".
861 862 863 864 865
	(check_x_display_info, x_display_info_for_name): Sync with xfns.c.
	(mac_get_rdb_resource): New function (from w32reg.c).
	(x_get_string_resource): Use it.
	(install_window_handler): Add extern.
	(mac_window): New function.
866 867
	(Fx_create_frame): Use it instead of make_mac_frame.
	Set parameter for Qfullscreen.  Call x_wm_set_size_hint.
868 869
	(Fx_open_connection, Fx_close_connection): New defuns.
	(syms_of_macfns): Defsubr them.
870 871
	(x_create_tip_frame) [TARGET_API_MAC_CARBON]:
	Add kWindowNoUpdatesAttribute to the window attribute.
872 873 874 875 876 877 878
	(x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
	(x_create_tip_frame): Don't call ShowWindow.
	(Fx_show_tip): Call ShowWindow.
	(Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
	TARGET_API_MAC_CARBON'.
	(mac_frame_parm_handlers): Set handlers for Qfullscreen.
	(syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
Kim F. Storm's avatar
Kim F. Storm committed
879

880
	* macgui.h [!MAC_OSX]: Don't include Controls.h.  Include Windows.h.
881 882 883
	(Window): Typedef to WindowPtr and move outside `#if
	TARGET_API_MAC_CARBON'.
	(XSizeHints): New struct.
Kim F. Storm's avatar
Kim F. Storm committed
884

885 886 887 888 889 890 891 892 893 894 895 896 897 898
	* macterm.c (x_update_begin, x_update_end)
	[TARGET_API_MAC_CARBON]: Disable screen updates during update of a
	frame.
	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
	[MAC_OS8]: Use XDrawImageString/XDrawImageString16.
	(construct_mouse_click): Put in #if 0.
	(x_check_fullscreen, x_check_fullscreen_move): Remove decls.
	(x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(activate_scroll_bars, deactivate_scroll_bars)
	[!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
	(x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
	if the position is neither user-specified nor program-specified.
	(x_free_frame_resources): Free size_hints.
Stefan Monnier's avatar
Stefan Monnier committed
899 900 901 902
<<<<<<< ChangeLog
	(x_wm_set_size_hint): Allocate size_hints if needed.
	Set size_hints.
=======
903
	(x_wm_set_size_hint): Allocate size_hints if needed.  Set size_hints.
Stefan Monnier's avatar
Stefan Monnier committed
904
>>>>>>> 1.4187
905 906 907 908 909 910 911 912 913 914 915 916 917
	(mac_clear_font_name_table): New function.
	(mac_do_list_fonts): Initialize font_name_table if needed.
	(x_list_fonts): Don't initialize font_name_table.  Add BLOCK_INPUT
	around mac_do_list_fonts.
	(mac_unload_font): New function.
	(x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
	(init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
	and definitions with #if TARGET_API_MAC_CARBON.
	[USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
	(install_window_handler): Add decl.
	(do_window_update): Add BeginUpdate/EndUpdate for the tooltip
	window.  Use UpdateControls.  Get the rectangle that should be
	updated and restrict the target of expose_frame to it.
918
	(do_grow_window): Set minimum height/width according to size_hints.
919 920 921 922 923 924 925 926 927 928 929
	(do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
	(do_zoom_window): Don't use x_set_window_size.
	[USE_CARBON_EVENTS] (mac_handle_window_event): New function.
	(install_window_handler): New function.
	[!USE_CARBON_EVENTS] (mouse_region): New variable.
	[!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
	(XTread_socket) [USE_CARBON_EVENTS]: Move call to
	GetEventDispatcherTarget inside BLOCK_INPUT.
	(XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
	Update mouse_region when mouse is moved.
	(make_mac_frame): Remove.
930 931 932 933
	(make_mac_terminal_frame): Put in #ifdef MAC_OS8.
	Initialize mouse pointer shapes.  Change values of f->left_pos and
	f->top_pos.  Don't use make_mac_frame.  Use NewCWindow.
	Don't call ShowWindow.
934 935 936 937 938 939 940 941 942
	(mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
	Vinvocation_name and Vsystem_name.
	(mac_make_rdb): New function (from w32term.c).
	(mac_term_init): Use it.  Add BLOCK_INPUT.  Error if display has
	already been opened.  Don't pass argument to
	mac_initialize_display_info.  Don't set dpyinfo->height/width.
	Add entries to x_display_list and x_display_name_list.
	(x_delete_display): New function.
	(mac_initialize): Don't call mac_initialize_display_info.
Kim F. Storm's avatar
Kim F. Storm committed
943 944
	(syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.

945 946 947 948
	* macterm.h (check_mac): Add extern.
	(struct mac_output): New member size_hints.
	(FRAME_SIZE_HINTS): New macro.
	(mac_unload_font): Add extern.
Kim F. Storm's avatar
Kim F. Storm committed
949

950
	* xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
Kim F. Storm's avatar
Kim F. Storm committed
951

952 953
	* xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.

Richard M. Stallman's avatar
Richard M. Stallman committed
954 955
2004-12-27  Richard M. Stallman  <rms@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
956 957 958
<<<<<<< ChangeLog
	* buffer.c (Fbuffer_disable_undo): Delete (moved to simple.el).
=======
959
	* buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
Stefan Monnier's avatar
Stefan Monnier committed
960
>>>>>>> 1.4187
961 962 963 964 965
	(syms_of_buffer): Don't defsubr it.

	* process.c (list_processes_1): Set undo_list instead
	of calling Fbuffer_disable_undo.

966
	* xdisp.c (single_display_spec_string_p): Rename from
Richard M. Stallman's avatar
Richard M. Stallman committed
967
	single_display_prop_string_p.
968
	(single_display_spec_intangible_p): Rename from
Richard M. Stallman's avatar
Richard M. Stallman committed
969
	single_display_prop_intangible_p.
970
	(handle_single_display_spec): Rename from handle_single_display_prop.
Richard M. Stallman's avatar
Richard M. Stallman committed
971 972
	Rewritten to be easier to understand.

Kim F. Storm's avatar
Kim F. Storm committed
973
	Change in load-history format.  Functions now get (defun . NAME),
Richard M. Stallman's avatar
Richard M. Stallman committed
974 975 976 977 978 979 980 981 982 983 984
	and variables get just NAME.

	* data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.

	* eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
	(Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
	(Qdefvar): Var deleted.
	(syms_of_eval): Don't initialze it.

	* lread.c (syms_of_lread) <load-history>: Doc fix.

985 986 987 988 989 990 991 992 993 994 995 996 997 998 999
2004-12-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (popup_get_selection): Pop down on C-g.
	(set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
	pops down menu on C-g.
	(xdialog_show): If dialog popped down and no button in the dialog was
	pushed, call Fsignal to quit.
	(xmenu_show): In no toolkit version, if menu returns NO_SELECT call
	Fsignal to quit.

	* xfns.c (Fx_file_dialog): Motif/Lesstif version:  Pop down on C-g.

	* gtkutil.c (xg_initialize): Install bindings for C-g so that
	dialogs and menus pop down.

Kenichi Handa's avatar
Kenichi Handa committed
1000 1001 1002 1003
2004-12-27  Kenichi Handa  <handa@m17n.org>

	* coding.c (code_convert_region): Fix calculation of `ratio'.

1004 1005
2004-12-25  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1006 1007 1008
	* gtkutil.c (update_frame_tool_bar): Make the value of
	tool-bar-button-margin control margins of images in tool bar.

1009 1010 1011 1012 1013 1014 1015
	* alloc.c (check_depth): New variable.
	(overrun_check_malloc, overrun_check_realloc): Only add
	overhead and write check pattern if check_depth is 1 (to handle
	recursive calls).  Increase/decrease check_depth in entry/exit.
	(overrun_check_free): Only check for overhead if check_depth is 1.
	Increase/decrease check_depth in entry/exit.

1016 1017 1018 1019 1020 1021
2004-12-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
	before touching input_available_clear_time, to avoid accessing it
	from multiple threads.

1022 1023 1024 1025 1026
2004-12-23  Jason Rumney  <jasonr@gnu.org>

	* image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
	of JPEG library.

1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037
2004-12-22  Richard M. Stallman  <rms@gnu.org>

	* emacs.c (main): If batch mode, set Vundo_outer_limit to nil.

	* lisp.h (Vundo_outer_limit): Fix decl.

	* undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
	Uses changed.
	(syms_of_undo): Initialize appropriately.
	(truncate_undo_list): If it's nil, there's no limit.

Kenichi Handa's avatar
Kenichi Handa committed
1038 1039 1040 1041
2004-12-22  Kenichi Handa  <handa@m17n.org>

	* xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.

1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053
2004-12-21  Richard M. Stallman  <rms@gnu.org>

	* eval.c (unwind_to_catch): Clear immediate_quit.

	* xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
	specially as `\ ' and `\-'.

	* keyboard.c (kbd_buffer_store_event_hold):
	In the code for while-no-input, handle immediate_quit.

	* alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
	Call that at the very start.
1054
	(undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077
	(syms_of_alloc): Don't define undo-limit,
	undo-strong-limit and undo-outer-limit here.

	* undo.c (truncate_undo_list): Return void.
	Take just one argument, the buffer.
	Make it current, and inhibit recursive GC.
	Access and update the undo list directly; return void.
	Refer to the undo...limit variables directly.
	Test undo_outer_limit only after counting the whole current command.
	When it's exceeded, call the function in undo-outer-limit-function.
	(undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
	(Vundo_outer_limit_function): New variable.
	(syms_of_undo): Define undo-limit, undo-strong-limit
	and undo-outer-limit here, and undo-outer-limit-function.
	Doc fixes.

	* lisp.h (truncate_undo_list): Update decl.

2004-12-21  Piet van Oostrum  <piet@cs.uu.nl>

	* fileio.c (Fread_file_name): Delete duplicates in
	file-name-history when history_delete_duplicates is true.

1078 1079 1080 1081
2004-12-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macterm.c (mac_do_list_fonts): Fix memory leak

1082 1083 1084 1085 1086
2004-12-20  Richard M. Stallman  <rms@gnu.org>

	* regex.c (re_match_2_internal) <symend, wordend>:
	Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.

1087 1088
2004-12-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

1089 1090
	* macterm.c (endif, x_font_name_to_mac_font_name):
	Use maccentraleurroman instead of maccentraleuropean
1091 1092 1093
	(mac_c_string_match, mac_do_list_fonts): Speed up font search by
	quickly finding a specific font without needing regexps.

1094 1095
2004-12-15  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115
	* syssignal.h: Declare main_thread.
	(SIGNAL_THREAD_CHECK): New macro.

	* keyboard.c (input_available_signal): Move thread checking code
	to macro SIGNAL_THREAD_CHECK and call that macro.
	(interrupt_signal): Call SIGNAL_THREAD_CHECK.

	* alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.

	* emacs.c: Define main_thread.
	(main): Initialize main_thread.
	(handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
	(memory_warning_signal): Call SIGNAL_THREAD_CHECK.

	* floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.

	* dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.

	* sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.

1116 1117
	* process.c (send_process_trap, sigchld_handler):
	Call SIGNAL_THREAD_CHECK.
1118 1119 1120 1121 1122

	* data.c (arith_error): Call SIGNAL_THREAD_CHECK.

	* atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.

1123 1124 1125
	* xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
	returning when xg_ignore_gtk_scrollbar is true.

1126 1127 1128 1129 1130
2004-12-14  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (read_char): Save and restore echo_string when
	handling input method.

1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141
2004-12-13  Richard M. Stallman  <rms@gnu.org>

	* eval.c (syms_of_eval) <quit-flag>: Doc fix.

	* keyboard.c (Vthrow_on_input): New variable.
	(syms_of_keyboard): Defvar and initialize it.
	(kbd_buffer_store_event_hold): Handle Vthrow_on_input.

	* lisp.h (QUIT): Check for Vthrow_on_input.
	(Vthrow_on_input): Declare it.

Kim F. Storm's avatar
Kim F. Storm committed
1142 1143 1144 1145 1146
2004-12-13  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (set_iterator_to_next): Reset stop_charpos after display
	vector.

1147 1148 1149 1150 1151 1152 1153
2004-12-12  Richard M. Stallman  <rms@gnu.org>

	* indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.

	* minibuf.c (Fall_completions): Add var `zero' and use it in loop.
	(Ftry_completion): Really use outer `zero'; eliminate inner one.

1154 1155 1156 1157
2004-12-12  Kenichi Handa  <handa@m17n.org>

	* term.c (encode_terminal_code): Fix previous change.

Stefan Monnier's avatar
Stefan Monnier committed
1158 1159
2004-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
1160 1161 1162
	* keyboard.c (handle_async_input): Remove pthread mutex handling.
	(input_available_signal): Move pthread thingy to !SYNC_INPUT branch.

Stefan Monnier's avatar
Stefan Monnier committed
1163 1164 1165 1166 1167 1168 1169 1170
	* syntax.c (Fforward_word): Avoid non-idempotent side-effects
	in macro arguments.

	* minibuf.c (Ftry_completion, Fall_completions): Don't use
	XFASTINT blindly.

	* emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.

1171 1172
2004-12-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1173 1174 1175 1176
	* w32term.c (x_calc_absolute_position): Remove calculation of
	difference between inner and outer window.  Don't subtract difference
	for left and top calculations.

1177 1178
	* xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
	for left and top calculations.  Remove call to x_real_positions.
1179
	[Bug report by Drew Adams in November]
1180 1181 1182
	(x_check_expected_move): Do not set change_gravity to 1 when calling
	x_set_offset.

1183 1184 1185 1186 1187 1188 1189 1190 1191
2004-12-08  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (get_next_display_element): Use `escape-glyph' for
	control chars and escaped octal codes.
	(Qescape_glyph): New variable.
	(syms_of_xdisp): Initialize it.
	(escape_glyph_face): New variable.
	(redisplay_window): Initialize it.

1192 1193 1194 1195 1196
2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>

	* image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
	(init_image): Use 1 rather than TRUE.  TRUE's not always defined.

1197 1198
2004-12-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1199 1200 1201
	* emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
	reset_malloc_hooks.

Stefan Monnier's avatar
Stefan Monnier committed
1202 1203
	* keyboard.c (handle_async_input, input_available_signal):
	Add ! defined (SYSTEM_MALLOC) around thread code.
1204

1205 1206
	* alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.

1207
2004-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
Stefan Monnier's avatar
Stefan Monnier committed
1208 1209 1210 1211 1212

	* eval.c (init_eval_once): Increase max_specpdl_size to 1000.

	* config.in: Regenerate.

1213 1214
2004-12-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1215 1216 1217 1218 1219
	* xmenu.c (Fx_popup_menu): Correct documentation about position.
	(xmenu_show): Do not call XTranslateCoordinates.  Adjust position
	if not given by a mouse click to correspond with x-popup-menu
	documentation.

Jan Djärv's avatar
Jan Djärv committed
1220 1221
	* config.in: Regenerate.

1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240
	* gtkutil.c: Include signal.h and syssignal.h.
	(xg_get_file_name): Block and unblock __SIGRTMIN if defined.

	* alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
	new variables main_thread and alloc_mutex,
	define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
	emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
	If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
	(UN)BLOCK_INPUT.
	(emacs_blocked_free, emacs_blocked_malloc)
	(emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
	(uninterrupt_malloc): Initialize main_thread and alloc_mutex.
	(reset_malloc_hooks): New function.

	* lisp.h: Declare reset_malloc_hooks.

	* emacs.c (Fdump_emacs): Call reset_malloc_hooks.

	* keyboard.c: Conditionally include pthread.h
Stefan Monnier's avatar
Stefan Monnier committed
1241
	(handle_async_input, input_available_signalt): If not in the main
1242 1243
	thread, block signal, send signal to main thread and return.

1244
	* gtkutil.c (xg_get_file_with_chooser): Handle local files only.
Stefan Monnier's avatar
Stefan Monnier committed
1245
	Set current folder in file chooser if default_filename is a directory.
1246

1247 1248 1249 1250 1251 1252
2004-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>

	* regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
	Remove redundant correctness checks.
	(regex_compile): Fix up error codes for \{..\} expressions.

1253 1254 1255 1256
2004-12-05  Richard M. Stallman  <rms@gnu.org>

	* regex.c (regex_compile): Fix end-of-pattern case for space.

1257 1258
2004-12-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

Kim F. Storm's avatar
Kim F. Storm committed
1259 1260
	* macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
	* mac.c (cfstring_create_with_utf8_cstring): Add to prevent
1261
	crashes with invalid characters.
Kim F. Storm's avatar
Kim F. Storm committed
1262 1263 1264 1265 1266
	* macmenu.c (add_menu_item): Use it.
	* image.c (image_load_quartz2d): Likewise.
	* macfns.c (x_set_name, x_set_title): Likewise.
	(Fx_file_dialog): Likewise.  Use constant CFRefs instead of
	creating them each time for labels.
1267

1268 1269 1270 1271 1272 1273 1274 1275
2004-12-02  Richard M. Stallman  <rms@gnu.org>

	* config.in (RE_TRANSLATE_P): If make_number is not a macro,
	don't use it here.

	* eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
	(interactive_p): Skip Scalled_interactively_p frames
	like Sinteractive_p frames.
Kim F. Storm's avatar
Kim F. Storm committed
1276
	(unwind_to_catch): Clear handling_signal.
1277 1278 1279 1280 1281 1282 1283 1284 1285

	* data.c (Fmake_variable_buffer_local): Doc fix.
	(Fmake_local_variable): Doc fix.

	* insdel.c (insert_from_string_before_markers)
	(insert_from_string): Don't modify buffer on empty insertion.

	* window.c (Fget_lru_window, Fget_largest_window): Doc fixes.

1286 1287 1288 1289 1290
2004-12-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macmenu.c (add_menu_item): Fallback on MacRoman if encoding
	menu text as UTF8 fails.

Kim F. Storm's avatar
Kim F. Storm committed
1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301
2004-12-01  Kim F. Storm  <storm@cua.dk>

	* alloc.c: Add commentary for last change.
	(XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
	sizeof(size_t) != 4.
	(overrun_check_malloc, overrun_check_realloc, overrun_check_free):
	Use them.  Also clear header and trailer of freed memory.
	(GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
	(string_overrun_cookie): Rename from string_overrun_pattern.
	(GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.

Andreas Schwab's avatar
Andreas Schwab committed
1302 1303 1304 1305
2004-12-01  Andreas Schwab  <schwab@suse.de>

	* lisp.h: Declare string_to_multibyte.

Kenichi Handa's avatar
Kenichi Handa committed
1306 1307 1308 1309 1310 1311 1312
2004-12-01  Kenichi Handa  <handa@m17n.org>

	* w32console.c (w32con_write_glyphs): Decide coding here.
	Adjusted for the change of encode_terminal_code.

	* term.c (encode_terminal_code): Don't make it "static".

Kenichi Handa's avatar
Kenichi Handa committed
1313 1314
2004-11-30  Kenichi Handa  <handa@m17n.org>

Stefan Monnier's avatar
Stefan Monnier committed
1315
	* term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
Kenichi Handa's avatar
Kenichi Handa committed
1316
	(encode_terminal_code): Argument changed.  Encode all
Stefan Monnier's avatar
Stefan Monnier committed
1317 1318
	characters at once, and return a pointer to the result of encoding.
	(write_glyphs): Decide coding here.  Adjusted for the above change.
Kenichi Handa's avatar
Kenichi Handa committed
1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329
	(insert_glyphs): Likewise.
	(term_init): Initialize encode_terminal_bufsize to 0.

	* coding.c (Vcode_conversion_workbuf_name): New variable.
	(syms_of_coding): Initialize and staticpro it.
	(set_conversion_work_buffer): New function.
	(run_pre_post_conversion_on_str): Use it.
	(run_pre_write_conversin_on_c_str): New function.

	* coding.h (run_pre_write_conversin_on_c_str): Extern it.

Steven Tamm's avatar
Steven Tamm committed
1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355
2004-11-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* keyboard.c: Don't undef SIGIO
	* s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
	* Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
	(macfns.o): Don't depend on ccl.h.
	* macfns.c (mac_frame_parm_handlers): Set handlers for
	Qleft_fringe and Qright_fringe.
	* macterm.c (mac_fill_rectangle_to_pixmap)
	(mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
	(mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
	Put in #if 0.
	(mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
	(x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
	(XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
	[!MAC_OS8]: Added ifdef'd out code for os8.  Don't use
	XDrawImageString.  Always draw background and foreground separately.
	(x_draw_image_foreground): Use clipping instead of computing the
	intersection rectangle.
	(x_draw_image_glyph_string): Don't draw an image with mask to a
	pixmap.
	(x_redisplay_interface): Set flush_display_optional member to 0.
	(XTread_socket): Correctly reset the TEConverter
	object.

Kim F. Storm's avatar
Kim F. Storm committed
1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375
2004-11-30  Kim F. Storm  <storm@cua.dk>

	* lisp.h: New defines to enable buffer overrun checking.
	(GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
	(XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.

	* alloc.c: Add more checks for buffer overruns.
	(XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
	xmalloc_overrun_check_trailer, overrun_check_malloc)
	overrun_check_realloc, overrun_check_free): Add.
	(GC_STRING_EXTRA, string_overrun_pattern): Add.
	(check_sblock, allocate_string_data, compact_small_strings):
	Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
	(check_cons_list): Condition on GC_CHECK_CONS_LIST.
	(check_string_free_list): Add.
	(allocate_string, sweep_strings): Call check_string_free_list.

	* emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
	XMALLOC_OVERRUN_CHECK to avoid crash during load.

Kim F. Storm's avatar
Kim F. Storm committed
1376 1377 1378 1379
2004-11-29  Kim F. Storm  <storm@cua.dk>

	* fns.c (concat): Use SAFE_ALLOCA.

1380 1381 1382 1383
2004-11-29  Stefan Monnier  <monnier@iro.umontreal.ca>

	* sysdep.c (emacs_write): Don't use QUIT.

Kenichi Handa's avatar
Kenichi Handa committed
1384 1385 1386 1387 1388
2004-11-29  Kenichi Handa  <handa@m17n.org>

	* buffer.c (init_buffer): Set current_buffer->directory to a
	multibyte string made by string_to_multibyte.