ChangeLog 423 KB
Newer Older
1 2
2014-08-17  Eli Zaretskii  <eliz@gnu.org>

3 4 5 6 7 8 9
	* xdisp.c (display_line): Don't assume that the call to
	reseat_at_next_visible_line_start ends up at a character
	immediately following the newline on the previous line.  Avoids
	setting the ends_at_zv_p flag on screen lines that are not at or
	beyond ZV, which causes infloop in redisplay.  For the details, see
	http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00368.html.

10 11 12
	* dispnew.c (buffer_posn_from_coords): Fix mirroring of X
	coordinate for hscrolled R2L screen lines.  (Bug#18277)

13 14 15 16 17
2014-08-11  Ken Brown  <kbrown@cornell.edu>

	* gmalloc.c (_malloc_mutex, _aligned_blocks_mutex) [CYGWIN]: Use
	ERRORCHECK mutexes.  (Bug#18222)

18 19 20 21 22 23 24 25 26
2014-08-11  Glenn Morris  <rgm@gnu.org>

	* fileio.c: Revert 2013-01-31 change, which chose coding system for
	writing before backing up, since it causes a more serious problem
	than the one it solves.  (Closes Bug#18141, reopens Bug#13522.)
	(choose_write_coding_system): No longer callable from Lisp.
	Move last piece back here from Fwrite_region.
	(Fwrite_region, syms_of_fileio): Update for above changes.

27 28 29 30 31 32 33 34
2014-08-09  Martin Rudalics  <rudalics@gmx.at>

	* window.c (Fwindow_new_total, Fwindow_new_normal)
	(Fwindow_new_pixel, Fset_window_new_pixel)
	(Fset_window_new_total, Fset_window_new_normal): Second attempt
	to fix the doc-strings of these functions.  See:
	http://lists.gnu.org/archive/html/bug-gnu-emacs/2014-08/msg00287.html

35 36 37 38 39 40 41 42
2014-08-08  Martin Rudalics  <rudalics@gmx.at>

	* window.c (Fwindow_valid_p): Fix doc-string (Bug#18194).
	(Fwindow_new_total, Fwindow_normal_size, Fwindow_new_normal)
	(Fwindow_new_pixel, Fset_window_new_pixel)
	(Fset_window_new_total, Fset_window_new_normal)
	(Fwindow_resize_apply): Fix doc-strings (see Bug#18112).

43 44 45 46 47
2014-08-07  Eli Zaretskii  <eliz@gnu.org>

	* fontset.c (Finternal_char_font): Recompute basic faces if the
	frame's face cache was cleared.  (Bug#18162)

48 49 50 51 52 53
2014-08-05  Dmitry Antipov  <dmantipov@yandex.ru>

	Fix bug with uninitialized undo list of an indirect buffer (Bug#18180).
	* buffer.c (Fmake_indirect_buffer): Initialize undo list with the
	base buffer's undo list.

54 55 56 57 58 59 60 61
2014-08-03  Dmitry Antipov  <dmantipov@yandex.ru>

	Fix bug with an attempt to select uninitialized frame (Bug#18161).
	* xfns.c (Fx_create_frame): Move call to change_frame_size to
	a section where Lisp evaluation is disabled.  This way a pointer
	to uninitialized frame is not accessible from Lisp, which becomes
	critical if following call to x_figure_window_size throws an error.

62 63
2014-08-02  Paul Eggert  <eggert@cs.ucla.edu>

64 65 66 67 68
	Fix bug with clang + directory_files_internal + GC (Bug#16986).
	* dired.c (directory_files_internal): Use a volatile variable
	to prevent the compiler from optimizing away all copies of a local.
	I wonder how many other GC-related bugs like this lurk elsewhere?

69 70 71 72 73 74
	Avoid 100% CPU utilization on ssh session exit (Bug#17691).
	* xterm.h (struct x_display_info): New member 'connection'.
	* xterm.c (x_term_init, x_delete_terminal): Set and use it,
	so that x_delete_terminal has a file descriptor to pass to
	delete_keyboard_wait_descriptor.

75 76 77 78 79 80 81 82 83 84 85 86 87
2014-08-01  Eli Zaretskii  <eliz@gnu.org>

	Fix display of R2L lines when the last character fits only partially.
	See http://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00476.html
	for the details.
	* xdisp.c (extend_face_to_end_of_line): If the last glyph of an
	R2L row is visible only partially, give the row a negative x
	offset.
	(display_line): Fix the calculation of the glyph whose pixel width
	is used to decide whether the last produced glyph fits on the
	line.  When the last glyph fits only partially, give the row a
	negative x offset.

88 89 90 91 92 93 94 95
2014-07-29  Eli Zaretskii  <eliz@gnu.org>

	Fix hscroll of R2L lines that begin with a TAB or another wide glyph.
	* xdisp.c (append_stretch_glyph): In a R2L glyph row, decrease the
	pixel width of the first glyph that is hscrolled from display.
	(display_line): In R2L glyph rows, don't give a negative offset to
	row->x when the first glyph begins before first_visible_x.

Andreas Schwab's avatar
Andreas Schwab committed
96 97 98 99 100
2014-07-29  Andreas Schwab  <schwab@suse.de>

	* macros.c (Fstart_kbd_macro): Initialize kbd_macro_ptr and
	kbd_macro_end together with kbd_macro_buffer.  (Bug#18140)

Eli Zaretskii's avatar
Eli Zaretskii committed
101 102
2014-07-28  Eli Zaretskii  <eliz@gnu.org>

103 104 105 106
	* xdisp.c (display_line): If called with iterator set up to write
	to a marginal area, delay the call to handle_line_prefix until we
	switch back to the text area.  (Bug#18035)

Eli Zaretskii's avatar
Eli Zaretskii committed
107 108 109 110
	* .gdbinit (xwindow): The members total_cols, total_lines,
	left_col, and top_line are C integers (and has been so for the
	last 1.5 years).

111 112 113 114 115 116 117 118 119 120 121 122
2014-07-20  Jan Djärv  <jan.h.d@swipnet.se>

	* nsterm.m (applicationDidFinishLaunching:): Call
	antialiasThresholdDidChange, register for antialias changes (Bug#17534).
	(antialiasThresholdDidChange:): New method for EmacsApp.

	* nsterm.h (EmacsApp): Add antialiasThresholdDidChange.

	* macfont.m (macfont_update_antialias_threshold): Remove static.

	* macfont.h (macfont_update_antialias_threshold): Declare.

123 124
2014-07-17  Eli Zaretskii  <eliz@gnu.org>

125 126 127 128 129 130 131 132
	* w32select.c (setup_windows_coding_system): Apply
	CODING_ANNOTATION_MASK to the common_flags member of struct
	coding_system.  Reported by martin rudalics <rudalics@gmx.at>.

	* w16select.c (Fw16_get_clipboard_data): Apply
	CODING_ANNOTATION_MASK to the common_flags member of struct
	coding_system.

133 134 135 136
	* xdisp.c (init_iterator): Initialize it->stop_charpos to the
	buffer position where we are to start the iteration.
	(handle_invisible_prop): Record in it->stop_charpos the position
	where the invisible text ends.  (Bug#18035)
137 138 139
	(hscroll_window_tree): Don't try hscrolling windows whose cursor
	row has zero buffer position as their start position.  Reported by
	martin rudalics <rudalics@gmx.at>.
140

141 142 143 144 145 146
2014-07-16  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (move_it_vertically_backward, move_it_by_lines): Prevent
	infinite looping in redisplay when display lines don't have enough
	space to display even a single character.  (Bug#18036)

147 148 149 150 151
2014-07-13  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (decode_mode_spec): Call file-remote-p on the current
	buffer's default-directory only if it is a string.  (Bug#17986)

152 153
2014-07-12  Eli Zaretskii  <eliz@gnu.org>

154 155 156
	* xdisp.c (display_line): Don't call FETCH_BYTE with argument less
	than 1.  (Bug#17962)

157 158 159 160 161 162 163
	* w32fns.c (Fx_file_dialog): Mention in the doc string the
	behavior on Windows 7 and later when the function is repeatedly
	invoked with the same value of DIR.  (Bug#17950)

	* xfns.c (Fx_file_dialog) [USE_MOTIF, USE_GTK]: Update the doc
	string to match the one in w32fns.c.

164 165 166 167 168 169
2014-07-08  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (move_it_to): Adjust calculation of line_start_x to what
	x_produce_glyphs does when it generates a stretch glyph that
	represents a TAB.  (Bug#17969)

170 171
2014-07-05  Eli Zaretskii  <eliz@gnu.org>

Eli Zaretskii's avatar
Eli Zaretskii committed
172 173 174
	* xdisp.c (pos_visible_p): If CHARPOS is at beginning of window,
	and there is a display property at that position, don't call
	move_it_to to move to a position before window start.  (Bug#17942)
175 176
	Fix condition for finding CHARPOS by the first call to move_it_to.
	(Bug#17944)
177

178 179 180 181 182 183 184
2014-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>

	* syntax.c (find_defun_start): Try the cache even
	if !open_paren_in_column_0_is_defun_start.
	(back_comment): If find_defun_start was pessimistic, use the
	scan_sexps_forward result to improve the cache (bug#16526).

Jan Djärv's avatar
Jan Djärv committed
185 186 187 188 189 190 191 192 193
2014-07-04  Daniel Colascione  <dancol@dancol.org>

	Backport from trunk.
	* xfns.c (create_frame_xic): Pass XNStatusAttributes to XCreateIC
	only if xic_style calls for it.  This change allows Emacs to work
	with ibus.  Also, don't leak resources if create_frame_xic fails,
	and stop caching xic_style across different displays (Bug#17928).
	(supported_xim_styles): Make const.
	(best_xim_style): Remove first parameter: it's always just
194
	supported_xim_styles.  Change to look at supported_xim_styles directly.
Jan Djärv's avatar
Jan Djärv committed
195

196 197
2014-07-04  Eli Zaretskii  <eliz@gnu.org>

198 199 200 201 202 203 204 205 206 207
	* xdisp.c (redisplay_window): If redisplay of a window ends up
	with point in a partially visible line at end of the window, make
	sure the amended position of point actually has smaller Y
	coordinate; if not, give up and scroll the display.  (Bug#17905)

	* window.c (window_scroll_pixel_based): When point ends up at the
	last fully visible line, don't let move_it_to stop at the left
	edge of the line and dupe us into thinking point is inside the
	scroll margin.

208 209 210
	* w32.c (network_interface_info): Make sure the argument is a
	Lisp string.

211 212 213 214 215 216 217 218 219 220 221 222 223
2014-07-01  Eli Zaretskii  <eliz@gnu.org>

	* dispnew.c (prepare_desired_row): Accept 2 additional arguments:
	the window whose glyph row is being prepared and a flag whether it
	is for mode/header line.  Make sure the glyph row's marginal areas
	are in sync with what the window wants.
	(Bug#17892)

	* xdisp.c (display_line, display_mode_line): Call
	prepare_desired_row with additional arguments, as appropriate.

	* dispextern.h (prepare_desired_row): Adjust prototype.

224 225
2014-07-01  Dmitry Antipov  <dmantipov@yandex.ru>

Dmitry Antipov's avatar
Dmitry Antipov committed
226
	* xfaces.c (init_frame_faces): Always realize basic faces (Bug#17889).
227 228
	* menu.c (Fx_popup_dialog): Set Vmenu_updating_frame to avoid crash
	caused by xw_popup_dialog in daemon mode (Bug#17891).
229

230 231 232 233 234 235
2014-06-30  Eli Zaretskii  <eliz@gnu.org>

	* frame.c (do_switch_frame): When switching to another TTY frame,
	make sure FrameCols and FrameRows are in sync with the new frame's
	data.  (Bug#17875)

Andreas Schwab's avatar
Andreas Schwab committed
236 237 238 239 240
2014-06-28  Andreas Schwab  <schwab@linux-m68k.org>

	* coding.c (encode_coding_utf_8): Correctly count produced_chars
	also in unibyte case.  (Bug#17865)

241 242
2014-06-25  Glenn Morris  <rgm@gnu.org>

Glenn Morris's avatar
Glenn Morris committed
243
	* puresize.h (BASE_PURESIZE): Increase a bit.  (Bug#17846)
244

245 246 247
2014-06-21  Eli Zaretskii  <eliz@gnu.org>

	* indent.c (Fvertical_motion): Doc fix.
248 249 250 251
	Move to the goal column, if any, with a single call to
	move_it_in_display_line, not in two calls.  Doing this with two
	calls causes move_it_in_display_line apply the line-prefix
	handling twice instead of just once.  (Bug#17823)
252

Paul Eggert's avatar
Paul Eggert committed
253 254 255 256 257 258
2014-06-21  Paul Eggert  <eggert@cs.ucla.edu>

	Port to OS X ACLs (Bug#17810).
	* fileio.c (Ffile_acl): Port to OS X, where acl_get_file (...,
	ACL_TYPE_ACCESS) doesn't work.

259 260 261 262 263
2014-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>

	* keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command
	before checking key-translation-map (bug#17659).

264 265 266 267 268
2014-06-19  Dmitry Antipov  <dmantipov@yandex.ru>

	* font.c (font_make_object): Avoid dangling pointer which may
	crash GC (Bug#17771).

269 270 271 272 273 274 275 276 277 278
2014-06-18  Eli Zaretskii  <eliz@gnu.org>

	* image.c [5 < GIFLIB_MAJOR + (1 <= GIFLIB_MINOR)]: Declare the
	prototype of DGifCloseFile as appropriate for older and newer
	versions of giflib.
	(gif_close): New function, encapsulates the differences in the
	calling sequence of DGifCloseFile before v5.1.0 and after it.
	(gif_load): Call gif_close instead of DGifCloseFile.  Divulge the
	error string where appropriate.  (Bug#17790)

279 280 281 282 283 284 285
2014-06-16  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (Fmove_point_visually): Instead of testing for keyboard
	macro execution, make sure point didn't move since last complete
	redisplay, as the condition for using the glyph matrix
	information.  (Bug#17777)

286 287 288 289 290 291 292
2014-06-14  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (Fmove_point_visually): Don't use the glyph matrix
	information if we are in the middle of executing a keyboard macro,
	since redisplay doesn't update the screen until the macro is
	finished.  (Bug#17777)

293 294 295 296 297
2014-06-13  Eli Zaretskii  <eliz@gnu.org>

	* alloc.c (cleanup_vector): Don't dereference a font driver
	pointer if it is NULL.  (Bug#17771)

298 299 300 301 302 303
2014-06-11  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (set_cursor_from_row): Fix an off-by-one error when
	matching overlay strings with 'cursor' property against buffer
	positions traversed in the glyph row.  (Bug#17744)

Glenn Morris's avatar
Glenn Morris committed
304 305
2014-06-08  Glenn Morris  <rgm@gnu.org>

306 307
	* fileio.c (write-region-inhibit-fsync): Doc tweak.

Glenn Morris's avatar
Glenn Morris committed
308 309
	* data.c (Flss, Fgtr, Fleq, Fgeq): Doc tweaks.

310 311
2014-06-04  Eli Zaretskii  <eliz@gnu.org>

312 313 314 315
	* sysdep.c (reset_sys_modes): Use cursorX, not curX, as the latter
	contains garbage on WINDOWSNT (which could potentially infloop at
	exit).

316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333
	Minimize cursor motion during TTY menu updates.
	* term.c (tty_menu_display): Don't position cursor here.  Instead,
	pass the cursor coordinates to update_frame_with_menu.
	(tty_menu_activate): Send the hide cursor command only once in an
	iteration through the outer 'while' loop.

	* dispnew.c (update_frame_1): Accept an additional argument
	SET_CURSOR_P, and position the cursor at the end of the frame
	update only if that argument is non-zero.  All callers changed to
	provide the additional argument as non-zero, except for
	update_frame_with_menu.
	(update_frame_with_menu): Accept 2 additional arguments ROW and
	COL; if they are non-negative, instruct update_frame_1 not to
	position the cursor, and instead position it according to ROW and
	COL.

	* dispextern.h (update_frame_with_menu): Update prototype.

334 335 336 337 338
2014-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>

	* callproc.c (call_process): Don't check read-only if we don't insert
	anything (bug#17666).

339 340 341 342
2014-06-02  Eli Zaretskii  <eliz@gnu.org>

	* dispnew.c (update_frame_with_menu): Set display_completed.

343 344 345 346
2014-06-01  Paul Eggert  <eggert@cs.ucla.edu>

	* frame.c (x_set_frame_parameters): Don't read uninitialized storage.

Jan Djärv's avatar
Jan Djärv committed
347 348 349 350 351
2014-06-01  Jan Djärv  <jan.h.d@swipnet.se>

	* xterm.c (xg_scroll_callback): Remove position, for jump set portion
	to min(value, whole).

352 353 354 355 356 357 358 359 360
2014-06-01  Paul Eggert  <eggert@cs.ucla.edu>

	Bring back the changes to GDB-visible symbols, but only on AIX.
	And only if it's not pre-4.2 GCC.
	* lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
	(ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
	(ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
	New macros.

361 362
2014-05-31  Eli Zaretskii  <eliz@gnu.org>

363 364 365
	* fileio.c (Finsert_file_contents): Call prepare_to_modify_buffer
	with PT, not GPT.  (Bug#16433)

366 367 368 369 370 371
	Revert last changes to GDB-visible symbols.
	* lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): Delete macros.
	(ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Don't use them.
	(ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
	Delete macros.

372 373 374 375
2014-05-31  Glenn Morris  <rgm@gnu.org>

	* cmds.c (Fself_insert_command): Allow zero repeat count.  (Bug#17649)

Paul Eggert's avatar
Paul Eggert committed
376 377 378 379 380 381 382 383
2014-05-30  Paul Eggert  <eggert@cs.ucla.edu>

	Fix port to 32-bit AIX with xlc (Bug#17598).
	* alloc.c (gdb_make_enums_visible): Remove FLOAT_TO_STRING_BUFSIZE.
	* conf_post.h (FLEXIBLE_ARRAY_MEMBER) [__IBMC__]: Don't define to empty.
	* lisp.h (FLOAT_TO_STRING_BUFSIZE): Make it a macro, instead of an enum,
	to work around a compiler bug in IBM xlc 12.1.

384 385 386 387 388 389
2014-05-29  Eli Zaretskii  <eliz@gnu.org>

	* xterm.c (x_update_window_end): Don't invalidate the entire
	mouse-highlight info, just signal frame_up_to_date_hook that mouse
	highlight needs to be redisplayed.  (Bug#17588)

390 391 392 393 394 395 396 397 398 399 400
2014-05-29  Paul Eggert  <eggert@cs.ucla.edu>

	Port the GDB-visible symbols to AIX.
	Without them, GDB doesn't work to debug Emacs, since the AIX linker
	optimizes away the relevant external symbols.  Use enums instead;
	this suffices for the AIX port, which is 32-bit-only anyway.
	* lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
	(ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
	(ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
	New macros.

401 402 403 404 405 406
2014-05-26  Paul Eggert  <eggert@cs.ucla.edu>

	Include sources used to create macuvs.h.
	* Makefile.in ($(srcdir)/macuvs.h): New rule.
	* macuvs.h: Use automatically-generated header.

407 408 409 410 411 412
2014-05-25  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (move_it_in_display_line_to): Don't record wrap position
	if we are iterating over an object that generates glyphs for
	marginal areas.  (Bug#17585)

413 414 415 416
2014-05-24  Paul Eggert  <eggert@cs.ucla.edu>

	* xdisp.c (safe__call1, safe__eval): Now static.

417 418 419 420 421 422
2014-05-24  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (safe__call): Accept va_list argument instead of '...'.
	(safe_call, safe__call1): Construct a va_list argument for safe_call.
	(safe_call1): Call safe_call instead of safe__call directly.

423 424 425 426 427 428
2014-05-24  Ken Brown  <kbrown@cornell.edu>

	* w32term.c (x_delete_display) [CYGWIN]: Don't free
	dpyinfo->w32_id_name, to make sure it doesn't get freed more than
	once.  (Bug#17510)

429 430 431 432 433 434 435 436
2014-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>

	* xdisp.c: Bind inhibit-quit during pre-redisplay-function.
	(safe__call, safe__call1, safe__eval): New functions.
	(safe_call): Use it.
	(prepare_menu_bars): Use it for pre-redisplay-function (bug#17577).
	(display_mode_element): Same for `:eval'.

Paul Eggert's avatar
Paul Eggert committed
437 438 439 440 441 442 443
2014-05-22  Paul Eggert  <eggert@cs.ucla.edu>

	Fix port to 32-bit AIX (Bug#17540).
	* unexaix.c (copy_text_and_data): Don't add text_scnptr to ptr
	twice.  _text already includes this offset.
	(unrelocate_symbols): Don't cast 64-bit integer to pointer.

444 445 446 447 448 449
2014-05-21  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (move_it_in_display_line_to): Avoid infinite recursion:
	when closest_pos is identical to to_charpos, don't recurse, since
	we already tried that, and failed.  (Bug#17539)

450 451 452 453 454 455 456 457
2014-05-20  Eli Zaretskii  <eliz@gnu.org>

	* w32fns.c (unwind_create_frame) [GLYPH_DEBUG]: If we are
	unwinding when frame's faces were not initialized yet, increment
	the frame's image-cache reference count before calling
	x_free_frame_resources.  Don't dereference
	dpyinfo->terminal->image_cache if it is NULL.  (Bug#17524)

458 459 460 461
2014-05-11  Glenn Morris  <rgm@gnu.org>

	* fileio.c (Ffile_executable_p): Doc tweak.

462 463 464 465 466
2014-05-10  Jan Djärv  <jan.h.d@swipnet.se>

	* xsettings.c (init_gsettings): Use g_settings_schema_source_lookup
	instead of deprecated g_settings_list_schemas if possible (Bug#17434).

467 468 469 470
2014-05-07  Paul Eggert  <eggert@cs.ucla.edu>

	* minibuf.c (read_minibuf): Avoid C99ism in previous patch (Bug#17430).

471 472 473 474 475 476
2014-05-07  Jarek Czekalski  <jarekczek@poczta.onet.pl>

	Fix initialization of minibuffer history variable (Bug#17430).
	* minibuf.c (read_minibuf): Initialize histval to Qnil if unbound.
	Move the initialization up to prevent any "value void" message.

477 478 479 480 481
2014-05-06  Samuel Bronson  <naesten@gmail.com>

	* keyboard.c (Frecursive_edit): Ensure inc&dec of command_loop_level
	are matched (bug#17413).

482 483 484 485 486 487
2014-05-06  Jarek Czekalski  <jarekczek@poczta.onet.pl>

	Stop tooltips pulling Emacs window to front (Bug#17408).
	* w32fns.c (Fx_show_tip): Add SWP_NOOWNERZORDER flag to
	SetWindowPos invocations.

488 489 490 491 492
2014-05-05  Jan Djärv  <jan.h.d@swipnet.se>

	* nsselect.m (Fx_selection_exists_p): Just return Qnil if window system
	not initialized (Bug#17398).

Paul Eggert's avatar
Paul Eggert committed
493 494 495 496 497 498
2014-05-04  Paul Eggert  <eggert@cs.ucla.edu>

	Revert recent libpng changes (Bug#17339).
	* Makefile.in (PNG_CFLAGS): Remove; all uses removed.
	* image.c [HAVE_LIBPNG_PNG_H]: Include <libpng/png.h>, not <png.h>.

499 500 501 502 503 504 505
2014-05-03  Paul Eggert  <eggert@cs.ucla.edu>

	Handle systems without WCONTINUED consistently.  (Bug#15110, 17339)
	* process.c (handle_child_signal): Remove WCONTINUED ifdef,
	because WCONTINUED is always defined now.
	* syswait.h (WCONTINUED): Move here from ../lib-src/emacsclient.c.

Eli Zaretskii's avatar
Eli Zaretskii committed
506 507 508 509
2014-05-03  Eli Zaretskii  <eliz@gnu.org>

	* buffer.c (overlay_strings): Fix the wording of the commentary.

510 511 512 513 514 515 516 517
2014-05-02  Paul Eggert  <eggert@cs.ucla.edu>

	Consult libpng-config more consistently (Bug#17339).
	* Makefile.in (PNG_CFLAGS): New var.
	(ALL_CFLAGS): Use it.
	* image.c [HAVE_PNG]: Don't worry about <libpng/png.h>, as
	CFLAGS now handles this.

Glenn Morris's avatar
Glenn Morris committed
518 519 520 521 522
2014-05-01  Glenn Morris  <rgm@gnu.org>

	* floatfns.c (Fisnan):
	* profiler.c (Fprofiler_cpu_running_p): Doc fix (replace `iff').

523 524 525 526 527
2014-05-01  Eli Zaretskii  <eliz@gnu.org>

	* term.c (tty_menu_activate): A better initialization for cursor
	coordinates.

528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543
2014-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>

	* intervals.c: Tighten assertions.
	(create_root_interval): Make sure the interval is not empty.
	(intervals_equal): Use booleans.
	(rotate_right, rotate_left): Check LENGTHs rather than TOTAL_LENGTH.
	(balance_an_interval): Sanity check LENGTHs and TOTAL_LENGTHs.
	(balance_possible_root_interval): Simplify and use booleans.
	(split_interval_right, split_interval_left): Check LENGTH, and remove
	now redundant assertion.
	(adjust_intervals_for_insertion): Remove now redundant assertions.
	(delete_node, interval_deletion_adjustment)
	(adjust_intervals_for_deletion, merge_interval_right)
	(merge_interval_left): Check LENGTH rather than TOTAL_LENGTH.
	(reproduce_interval): Make sure the interval is not empty.

544 545 546 547 548 549
2014-04-30  Paul Eggert  <eggert@cs.ucla.edu>

	* term.c (tty_menu_activate): Don't assume row and col are initialized.
	GCC 4.9.0 warned about this, and I couldn't easily prove to my own
	satisfaction that they would always be initialized.

550 551 552 553 554 555 556 557 558 559
2014-04-29  Eli Zaretskii  <eliz@gnu.org>

	* term.c (tty_menu_display): Move the cursor to the active menu
	item.
	(tty_menu_activate): Return the cursor to the active menu item
	after displaying the menu and after displaying help-echo.  See
	http://lists.gnu.org/archive/html/emacs-devel/2014-04/msg00402.html
	for the details of why this is needed by screen readers and
	Braille displays.

560 561 562 563 564
2014-04-29  Glenn Morris  <rgm@gnu.org>

	* process.c (handle_child_signal):
	Handle systems without WCONTINUED.  (Bug#15110, 17339)

565 566 567
2014-04-23  Eli Zaretskii  <eliz@gnu.org>

	* search.c (Fnewline_cache_check): Don't try to count newlines
568
	outside the buffer's restriction, as find_newline doesn't support that.
569

570 571
2014-04-22  Paul Eggert  <eggert@cs.ucla.edu>

572 573 574 575 576 577
	Port to GCC 4.9.0 with --enable-gcc-warnings.
	* image.c (struct my_jpeg_error_mgr) [lint]: Remove member fp.
	All uses removed.
	(jpeg_load_body) [lint]: Add a 'volatile' to pacify a buggy GCC in
	a way that also works with GCC 4.9.0.

578 579
	* search.c (Fnewline_cache_check): Remove unused locals.

580 581 582 583 584 585
2014-04-22  Eli Zaretskii  <eliz@gnu.org>

	* search.c (find_newline1): New subroutine.
	(Fnewline_cache_check): New function.
	(syms_of_search): Defsubr it.

586 587 588 589 590 591
2014-04-21  Jarek Czekalski  <jarekczek@poczta.onet.pl>

	Fix freezing with scroll bars of GTK3 Toolkit (bug#15801).
	* keyboard.c (unblock_input): Add comment.
	* xgselect.c (xg_select): Prevent Glib main loop recursion.

592 593 594 595 596 597
2014-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>

	* intervals.c (rotate_right, rotate_left): Fix up length computation.
	Also change identifiers to match the comments, and add more assertions
	(bug#16234).

598 599 600 601 602 603
2014-04-18  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (insert_left_trunc_glyphs): Ensure the left truncation
	glyph is written to TEXT_AREA of the temporary glyph_row.
	(Bug#17288)

604 605 606 607
2014-04-18  Paul Eggert  <eggert@cs.ucla.edu>

	* emacs.c (close_output_streams): Don't clear and restore errno.

608 609 610 611 612
2014-04-17  Jan Djärv  <jan.h.d@swipnet.se>

	* xterm.c (x_make_frame_visible): Prevent endless loop when frame
	never becomes visible, i.e. using XMonad  (Bug#17237).

613 614
2014-04-17  Eli Zaretskii  <eliz@gnu.org>

615 616 617 618
	* xdisp.c (Fline_pixel_height): Don't assume that the current
	buffer and the selected window's buffer are one and the same.
	(Bug#17281)

619 620 621
	* insdel.c (invalidate_buffer_caches): Invalidate the bidi
	paragraph-start cache before the newline cache.  (Bug#17269)

622 623 624 625 626 627 628
2014-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>

	* window.c (save_window_save): Lookup window_point_insertion_type in
	the right buffer (bug#15457).
	(Qwindow_point_insertion_type): New var.
	(syms_of_window): Initialize it.

Eli Zaretskii's avatar
Eli Zaretskii committed
629 630
2014-04-16  Eli Zaretskii  <eliz@gnu.org>

631
	Fix the MSDOS build.
Eli Zaretskii's avatar
Eli Zaretskii committed
632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657
	* unexcoff.c [MSDOS]: Include libc/atexit.h.
	(copy_text_and_data): Zero out the atexit chain pointer before
	dumping Emacs.

	* termhooks.h (encode_terminal_code): Update prototype.

	* term.c (encode_terminal_code) [DOS_NT]: Make it externally
	visible for all DOS_NT ports, not just WINDOWSNT.
	(syms_of_term) [!MSDOS]: Don't define 'tty-menu-*' symbols on MSDOS.

	* sysdep.c (emacs_sigaction_init, init_signals): Don't use SIGCHLD
	unless it is defined.
	(emacs_pipe) [MSDOS]: Redirect to 'pipe'.

	* process.c (close_on_exec, accept4, process_socket): Move into
	the "ifdef subprocesses" part.
	(catch_child_signal): Condition by "ifdef subprocesses".
	(syms_of_process) <Qinternal_default_process_sentinel>
	<Qinternal_default_process_filter>: Condition by "ifdef subprocesses".

	* msdos.h: Add prototypes for new functions.
	(EINPROGRESS): Define.
	(O_CLOEXEC): Define to zero.

	* msdos.c (check_window_system): Remove unnecessary an
	incompatible duplicate function.
658 659
	(sys_opendir, readlinkat, faccessat, fstatat, unsetenv):
	New functions in support of new functionality.
Eli Zaretskii's avatar
Eli Zaretskii committed
660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688

	* menu.c (single_menu_item): Add visual indication  of submenu
	also for menus on MSDOS frames.
	(Fx_popup_menu) [!MSDOS]: Do not call tty_menu_show on MSDOS.

	* lisp.h (CHECK_PROCESS) [!subprocesses]: Do not define
	when async subprocesses aren't supported.

	* font.h (FONT_WIDTH) [MSDOS]: MSDOS-specific definition.

	* emacs.c (close_output_streams): Zero out errno before calling
	close_stream.

	* dired.c [MSDOS]: Include msdos.h.

	* conf_post.h (opendir) [MSDOS]: Redirect to sys_opendir.
	(DATA_START) [MSDOS]: Define.
	(SYSTEM_PURESIZE_EXTRA) [MSDOS]: Enlarge by 25K.

	* callproc.c (block_child_signal, unblock_child_signal) [MSDOS]:
	Ifdef away for MSDOS.
	(record_kill_process) [MSDOS]: Ifdef away the entire body for MSDOS.
	(call_process_cleanup) [MSDOS]: Ifdef away portions not relevant
	for MSDOS.
	(call_process) [MSDOS]: Fix call sequence of dostounix_filename.
	Use temporary file template that is compatible with mkostemp.
	Move vfork-related portions under #ifndef MSDOS.
	(syms_of_callproc): Unify templates of MSDOS and WINDOWSNT.

689 690 691 692 693 694 695 696 697 698
2014-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>

	* buffer.c (Foverlays_at): Add argument `sorted'.

2014-04-14  Eli Zaretskii  <eliz@gnu.org>

	* insdel.c (invalidate_buffer_caches): When deleting or replacing
	text, invalidate the bidi_paragraph_cache upto and including the
	preceding newline.

Paul Eggert's avatar
Paul Eggert committed
699 700 701 702 703 704 705 706 707 708 709 710
2014-04-13  Paul Eggert  <eggert@cs.ucla.edu>

	Port to IRIX 6.5 (Bug#9684).
	* alloc.c (TAGGABLE_NULL): New constant,
	for porting to hosts with nontrivial DATA_SEG_BITS settings.
	(next_vector, set_next_vector): Use it.
	* conf_post.h (INET6) [IRIX6_5]: Define.
	(HAVE_GETADDRINFO) [IRIX6_5]: Undef.
	* data.c (BITS_PER_ULL): Don't assume ULLONG_MAX is defined.
	* lisp.h (lisp_h_XPNTR): Don't OR in bits that aren't masked out,
	for consistency with how TAGGABLE_NULL is computed.

711 712
2014-04-13  Eli Zaretskii  <eliz@gnu.org>

713 714 715
	* keyboard.c (Fopen_dribble_file): Encode the dribble file-name
	before passing it to system APIs.

716 717
	* puresize.h (BASE_PURESIZE): Bump by 1K.  (Bug#17255)

718 719 720 721 722
2014-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>

	* bytecode.c (exec_byte_code): Rework the volatiles.  Most importantly,
	make sure stack.byte_string_start is not de-adjusted by pushhandler.

723 724 725 726
2014-04-12  Paul Eggert  <eggert@cs.ucla.edu>

	* keyboard.c (Fopen_dribble_file): Avoid some races.  (Bug#17187)

727 728 729 730 731 732 733 734 735 736
2014-04-12  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (move_it_by_lines): If a large portion of buffer text is
	covered by a display string that ends in a newline, and that cases
	going back by DVPOS lines to hit the search limit, lift the limit
	and go back until DVPOS is reached.  (Bug#17244)

	* indent.c (Fvertical_motion): Handle correctly the case when the
	display string is preceded by an empty line.

737 738 739 740 741
2014-04-11  Eli Zaretskii  <eliz@gnu.org>

	* w32.c (sys_umask) <WRITE_USER>: Remove redundant constant, and
	use S_IWRITE instead.

742 743 744 745
2014-04-11  Glenn Morris  <rgm@gnu.org>

	* keyboard.c (Fopen_dribble_file): Make file private.  (Bug#17187)

746 747 748 749
2014-04-09  Ken Brown  <kbrown@cornell.edu>

	* Makefile.in (EMACS_MANIFEST): Revert last change.

750 751 752 753 754 755 756 757 758 759 760 761 762 763 764
2014-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>

	* lisp.h (struct Lisp_Symbol): New bitfield `pinned'.

	* alloc.c: Keep track of symbols referenced from pure space (bug#17168).
	(symbol_block_pinned): New var.
	(Fmake_symbol): Initialize `pinned'.
	(purecopy): New function, extracted from Fpurecopy.  Mark symbols as
	pinned and signal an error for un-purifiable objects.
	(pure_cons): Use it.
	(Fpurecopy): Use it, except for objects that can't be purified.
	(mark_pinned_symbols): New function.
	(Fgarbage_collect): Use it.
	(gc_sweep): Remove hack made unnecessary.

765 766 767 768
2014-04-05  Glenn Morris  <rgm@gnu.org>

	* keyboard.c (Fopen_dribble_file): Doc tweak.

Jan Djärv's avatar
Jan Djärv committed
769 770 771 772
2014-04-04  Jan Djärv  <jan.h.d@swipnet.se>

	Backport from trunk.
	* nsterm.m (updateFrameSize:): If waiting for the tool bar and tool
773 774 775 776
	bar is zero height, just return (Bug#16976).
	(initFrameFromEmacs:): Initialize wait_for_tool_bar.
	* nsterm.h (EmacsView): Add wait_for_tool_bar.
	* nsmenu.m (update_frame_tool_bar): Return early if view or toolbar
Jan Djärv's avatar
Jan Djärv committed
777
	is nil.  If waiting for toolbar to complete, force a redraw.
778
	(free_frame_tool_bar): Set wait_for_tool_bar = NO (Bug#16976).
Jan Djärv's avatar
Jan Djärv committed
779

780 781 782 783
2014-04-03  Ken Brown  <kbrown@cornell.edu>

	* Makefile.in (EMACS_MANIFEST): Update comment.  (Bug#17176)

784 785 786 787 788
2014-04-02  Martin Rudalics  <rudalics@gmx.at>

	* xterm.c (x_new_font): Don't calculate non-toolkit scrollbar
	width from font width (Bug#17163).

789 790 791 792 793 794
2014-03-30  Martin Rudalics  <rudalics@gmx.at>

	* frame.c (x_set_frame_parameters): Calculate default values of
	new frame sizes only after all other frame parameters have been
	processed (Bug#17142).

795 796 797 798 799
2014-03-28  Ken Brown  <kbrown@cornell.edu>

	* conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Set to 10000.
	(Bug#17112)

800 801 802 803 804
2014-03-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* xterm.c (x_draw_image_glyph_string): Adjust image background
	width accordingly when its x position is adjusted.  (Bug#17115)

805 806 807 808 809 810
2014-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* w32term.c (x_draw_image_glyph_string): Fix computation of height
	and width of image background when it is displayed with a 'box'
	face.  (Bug#17115)

811 812 813 814 815
2014-03-26  Paul Eggert  <eggert@penguin.cs.ucla.edu>

	More backward-compatible fix to char-equal core dump (Bug#17011).
	* editfns.c (Fchar_equal): In unibyte buffers, assume values in
	range 128-255 are raw bytes.  Suggested by Eli Zaretskii.
816

Paul Eggert's avatar
Paul Eggert committed
817 818 819 820 821
	Fix core dump in char-equal (Bug#17011).
	* editfns.c (Fchar_equal): Do not use MAKE_CHAR_MULTIBYTE in
	unibyte buffers, as we can't tell whether the characters are
	actually unibyte.

822 823
	* insdel.c (adjust_markers_for_delete): Remove unused local.

824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842
2014-03-24  Barry O'Reilly  <gundaetiapo@gmail.com>

	Have (MARKER . ADJUSTMENT) undo records always be immediately
	after their corresponding (TEXT . POS) record in undo list.
	(Bug#16818)
	* lisp.h (record-delete): New arg record_markers.
	(record_marker_adjustment): No longer needed outside undo.c.
	* insdel.c (adjust_markers_for_delete): Move calculation of marker
	adjustments to undo.c's record_marker_adjustments.  Note that
	fileio.c's decide_coding_unwind is another caller to
	adjust_markers_for_delete.  Because it has undo list bound to t,
	it does not rely on adjust_markers_for_delete to record marker
	adjustments.
	(del_range_2): Swap call to record_delete and
	adjust_markers_for_delete so as undo marker adjustments are
	recorded before current deletion's adjustments, as before.
	(adjust_after_replace):
	(replace_range): Pass value for new record_markers arg to
	delete_record.
843
	* undo.c (record_marker_adjustment): Rename to
844 845 846 847 848 849 850 851
	record_marker_adjustments and made static.
	(record_delete): Check record_markers arg and call
	record_marker_adjustments.
	(record_change): Pass value for new record_markers arg to
	delete_record.
	(record_point): at_boundary calculation no longer needs to account
	for marker adjustments.

852 853 854 855 856
2014-03-24  Martin Rudalics  <rudalics@gmx.at>

	* w32term.c (x_set_window_size): Refine fix from 2014-03-14
	(Bug#17077).

857 858 859 860
2014-03-23  Glenn Morris  <rgm@gnu.org>

	* fileio.c (Ffile_symlink_p): Doc fix. (Bug#17073)

861 862 863 864 865 866
2014-03-23  Stefan Monnier  <monnier@iro.umontreal.ca>

	* buffer.c (struct sortvec): Add field `spriority'.
	(compare_overlays): Use it.
	(sort_overlays): Set it.

867 868 869 870
2014-03-23  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (redisplay_window): If all previous attempts to find the
	cursor row failed, try a few alternatives before falling back to
871
	the top-most row of the window.  Use row_containing_pos.  (Bug#17047)
872

873 874 875 876 877 878
2014-03-22  Daniel Colascione  <dancol@dancol.org>

	* process.c (conv_sockaddr_to_lisp): When extracting the string
	names of AF_LOCAL sockets, stop before reading uninitialized
	memory.

879 880 881 882 883
2014-03-23  Daniel Colascione  <dancol@dancol.org>

	* process.c (DATAGRAM_CONN_P): Don't underflow datagram_address
	array.  (ASAN caught.)

884 885 886 887 888 889
2014-03-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	Fix regression introduced by patch for Bug#10500.
	* xterm.c (x_draw_image_relief): Respect Vtool_bar_button_margin.
	* w32term.c (x_draw_image_relief): Likewise.

890 891 892 893 894 895
2014-03-21  Martin Rudalics  <rudalics@gmx.at>

	* w32fns.c (w32_wnd_proc): For WM_WINDOWPOSCHANGING don't
	constrain frame size in SW_SHOWMAXIMIZED case so we can truly
	maximize a frame for odd default fonts.

Paul Eggert's avatar
Paul Eggert committed
896 897 898 899
2014-03-20  Paul Eggert  <eggert@cs.ucla.edu>

	* doc.c (store_function_docstring): Fix pointer signedness mismatch.

900 901
2014-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>

902 903 904 905 906 907
	* doc.c (store_function_docstring): Warn when we don't know where to
	put a docstring.
	(Fsubstitute_command_keys): Don't advertise the fact that
	text-properties are dropped, since we think it's a bug that we'll fix
	in 24.5.

908 909 910 911
	* frame.h (SET_FRAME_VISIBLE): Keep frame_garbaged up to date.
	* xterm.c (handle_one_xevent) <MapNotify>: Don't garbage the frame.
	* frame.c (frame_garbaged): Make "docstring" more precise.

912 913 914 915 916
2014-03-20  Glenn Morris  <rgm@gnu.org>

	* charset.c (init_charset): When we cannot find the charsets directory,
	mention if EMACSDATA is set.

917 918
2014-03-19  Paul Eggert  <eggert@cs.ucla.edu>

919 920
	* fns.c (Frandom): Fix rare bug where the result isn't random.

921 922 923 924 925
	Fix porting inconsistency about rounding to even.
	* floatfns.c (emacs_rint) [!HAVE_RINT]: Round to even.
	This way, the unusual !HAVE_RINT case acts like the usual
	HAVE_RINT case, and we can fix the documentation accordingly.

926 927 928 929 930 931
2014-03-19  Eli Zaretskii  <eliz@gnu.org>

	* w32fns.c (reset_modifiers): Zero out keystate[] before using it.
	(w32_wnd_proc): Initialize the dwHoverTime member of
	TRACKMOUSEEVENT structure.

932 933 934 935
2014-03-17  Teodor Zlatanov  <tzz@lifelogs.com>

	* gnutls.c (Fgnutls_boot): Fix case of :verify-error = t.

936 937 938
2014-03-16  Eli Zaretskii  <eliz@gnu.org>

	* search.c (find_newline): Speed up the function when using the
939
	newline cache, by halving the number of calls to
940 941
	region_cache_forward and region_cache_backward.  (Bug#16830)

942 943 944 945
2014-03-15  Juanma Barranquero  <lekktu@gmail.com>

	* buffer.c (Fset_buffer): Document return value (bug#17015).

946 947 948 949 950 951
2014-03-14  Martin Rudalics  <rudalics@gmx.at>

	* w32term.c (x_set_window_size): When frame-resize-pixelwise is
	nil, always resize character wise to avoid potential loss of the
	mode line (Bug#16923 related).

952 953 954 955 956
2014-03-12  Martin Rudalics  <rudalics@gmx.at>

	* frame.c (x_set_frame_parameters): Always calculate new sizes
	pixelwise to avoid potential loss when rounding.

957 958 959 960 961
2014-03-11  Dmitry Antipov  <dmantipov@yandex.ru>

	* xfns.c (x_set_mouse_color): Recolor vertical_drag_cursor.
	* xterm.c (x_free_frame_resources): Free all allocated cursors.

962 963 964 965 966 967
2014-03-10  Eli Zaretskii  <eliz@gnu.org>

	* w32.c (fstatat): Don't add an extra slash if the argument ends
	with a slash: this fails the subsequent call to stat_worker on
	Windows 9X.  Reported by oslsachem <oslsachem@gmail.com>.

968 969 970 971
2014-03-09  Martin Rudalics  <rudalics@gmx.at>

	* xdisp.c (Fwindow_text_pixel_size): Adjust doc-string.

972 973 974 975
2014-03-08  Jan Djärv  <jan.h.d@swipnet.se>

	* nsterm.h (MAC_OS_X_VERSION_10_9): Add.

976 977
	* nsterm.m (constrainFrameRect:toScreen:): Constrain normally
	when frame is only on one screen (Bug#14713).
978

979 980 981 982 983 984 985 986 987
2014-03-08  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (move_it_in_display_line_to): If word-wrap is ON, and
	there's a valid wrap point in the display line, the last glyph
	cannot "just barely fit" on this row, because display_line doesn't
	let it.  Instead, proceed as if the last glyph didn't fit, so that
	we eventually back up the iterator to the wrap point.  This avoids
	delusional behavior of move_it_to, whereby it proceeds to the next
	display line, but sets current_x to zero for all the glyphs that
988 989
	without word-wrap would fit on the previous display line.
	One result was that visual-order cursor movement behaved erratically
990 991 992 993
	under word-wrap.
	(Fmove_point_visually): Add code to find the x coordinate of the
	last character before wrap point, under word-wrap on a TTY.

994 995 996 997 998 999 1000
2014-03-07  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (Fmove_point_visually): When under word-wrap, accept
	also return value of MOVE_POS_MATCH_OR_ZV from
	move_it_in_display_line_to, when moving from beginning of line to
	point's position.  (Bug#16961)

1001 1002 1003 1004 1005 1006
2014-03-07  Martin Rudalics  <rudalics@gmx.at>

	* buffer.c (Vbuffer_list_update_hook): Doc-string fix.
	* window.c (Fselect_window): Explain NORECORD and
	`buffer-list-update-hook' in doc-string.

1007 1008 1009 1010 1011
2014-03-06  Martin Rudalics  <rudalics@gmx.at>

	* window.c (Fother_window_for_scrolling): Check that
	Vother_window_scroll_buffer is a buffer.

1012 1013 1014 1015 1016 1017 1018 1019 1020
2014-03-06  Dmitry Antipov  <dmantipov@yandex.ru>

	* xterm.c (xim_initialize): Always pass a copy of resource name
	to XRegisterIMInstantiateCallback and eassert whether return
	value is True.  Passing copy is important because Xlib doesn't
	make its own copy and resource name argument usually points to
	SSDATA (Vx_resource_name), which may be changed from Lisp.
	(xim_close_display): For XUnregisterIMInstantiateCallback,
	always eassert return value and pass exactly the same values
1021 1022
	as were used for XRegisterIMInstantiateCallback.
	Otherwise XUnregisterIMInstantiateCallback will always fail.  See Xlib
1023 1024
	sources to check why if you are interested.

1025 1026 1027 1028 1029 1030 1031
2014-03-05  Martin Rudalics  <rudalics@gmx.at>

	* dispnew.c (change_frame_size_1): Add new_lines instead of
	new_height, the latter may be still zero if passed as such.
	* window.c (Fwindow_pixel_height): Mention bottom divider in
	doc-string.

1032 1033
2014-03-05  Paul Eggert  <eggert@cs.ucla.edu>

1034 1035
	Fix "resource temporarily unavailable" with xgselect
	(Bug#16925).
1036 1037 1038
	* xgselect.c: Include <stdbool.h>.
	(xg_select) [!USE_GTK]: Don't lose track of errno.

1039 1040 1041 1042
	Fix minor --enable-gcc-warnings issues.
	* widget.c (update_various_frame_slots, EmacsFrameResize):
	Avoid unused locals.  Prefer 'if' to '#if' when either will do.

1043 1044 1045 1046 1047
2014-03-04  Ken Brown  <kbrown@cornell.edu>

	* gmalloc.c (aligned_alloc): Clarify the code by making `adj'
	represent the actual adjustment needed for alignment.

1048 1049 1050 1051 1052 1053
2014-03-04  Eli Zaretskii  <eliz@gnu.org>

	* gmalloc.c (aligned_alloc): Don't allocate more memory than
	needed, and don't reallocate if the initial allocation already
	fits the bill.  Suggested by Ken Brown <kbrown@cornell.edu>.

1054 1055 1056 1057 1058
2014-03-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* xterm.c (x_draw_stretch_glyph_string): Reset clipping.
	(Bug#16932)

1059 1060 1061 1062 1063
2014-03-04  Michal Nazarewicz  <mina86@mina86.com>

	* cmds.c (delete-char): Update docstring pointing out that the
	function ignores `delete-active-region' and `overwrite-mode'.

1064 1065
2014-03-03  Eli Zaretskii  <eliz@gnu.org>

1066 1067
	* font.c (Fframe_font_cache): Fix last change.  (Bug#16930)

1068 1069 1070 1071 1072 1073 1074 1075
	* gmalloc.c (aligned_alloc): Fix adjustment of size of the
	allocated buffer due to alignment.
	(freehook): If the block to be freed was allocated by
	'aligned_alloc', find its real pointer before calling 'free'.
	(Bug#16901)
	(mabort) [emacs]: Call 'emacs_abort', not 'abort', to provide a
	backtrace.

1076 1077 1078 1079 1080 1081 1082 1083
2014-03-03  Dmitry Antipov  <dmantipov@yandex.ru>

	* font.c (toplevel): Adjust comment about font cache layout.
	(font_clear_cache): Fix to match real font cache layout.
	Suggested by <namespace_collision@yahoo.com> in Bug#16069.
	(Fframe_font_cache) [FONT_DEBUG]: New function.
	(syms_of_font) [FONT_DEBUG]: Defsubr it.

1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097
	Avoid crashes when X fonts are erroneously freed on reused X
	'Display *' connection data (Bug#16069).  Note that X font
	resources still may be leaked, but currently there is no way
	to completely avoid it.
	* xterm.h (struct x_display_info): New member x_id.  Add comments.
	* xterm.c (x_display_id): New variable.
	(x_term_init): Assign identifier to each opened X connection.
	* xfont.c (struct xfont): New member x_display_id.
	(xfont_open): Initialize it with frame's display id.
	(xfont_close): Check whether font's display id matches the one
	recorded for the given display.  Adjust comment.
	* xftfont.c (struct xftfont_info):
	(xftfont_open, xftfont_close): Exactly as above with xfont stuff.

1098 1099 1100 1101 1102 1103 1104
2014-03-01  Martin Rudalics  <rudalics@gmx.at>

	Consider Vother_window_scroll_buffer valid iff it's a live buffer.
	* window.c (Fother_window_for_scrolling): Don't try to scroll a
	killed Vother_window_scroll_buffer.
	(Vother_window_scroll_buffer): Fix doc-string accordingly.

1105 1106 1107 1108 1109
2014-03-01  Eli Zaretskii  <eliz@gnu.org>

	* fileio.c (Fexpand_file_name) [WINDOWSNT]: Don't treat file names
	that start with more than 2 slashes as UNCs.  (Bug#16751)

1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121
2014-02-28  Paul Eggert  <eggert@penguin.cs.ucla.edu>

	Fix a few crashes and leaks when cloning C strings.
	* alloc.c, lisp.h (dupstring): New function.
	* gtkutil.c (xg_get_font):
	* term.c (tty_default_color_capabilities):
	* xsettings.c (store_monospaced_changed)
	(store_font_name_changed, parse_settings)
	(read_and_apply_settings, init_gsettings, init_gconf): Use it.
	This avoids some unlikely crashes due to accessing freed storage,
	and avoids some minor memory leaks in the more-typical case.

1122 1123 1124 1125 1126
2014-02-28  Martin Rudalics  <rudalics@gmx.at>

	* xdisp.c (note_mode_line_or_margin_highlight): Don't show drag
	cursor when modeline can't be dragged (Bug#16647).

1127 1128 1129 1130 1131
2014-02-28  Glenn Morris  <rgm@gnu.org>

	* doc.c (Fsnarf_documentation): Snarf not-yet-bound variables
	from custom-delayed-init-variables.  (Bug#11565)

1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149
2014-02-27  Martin Rudalics  <rudalics@gmx.at>

	More fixes for mouse glyph calculations (Bug#16647).
	* window.c (coordinates_in_window): In intersection of
	horizontal and vertical window dividers prefer the horizontal
	one.  Add some extra parens to last fix.
	(window_relative_x_coord): Return x-coordinate for header and
	mode line too.
	* xdisp.c (remember_mouse_glyph): In text area don't extend
	glyph into mode line to show the vertical drag cursor there
	immediately.  Subdivide mouse glyphs in right fringes to show a
	horizontal drag cursor as soon as we enter the "grabbable width"
	portion.  Handle vertical border case separately.  Do not
	subdivide window divider areas.
	(note_mouse_highlight): On bottom divider of bottommost windows
	show vertical drag cursor only when the minibuffer window can be
	resized.

1150 1151 1152 1153 1154 1155 1156 1157 1158
2014-02-27  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (pop_it): Restore the it->face_box_p flag which could be
	reset by the face of the object just displayed.  See also bug#76.
	(get_next_display_element): If the string came from a display
	property, examine the box face attribute at it->position, not at
	it->current.pos, since the latter was not updated yet.  (Bug#16870)
	(handle_face_prop): Improve commentary.

1159 1160 1161 1162 1163
2014-02-27  Michael Albinus  <michael.albinus@gmx.de>

	* dbusbind.c (Fdbus__init_bus, Qdbus__init_bus, Sdbus__init_bus):
	Rename from Fdbus_init_bus_1, Qdbus_init_bus_1, Sdbus_init_bus_1.

Martin Rudalics's avatar
Martin Rudalics committed
1164 1165 1166 1167 1168 1169 1170 1171 1172
2014-02-26  Martin Rudalics  <rudalics@gmx.at>

	Fixes around Bug#16647.
	* xdisp.c (remember_mouse_glyph): Handle ON_RIGHT_DIVIDER and
	ON_BOTTOM_DIVIDER cases.
	* window.c (coordinates_in_window): Return ON_VERTICAL_BORDER
	only if the window has no right divider.
	(Fcoordinates_in_window_p): Fix doc-string.

1173 1174 1175 1176
2014-02-25  Juanma Barranquero  <lekktu@gmail.com>

	* lread.c (Funintern): Fix doc to match advertised calling convention.

Daniel Colascione's avatar
Daniel Colascione committed
1177 1178 1179 1180
2014-02-24  Daniel Colascione  <dancol@dancol.org>

	* keyboard.c (read_char): Close race that resulted in lost events.

1181 1182
2014-02-22  Glenn Morris  <rgm@gnu.org>

Glenn Morris's avatar
Glenn Morris committed
1183 1184 1185
	* frame.c (frame-alpha-lower-limit, frame-resize-pixelwise):
	* window.c (window-resize-pixelwise): Doc fixes.

1186 1187 1188
	* process.c (Finternal_default_process_filter)
	(Finternal_default_process_sentinel): Doc tweaks.

1189 1190 1191 1192 1193 1194
2014-02-21  Glenn Morris  <rgm@gnu.org>

	* process.c (Fprocess_buffer, Faccept_process_output)
	(Finternal_default_process_filter, Finternal_default_process_sentinel):
	Doc fixes.

1195 1196 1197 1198
2014-02-21  Martin Rudalics  <rudalics@gmx.at>

	* window.c (Fwindow_scroll_bar_width): New function.

1199 1200 1201 1202 1203 1204
2014-02-21  Paul Eggert  <eggert@cs.ucla.edu>

	Pacify GCC when configuring with --enable-gcc-warnings.
	* xdisp.c (move_it_in_display_line_to) [lint]:
	Initialize recently-added local.

1205 1206 1207 1208
2014-02-21  Daniel Colascione  <dancol@dancol.org>

	* dbusbind.c: Rename dbus-init-bus to dbus-init-bus-1.

1209 1210 1211 1212
2014-02-20  Eli Zaretskii  <eliz@gnu.org>

	* xdisp.c (init_iterator): Don't dereference a bogus face
	pointer.  (Bug#16819)
1213 1214 1215
	(try_cursor_movement): Don't use cursor position if
	set_cursor_from_row failed to compute it.  This avoids assertion
	violations in MATRIX_ROW.
1216 1217 1218 1219 1220 1221
	(move_it_in_display_line_to): Save the iterator state in ppos_it
	only once per call.  Reimplement the method used to return to the
	best candidate position if all the positions found in display line
	are beyond TO_CHARPOS.  This cuts down the number of calls to
	bidi_shelve_cache, which moves a lot of stuff when lines are long
	and include bidirectional text.  (Bug#15555)
1222

1223 1224 1225 1226
2014-02-20  Glenn Morris  <rgm@gnu.org>

	* data.c (Fdefalias): Doc fix.

1227 1228
2014-02-19  Eli Zaretskii  <eliz@gnu.org>

1229 1230 1231 1232 1233
	* xdisp.c (display_line): Fix horizontal scrolling of large images
	when fringes are turned off.  This comes at a price of not
	displaying the truncation/continuation glyphs in this case.
	(Bug#16806)

1234 1235 1236 1237 1238 1239 1240
	* image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: If
	CreateDIBSection returns an error indication, zero out *ximg after
	destroying the image.  This avoids crashes in memory allocations
	due to the fact that some of the callers also call
	x_destroy_x_image, which will attempt to free an already free'd
	block of memory.

1241 1242 1243 1244 1245
2014-02-18  Martin Rudalics  <rudalics@gmx.at>

	* widget.c (update_various_frame_slots): Don't set
	FRAME_PIXEL_HEIGHT and FRAME_PIXEL_WIDTH here (Bug#16736).

1246 1247 1248 1249
2014-02-18  Michael Albinus  <michael.albinus@gmx.de>

	* dbusbind.c (xd_close_bus): Apply proper check on busobj.

Paul Eggert's avatar
Paul Eggert committed
1250 1251 1252 1253 1254 1255
2014-02-17  Paul Eggert  <eggert@cs.ucla.edu>

	temacs --daemon fix (Bug#16599).
	* emacs.c (main): Initialize daemon_pipe[1] here ...
	(syms_of_emacs): ... instead of here.

1256
2014-02-16  Anders Lindgern  <andlind@gmail.com>
1257 1258 1259 1260

	* nsterm.m (keyDown:): Check for normal key even if NSNumericPadKeyMask
	is set (Bug#16505).

1261 1262 1263 1264 1265 1266 1267 1268
2014-02-16  Daniel Colascione  <dancol@dancol.org>

	* dbusbind.c (xd_lisp_dbus_to_dbus): New function.
	(xd_get_connection_address): Use it.
	(xd_close_bus): Use xd_lisp_dbus_to_dbus to instead of
	xd_get_connection_address because the latter signals if the bus
	we're trying to close is already disconnected.

1269 1270 1271 1272 1273 1274
2014-02-13  Eli Zaretskii  <eliz@gnu.org>

	* w32proc.c (start_timer_thread): Pass a non-NULL pointer as last
	argument to CreateThread.  This avoids segfaults on Windows 9X.
	Reported by oslsachem <oslsachem@gmail.com>.

1275 1276 1277 1278 1279 1280 1281 1282 1283 1284
2014-02-13  Paul Eggert  <eggert@cs.ucla.edu>

	Fix subspace record bug on HP-UX 10.20 (Bug#16717).
	* unexhp9k800.c (unexec_error): New function, to simplify the code.
	(check_lseek): New function, to report lseek errors.
	(save_data_space, update_file_ptrs, read_header, write_header)
	(copy_file, copy_rest, unexec): Use these news functions.
	(update_file_ptrs): Don't assume wraparound behavior when
	converting a large size_t value to off_t.

1285 1286 1287 1288
2014-02-13  Dmitry Antipov  <dmantipov@yandex.ru>

	* composite.c (fill_gstring_header): Pass positions as C integers
	and move parameters checking to...
Dmitry Antipov's avatar
Dmitry Antipov committed
1289 1290 1291
	(Fcomposition_get_gstring): ...this function.  Handle case when
	buffer positions are in reversed order and avoid crash (Bug#16739).
	Adjust docstring.
1292 1293
	* buffer.c (validate_region): Mention current buffer in error message.

Juanma Barranquero's avatar
Juanma Barranquero committed
1294
2014-02-12  Marcus Karlsson  <mk@acc.umu.se>  (tiny change)
1295 1296 1297

	* image.c (pbm_load): Set to NO_PIXMAP on error (Bug#16683).

1298 1299 1300 1301
2014-02-12  Lars Ingebrigtsen  <larsi@gnus.org>

	* buffer.c (syms_of_buffer): Doc clarification (bug#9981).

1302 1303 1304 1305 1306
2014-02-11  Glenn Morris  <rgm@gnu.org>

	* nsfns.m (ns_display_info_for_name, Fx_open_connection):
	Replace refs to "OpenStep" in messages.

1307 1308 1309 1310 1311 1312 1313 1314 1315 1316
2014-02-10  Paul Eggert  <eggert@cs.ucla.edu>

	Avoid "." at end of error diagnostics.
	* cmds.c (Fself_insert_command): Reword and avoid "." at end.
	* font.c (Ffont_at):
	* nsfns.m (ns_display_info_for_name):
	* nsselect.m (Fx_own_selection_internal):
	* nsterm.m (performDragOperation:):
	Remove "." from end of diagnostic.

1317 1318 1319 1320
2014-02-10  Lars Ingebrigtsen  <larsi@gnus.org>

	* fns.c (Fmaphash): Say what `maphash' returns, since it may be
	unintuitive (bug#15824).
Lars Ingebrigtsen's avatar
Lars Ingebrigtsen committed
1321
	(Fyes_or_no_p): Doc fix (bug#15456).
1322

1323 1324 1325 1326
2014-02-10  Dmitry Antipov  <dmantipov@yandex.ru>

	* cmds.c (Fself_insert_command): Respect the width of EMACS_INT
	and avoid warning.
1327 1328 1329
	* eval.c (call_debugger): When exiting the debugger, do not allow
	max_specpdl_size less than actual binding depth (Bug#16603).
	(syms_of_eval): Adjust docstring.
1330

1331 1332
2014-02-09  Lars Ingebrigtsen  <larsi@gnus.org>

1333 1334 1335
	* cmds.c (Fself_insert_command): Output a clearer error message on
	negative repetitions (bug#9476).

1336 1337
	* macros.c (Fexecute_kbd_macro): Doc fix (bug#14206).

1338 1339
2014-02-08  Lars Ingebrigtsen  <larsi@gnus.org>

1340 1341
	* syntax.c (Fskip_syntax_backward): Doc clarification (bug#15115).

1342 1343
	* minibuf.c (Fread_string): Doc clarification (bug#15422).

1344 1345
	* buffer.c (Fmake_overlay): Doc clarification (bug#15489).

1346 1347 1348 1349
2014-02-08  Juanma Barranquero  <lekktu@gmail.com>

	* keyboard.c (Frecursive_edit): Fix typo in docstring.

1350 1351
2014-02-08  Lars Ingebrigtsen  <larsi@gnus.org>

1352 1353
	* xdisp.c (syms_of_xdisp): Doc clarification (bug#15657).

1354 1355 1356
	* keyboard.c (Frecursive_edit): Say more precicely how throwing
	`exit' works (bug#15865).

1357 1358
2014-02-07  Martin Rudalics  <rudalics@gmx.at>

1359
	Constrain window box/body sizes and margin widths (Bug#16649).
1360 1361 1362
	* xdisp.c (window_box_width): Don't return less than zero.
	(window_box_left_offset, window_box_right_offset): Don't return
	more than the window's pixel width.
Martin Rudalics's avatar
Martin Rudalics committed
1363 1364
	* window.c (window_body_height, window_body_width): Don't return
	negative value.
1365
	(window_resize_apply): Adjust margin width, if necessary.
1366

1367 1368 1369 1370
2014-02-07  Glenn Morris  <rgm@gnu.org>

	* nsterm.m (syms_of_nsterm): Doc fix.

1371 1372
2014-02-06  Eli Zaretskii  <eliz@gnu.org>

1373 1374
	* w32.c (pMultiByteToWideChar, pWideCharToMultiByte):
	New variables: pointers through which to call the respective APIs.
1375
	(filename_to_utf16, filename_from_utf16, filename_to_ansi)
1376 1377
	(filename_from_ansi, sys_link, check_windows_init_file):
	Call MultiByteToWideChar and WideCharToMultiByte through pointers.
1378 1379 1380 1381 1382 1383 1384 1385 1386
	This is required on Windows 9X, where we dynamically load
	UNICOWS.DLL which has their non-stub implementations.
	(maybe_load_unicows_dll): Assign addresses to these 2 function
	pointers after loading UNICOWS.DLL.

	* w32fns.c (Fx_file_dialog, Fw32_shell_execute) [!CYGWIN]: Call
	MultiByteToWideChar and WideCharToMultiByte through function
	pointers.

1387 1388
	* w32.h (pMultiByteToWideChar, pWideCharToMultiByte):
	New declarations.
1389

1390 1391 1392 1393 1394 1395
2014-02-06  Jan Djärv  <jan.h.d@swipnet.se>

	* nsterm.m (toggleFullScreen:): Hide menubar on secondary monitor
	for OSX >= 10.9 if separate spaces are used.
	(toggleFullScreen:): Use screen of w instead of fw (Bug#16659).

1396 1397 1398 1399
2014-02-06  Glenn Morris  <rgm@gnu.org>

	* buffer.c (cache-long-scans): Doc fix.

1400 1401 1402 1403
2014-02-05  Eli Zaretskii  <eliz@gnu.org>

	* w32fns.c (Fw32_shell_execute): Doc fix.

Bastien Guerry's avatar
Bastien Guerry committed
1404 1405 1406 1407 1408
2014-02-05  Bastien Guerry  <bzg@gnu.org>

	* syntax.c (Fforward_word): Call Fconstrain_to_field with
	ESCAPE-FROM-EDGE set to `nil' (Bug#16453).

1409 1410
2014-02-05  Martin Rudalics  <rudalics@gmx.at>

1411 1412 1413
	* fringe.c (draw_fringe_bitmap_1): Don't draw a fringe if it's
	outside the window (Bug#16649).

1414 1415 1416
	* xdisp.c (note_mouse_highlight): When entering a margin area show
	a non-text cursor (Bug#16647).

1417 1418 1419 1420 1421 1422
2014-02-04  Paul Eggert  <eggert@cs.ucla.edu>

	* menu.c (Fx_popup_dialog): Remove label 'dialog_via_menu'.
	It prompted a compile-time diagnostic on GNU/Linux.
	Simplify to remove the need for the label.

1423 1424 1425 1426 1427
2014-02-04  Eli Zaretskii  <eliz@gnu.org>

	* w32menu.c (w32_popup_dialog): Don't condition the whole function
	on HAVE_DIALOGS.  If the dialog is "simple", pop up a message box
	to show it; otherwise return 'unsupported--w32-dialog' to signal