aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorEli Zaretskii2012-12-10 14:08:02 +0200
committerEli Zaretskii2012-12-10 14:08:02 +0200
commit3907e630a71d48e693062b350571990d7ba08bbb (patch)
tree2be1ecc0796e42c7a453a9fd5131eb5866f79876 /src/ChangeLog
parentcf2d22b874ca2df0072e32ee641e8efffe4abd6d (diff)
parent81606b10501169a5671061b8461bbc32dcec8705 (diff)
downloademacs-3907e630a71d48e693062b350571990d7ba08bbb.tar.gz
emacs-3907e630a71d48e693062b350571990d7ba08bbb.zip
Merge from trunk + rename the event. Not tested yet.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog672
1 files changed, 670 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index cea22d498ed..ac2299a4f79 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,671 @@
12012-12-10 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
2
3 * termhooks.h (enum event_kind) [HAVE_INOTIFY]: Add
4 FILE_NOTIFY_EVENT.
5
6 * lisp.h (syms_of_inotify) [HAVE_INOTIFY]: Add prototype.
7
8 * keyboard.c (Qfile_inotify) [HAVE_INOTIFY]: New variable.
9 (syms_of_keyboard): DEFSYM it.
10 (kbd_buffer_get_event) [HAVE_INOTIFY]: Generate FILE_NOTIFY_EVENT.
11 (make_lispy_event): Support FILE_NOTIFY_EVENT by generating
12 Qfile_inotify events.
13 (keys_of_keyboard) [HAVE_INOTIFY]: Bind file-inotify events in
14 special-event-map to inotify-handle-event.
15
16 * emacs.c (main) [HAVE_INOTIFY]: Call syms_of_inotify.
17
18 * Makefile.in (base_obj): Add inotify.o.
19
20 * inotify.c: New file.
21
222012-12-10 Jan Djärv <jan.h.d@swipnet.se>
23
24 * nsterm.m (fd_handler:): FD_ZERO fds (Bug#13103).
25
262012-12-10 Fabrice Popineau <fabrice.popineau@gmail.com>
27
28 * w32fns.c (cache_system_info): Cast sysinfo_cache.dwPageSize to
29 DWORD_PTR, for compatibility with 64-bit builds.
30
31 * w32.c (_PROCESS_MEMORY_COUNTERS_EX):
32 (GetProcessWorkingSetSize_Proc, get_process_working_set_size)
33 (system_process_attributes): Use SIZE_T rather than DWORD, for
34 compatibility with 64-bit builds.
35
362012-12-10 Christopher Schmidt <christopher@ch.ristopher.com>
37
38 * lread.c (Vload_source_file_function): Doc fix (Bug#11647).
39
402012-12-10 Eli Zaretskii <eliz@gnu.org>
41
42 * indent.c (Fvertical_motion): If a display string will be
43 displayed on the left or the right margin, don't consider it as a
44 factor in cursor positioning. (Bug#13108)
45
462012-12-10 Martin Rudalics <rudalics@gmx.at>
47
48 * editfns.c (Fcompare_buffer_substrings): Reword doc-string.
49
502012-12-10 Paul Eggert <eggert@cs.ucla.edu>
51
52 * fileio.c (Fsubstitute_in_file_name): Use ptrdiff_t, not int,
53 for string length.
54
552012-12-08 Eli Zaretskii <eliz@gnu.org>
56
57 * w32.c (unsetenv): Return 0 if the input string is too long.
58
592012-12-08 Paul Eggert <eggert@cs.ucla.edu>
60
61 Use putenv+unsetenv instead of modifying environ directly (Bug#13070).
62 * alloc.c (xputenv): New function.
63 * dbusbind.c (Fdbus_init_bus):
64 * emacs.c (main):
65 * xterm.c (x_term_init):
66 Use xputenv instead of setenv or putenv, to detect memory exhaustion.
67 * editfns.c (initial_tz): Move static var decl up.
68 (tzvalbuf_in_environ): New static var.
69 (init_editfns): Initialize these two static vars.
70 (Fencode_time): Don't assume arbitrary limit on EMACS_INT width.
71 Save old TZ value on stack, if it's small.
72 (Fencode_time, set_time_zone_rule): Don't modify 'environ' directly;
73 instead, use xputenv+unsetenv to set and restore TZ.
74 (environbuf): Remove static var. All uses removed.
75 (Fset_time_zone_rule): Do not save TZ and environ;
76 no longer needed here.
77 (set_time_zone_rule_tz1, set_time_zone_rule_tz2) [LOCALTIME_CACHE]:
78 Move to inside set_time_zone_rule; they don't need file scope any more.
79 (set_time_zone_rule): Maintain the TZ=value string separately.
80 (syms_of_editfns): Don't initialize initial_tz;
81 init_editfns now does it.
82 * emacs.c (dump_tz) [HAVE_TZSET]: Now const.
83 * lisp.h (xputenv): New decl.
84
852012-12-08 Fabrice Popineau <fabrice.popineau@gmail.com>
86
87 * w32fns.c (emacs_abort): Don't do arithmetics on void pointers.
88
892012-12-08 Eli Zaretskii <eliz@gnu.org>
90
91 * w32.c (unsetenv, sys_putenv): New functions.
92
932012-12-08 Chong Yidong <cyd@gnu.org>
94
95 * editfns.c (Finsert_char): Make the error message more
96 informative (Bug#12992).
97
982012-12-08 Paul Eggert <eggert@cs.ucla.edu>
99
100 Simplify get_lim_data.
101 * vm-limit.c (get_lim_data): Combine RLIMIT_AS and RLIMIT_DATA methods.
102 Remove USG and vlimit methods; no longer used these days.
103 Add #error catchall just in case.
104
105 Assume POSIX 1003.1-1988 or later for signal.h (Bug#13026).
106 Exceptions: do not assume SIGCONT, SIGSTOP, SIGTSTP, SIGTTIN,
107 SIGTTOU, SIGUSR1, SIGUSR2, as Microsoft platforms lack these.
108 * process.c [subprocesses]: Include <c-ctype.h>, <sig2str.h>.
109 (deleted_pid_list, Fdelete_process, create_process)
110 (record_child_status_change, handle_child_signal, deliver_child_signal)
111 (init_process_emacs, syms_of_process):
112 Assume SIGCHLD is defined.
113 (parse_signal): Remove. All uses removed.
114 (abbr_to_signal): New static function.
115 (Fsignal_process): Use it to convert signal names to ints.
116 * sysdep.c (sys_suspend) [!DOS_NT]: Use kill (0, ...) rather than
117 kill (getpgrp (), ...).
118 (emacs_sigaction_init): Assume SIGCHLD is defined.
119 (init_signals): Assume SIGALRM, SIGCHLD, SIGHUP, SIGKILL,
120 SIGPIPE, and SIGQUIT are defined. Do not worry about SIGCLD any more.
121 * syssignal.h (EMACS_KILLPG): Remove.
122 All uses replaced by 'kill' with a negative pid.
123 (SIGCHLD): Remove definition, as we now assume SIGCHLD.
124 * w32proc.c (sys_kill): Support negative pids compatibly with POSIX.
125
1262012-12-07 Paul Eggert <eggert@cs.ucla.edu>
127
128 * sysdep.c (get_child_status): Abort on internal error (Bug#13086).
129 This will cause a production Emacs to dump core instead of
130 infinite-looping.
131
1322012-12-07 Dmitry Antipov <dmantipov@yandex.ru>
133
134 * frame.c (make_frame): Do not set window's buffer to t.
135 * window.c (Fsplit_window_internal): Likewise. Previously it was
136 used to indicate that the window is being set up. Now we use
137 set_window_buffer for all new windows, so the condition in ...
138 (Fset_window_buffer): ... is always true and can be removed.
139
1402012-12-07 Dmitry Antipov <dmantipov@yandex.ru>
141
142 Convenient macro to check whether the buffer is hidden.
143 * buffer.h (BUFFER_HIDDEN_P): New macro.
144 * frame.c (make_frame): Use it. Adjust comment.
145 * buffer.c (candidate_buffer): New function.
146 (Fother_buffer, other_buffer_safely): Use it.
147
1482012-12-06 Eli Zaretskii <eliz@gnu.org>
149
150 * w32proc.c (waitpid): Avoid busy-waiting when called with WNOHANG
151 if the child process is still running. Instead, exit the wait
152 loop and return zero. (Bug#13086)
153
1542012-12-06 Dmitry Antipov <dmantipov@yandex.ru>
155
156 * frame.h (x_char_width, x_char_height): Remove prototypes.
157 * w32term.h (x_char_width, x_char_height): Likewise.
158 * xfns.c (x_char_width, x_char_height): Remove.
159 * w32fns.c (x_char_width, x_char_height): Likewise.
160 * nsfns.c (x_char_width, x_char_height): Likewise.
161 * frame.c (Fframe_char_width): Use FRAME_COLUMN_WIDTH for
162 all window frames.
163 (Fframe_char_height): Likewise with FRAME_LINE_HEIGHT.
164 * keyboard.c (command_loop_1): Remove prototype.
165 (command_loop_2, top_level_1): Add static to match prototype.
166
1672012-12-06 Paul Eggert <eggert@cs.ucla.edu>
168
169 Fix a recently-introduced delete-process race condition.
170 * callproc.c, process.h (record_kill_process):
171 New function, containing part of the old call_process_kill.
172 (call_process_kill): Use it.
173 This does not change call_process_kill's behavior.
174 * process.c (Fdelete_process): Use record_kill_process to fix a
175 race condition that could cause Emacs to lose track of a child.
176
1772012-12-06 Dmitry Antipov <dmantipov@yandex.ru>
178
179 Avoid code duplication between prev_frame and next_frame.
180 * frame.c (candidate_frame): New function. Add comment.
181 (prev_frame, next_frame): Use it. Adjust comment.
182
1832012-12-06 Eli Zaretskii <eliz@gnu.org>
184
185 * callproc.c (Fcall_process_region) [!HAVE_MKSTEMP]: If mktemp
186 fails, signal an error instead of continuing with an empty
187 string. (Bug#13079)
188 Encode expanded temp file pattern before passing it to mkstemp or
189 mktemp.
190
191 * fileio.c (file_name_as_directory, directory_file_name) [DOS_NT]:
192 Encode the file name before passing it to dostounix_filename, in
193 case it will downcase it (under w32-downcase-file-names).
194 (Bug#12933)
195
1962012-12-05 Paul Eggert <eggert@cs.ucla.edu>
197
198 Minor call-process cleanups.
199 * callproc.c (Fcall_process): Do record-unwind-protect on MSDOS
200 at the same time as other platforms, to simplify analysis.
201 No need for fd0_volatile since we have synch_process_fd.
202 Avoid needless emacs_close; arg is always negative.
203
2042012-12-04 Andreas Schwab <schwab@linux-m68k.org>
205
206 * callproc.c (Fcall_process): Fix specpdl nesting for asynchronous
207 processes.
208
2092012-12-04 Dmitry Antipov <dmantipov@yandex.ru>
210
211 * lisp.h (Mouse_HLInfo): Remove set-but-unused mouse_face_image_state
212 member. Adjust users. Convert mouse_face_past_end, mouse_face_defer
213 and mouse_face_hidden members to a bitfields.
214 * frame.h (struct frame): Remove set-but-not-used space_width member.
215 (FRAME_SPACE_WIDTH): Remove.
216 * nsterm.m, w32term.c, xterm.c: Adjust users.
217 * termchar.h (struct tty_display_info): Remove set-but-unused se_is_so
218 member. Adjust users. Convert term_initted, delete_in_insert_mode,
219 costs_set, insert_mode, standout_mode, cursor_hidden and flow_control
220 members to a bitfields.
221
2222012-12-03 Paul Eggert <eggert@cs.ucla.edu>
223
224 Don't let call-process be a zombie factory (Bug#12980).
225 Fixing this bug required some cleanup of the signal-handling code.
226 As a side effect, this change also fixes a longstanding rare race
227 condition whereby Emacs could mistakenly kill unrelated processes,
228 and it fixes a bug where a second C-g does not kill a recalcitrant
229 synchronous process in GNU/Linux and similar platforms.
230 The patch should also fix the last vestiges of Bug#9488,
231 a bug which has mostly been fixed on the trunk by other changes.
232 * callproc.c, process.h (synch_process_alive, synch_process_death)
233 (synch_process_termsig, sync_process_retcode):
234 Remove. All uses removed, to simplify analysis and so that
235 less consing is done inside critical sections.
236 * callproc.c (call_process_exited): Remove. All uses replaced
237 with !synch_process_pid.
238 * callproc.c (synch_process_pid, synch_process_fd): New static vars.
239 These take the role of what used to be in unwind-protect arg.
240 All uses changed.
241 (block_child_signal, unblock_child_signal):
242 New functions, to avoid races that could kill innocent-victim processes.
243 (call_process_kill, call_process_cleanup, Fcall_process): Use them.
244 (call_process_kill): Record killed processes as deleted, so that
245 zombies do not clutter up the system. Do this inside a critical
246 section, to avoid a race that would allow the clutter.
247 (call_process_cleanup): Fix code so that the second C-g works again
248 on common platforms such as GNU/Linux.
249 (Fcall_process): Create the child process in a critical section,
250 to fix a race condition. If creating an asynchronous process,
251 record it as deleted so that zombies do not clutter up the system.
252 Do unwind-protect for WINDOWSNT too, as that's simpler in the
253 light of these changes. Omit unnecessary call to emacs_close
254 before failure, as the unwind-protect code does that.
255 * callproc.c (call_process_cleanup):
256 * w32proc.c (waitpid): Simplify now that synch_process_alive is gone.
257 * process.c (record_deleted_pid): New function, containing
258 code refactored out of Fdelete_process.
259 (Fdelete_process): Use it.
260 (process_status_retrieved): Remove. All callers changed to use
261 child_status_change.
262 (record_child_status_change): Remove, folding its contents into ...
263 (handle_child_signal): ... this signal handler. Now, this
264 function is purely a handler for SIGCHLD, and is not called after
265 a synchronous waitpid returns; the synchronous code is moved to
266 wait_for_termination. There is no need to worry about reaping
267 more than one child now.
268 * sysdep.c (get_child_status, child_status_changed): New functions.
269 (wait_for_termination): Now takes int * status and bool
270 interruptible arguments, too. Do not record child status change;
271 that's now the caller's responsibility. All callers changed.
272 Reimplement in terms of get_child_status.
273 (wait_for_termination_1, interruptible_wait_for_termination):
274 Remove. All callers changed to use wait_for_termination.
275 * syswait.h: Include <stdbool.h>, for bool.
276 (record_child_status_change, interruptible_wait_for_termination):
277 Remove decls.
278 (record_deleted_pid, child_status_changed): New decls.
279 (wait_for_termination): Adjust to API changes noted above.
280
281 * bytecode.c, lisp.h (Qbytecode): Remove.
282 No longer needed after 2012-11-20 interactive-p changes.
283
2842012-12-03 Eli Zaretskii <eliz@gnu.org>
285
286 * xdisp.c (redisplay_window): If the cursor is visible, but inside
287 the scroll margin, move point outside the margin. (Bug#13055)
288
2892012-12-03 Jan Djärv <jan.h.d@swipnet.se>
290
291 * gtkutil.c (my_log_handler): New function.
292 (xg_set_geometry): Set log handler to my_log_handler (Bug#11177).
293
2942012-12-03 Dmitry Antipov <dmantipov@yandex.ru>
295
296 * lisp.h (modify_region): Rename to...
297 (modify_region_1): ...new prototype.
298 * textprop.c (modify_region): Now static. Adjust users.
299 * insdel.c (modify_region): Rename to...
300 (modify_region_1): ...new function to work with current buffer.
301 Adjust comment and users. Use true and false for booleans.
302
3032012-12-03 Dmitry Antipov <dmantipov@yandex.ru>
304
305 * alloc.c (free_save_value): New function.
306 (safe_alloca_unwind): Use it.
307 * lisp.h (free_save_value): New prototype.
308 * editfns.c (save_excursion_save): Use Lisp_Misc_Save_Value.
309 Add comment.
310 (save_excursion_restore): Adjust to match saved data structure.
311 Use free_save_value to offload some work from GC. Drop obsolete
312 #if 0 code.
313
3142012-12-03 Chong Yidong <cyd@gnu.org>
315
316 * fileio.c (Vauto_save_list_file_name): Doc fix.
317
3182012-12-03 Fabrice Popineau <fabrice.popineau@gmail.com>
319
320 * w32fns.c: Remove prototype of atof.
321 (syspage_mask): Declared DWORD_PTR, for compatibility with 64-bit
322 builds.
323 (file_dialog_callback): Declared UINT_PTR.
324
325 * w32common.h (syspage_mask): Declare DWORD_PTR, for compatibility
326 with 64-bit builds.
327
328 * w32.c (FILE_DEVICE_FILE_SYSTEM, METHOD_BUFFERED)
329 (FILE_ANY_ACCESS, CTL_CODE) [_MSC_VER]: Define only if not already
330 defined.
331
3322012-12-03 Glenn Morris <rgm@gnu.org>
333
334 * data.c (Fboundp, Fsymbol_value): Doc fix re lexical-binding.
335
3362012-12-02 Paul Eggert <eggert@cs.ucla.edu>
337
338 Fix xpalloc confusion after memory is exhausted.
339 * alloc.c (xpalloc): Comment fix.
340 * charset.c (Fdefine_charset_internal): If xpalloc exhausts memory
341 and signals an error, do not clear charset_table_size, as
342 charset_table is still valid.
343 * doprnt.c (evxprintf): Clear *BUF after freeing it.
344
345 Use execve to avoid need to munge environ (Bug#13054).
346 * callproc.c (Fcall_process):
347 * process.c (create_process):
348 Don't save and restore environ; no longer needed.
349 * callproc.c (child_setup):
350 Use execve, not execvp, to preserve environ.
351
3522012-12-01 Paul Eggert <eggert@cs.ucla.edu>
353
354 * xterm.c (x_draw_image_relief): Remove unused locals (Bug#10500).
355
3562012-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
357
358 * xterm.c (x_draw_relief_rect, x_draw_image_relief): Fix relief
359 display for sliced images (Bug#10500).
360
361 * w32term.c (w32_draw_relief_rect, x_draw_image_relief): Likewise.
362
3632012-11-30 Juanma Barranquero <lekktu@gmail.com>
364
365 * doc.c (Fdocumentation): Re-add handling of function-documentation,
366 accidentally removed in 2012-11-09T04:10:16Z!monnier@iro.umontreal.ca (bug#13034).
367
3682012-11-29 Dmitry Antipov <dmantipov@yandex.ru>
369
370 * xdisp.c (window_outdated): Remove eassert since it hits
371 some suspicious corner cases (see Bug#13007 and Bug#13012).
372 (mode_line_update_needed): New function.
373 (redisplay_internal, redisplay_window): Use it.
374 (ensure_selected_frame): New function.
375 (redisplay_internal, unwind_redisplay): Use it.
376 (redisplay_internal): Move comment about buffer_shared...
377 (buffer_shared_and_changed): ...near to its real use.
378
3792012-11-29 Paul Eggert <eggert@cs.ucla.edu>
380
381 * callproc.c (Fcall_process): Don't misreport vfork failure.
382
3832012-11-28 Paul Eggert <eggert@cs.ucla.edu>
384
385 * callproc.c (Fcall_process): Fix vfork portability problems.
386 Do not assume that fd[0], count, filefd, and save_environ survive
387 vfork. Fix bug whereby wrong errno value could be reported for
388 pipe failure. Some minor cleanups, too, as follows. Move buf and
389 bufsize to the context where they're needed. Change new_argv to
390 be of type char **, as this is more convenient and avoids casts.
391 (CALLPROC_BUFFER_SIZE_MIN, CALLPROC_BUFFER_SIZE_MAX):
392 Now local constants, not macros.
393
3942012-11-18 Kenichi Handa <handa@gnu.org>
395
396 * font.c (font_unparse_xlfd): Fix previous change. Keep "const"
397 for the variable "f".
398
3992012-11-13 Kenichi Handa <handa@gnu.org>
400
401 * font.c (font_unparse_xlfd): Exclude special characters from the
402 generating XLFD name.
403
4042012-11-27 Paul Eggert <eggert@cs.ucla.edu>
405
406 Assume POSIX 1003.1-1988 or later for grp.h, pwd.h.
407 * dired.c (stat_uname, stat_gname):
408 * fileio.c (Fexpand_file_name): Remove no-longer-needed casts.
409
410 Assume POSIX 1003.1-1988 or later for errno.h (Bug#12968).
411 * dired.c (directory_files_internal, file_name_completion):
412 Assume EAGAIN and EINTR are defined.
413
414 * fileio.c (Fcopy_file): Assume EISDIR is defined.
415 * gmalloc.c (ENOMEM, EINVAL): Assume they're defined.
416 * gnutls.c (emacs_gnutls_write): Assume EAGAIN is defined.
417 * lread.c (readbyte_from_file): Assume EINTR is defined.
418 * process.c (wait_reading_process_output, send_process) [subprocesses]:
419 Assume EIO and EAGAIN are defined.
420 * unexcoff.c (write_segment): Assume EFAULT is defined.
421
4222012-11-27 Eli Zaretskii <eliz@gnu.org>
423
424 * fontset.c (Finternal_char_font): Return nil on non-GUI frames.
425 (Bug#11964)
426
427 * xdisp.c (draw_glyphs): Don't draw in mouse face if mouse
428 highlighting on the frame was cleared. Prevents assertion
429 violations when repeatedly clicking on the "Top" link of the
430 "bread-crumbs" in Info buffers.
431
4322012-11-25 Paul Eggert <eggert@cs.ucla.edu>
433
434 * sysdep.c (sys_subshell): Don't assume pid_t fits in int.
435
4362012-11-24 Ken Brown <kbrown@cornell.edu>
437
438 * keyboard.c (HAVE_MOUSE):
439 * frame.c (HAVE_MOUSE): Remove, and rewrite code as if HAVE_MOUSE
440 were always defined.
441
4422012-11-24 Eli Zaretskii <eliz@gnu.org>
443
444 * xdisp.c (set_cursor_from_row): Skip step 2 only if point is not
445 between bpos_covered and bpos_max. This fixes cursor display when
446 several display strings follow each other.
447
448 * .gdbinit (pgx): If the glyph's object is a string, display the
449 pointer to string data, rather than the value of the string object
450 itself (which barfs under CHECK_LISP_OBJECT_TYPE).
451
452 * indent.c (Fvertical_motion): If the starting position is covered
453 by a display string, return to one position before that, to avoid
454 overshooting it inside move_it_to. (Bug#12930)
455
4562012-11-23 Dmitry Antipov <dmantipov@yandex.ru>
457
458 * frame.h (struct frame): Remove display_preempted member
459 since all users are dead long ago.
460 * nsterm.h (struct x_output): Use the only dummy member.
461 * w32menu.c (pending_menu_activation): Remove since not
462 really used.
463 (set_frame_menubar): Adjust user.
464 * w32term.h (struct x_output): Drop outdated #if 0 code.
465 (struct w32_output): Use bitfields for explicit_parent,
466 asked_for_visible and menubar_active members. Drop
467 unused pending_menu_activation member.
468 * xterm.h (struct x_output): Drop outdated #if 0 code.
469 Use bitfields for explicit_parent, asked_for_visible,
470 has_been_visible and net_wm_state_hidden_seen members.
471
4722012-11-23 Eli Zaretskii <eliz@gnu.org>
473
474 * makefile.w32-in (globals.h, gl-stamp): Use $(SWITCHCHAR) instead
475 of a literal "/". (Bug#12955)
476 (gl-stamp): Invoke fc.exe directly, not through cmd.
477
4782012-11-23 Paul Eggert <eggert@cs.ucla.edu>
479
480 Assume POSIX 1003.1-1988 or later for dirent.h (Bug#12958).
481 * dired.c: Assume HAVE_DIRENT_H.
482 (NAMLEN): Remove, replacing with ...
483 (dirent_namelen): New function. All uses changed. Use the GNU macro
484 _D_EXACT_NAMELEN if available, as it's faster than strlen.
485 (DIRENTRY): Remove, replacing all uses with 'struct dirent'.
486 (DIRENTRY_NONEMPTY): Remove. All callers now assume it's nonzero.
487 * makefile.w32-in (DIR_H): Remove. All uses replaced with
488 $(NT_INC)/dirent.h.
489 ($(BLD)/w32.$(O)): Do not depend on $(SRC)/ndir.h.
490 * ndir.h: Rename to ../nt/inc/dirent.h.
491 * sysdep.h (closedir) [!HAVE_CLOSEDIR]: Remove.
492 Do not include <dirent.h>; no longer needed.
493 * w32.c: Include <dirent.h> rather than "ndir.h".
494
4952012-11-23 Chong Yidong <cyd@gnu.org>
496
497 * xftfont.c (xftfont_open): Remove duplicate assignment.
498
4992012-11-22 Dmitry Antipov <dmantipov@yandex.ru>
500
501 * alloc.c (Fgarbage_collect): Unblock input after clearing
502 gc_in_progress to avoid note_mouse_highlight glitch with GC.
503 * frame.h (FRAME_MOUSE_UPDATE): New macro.
504 * msdos.c (IT_frame_up_to_date): Use it here...
505 * w32term.c (w32_frame_up_to_date): ...here...
506 * xterm.c (XTframe_up_to_date): ...and here...
507 * nsterm.m (ns_frame_up_to_date): ...but not here.
508 * lisp.h (Mouse_HLInfo): Remove mouse_face_deferred_gc member.
509 Adjust users.
510 * xdisp.c (message2_nolog, message3_nolog, note_mouse_highlight):
511 Do not check whether GC is in progress.
512
5132012-11-22 Dmitry Antipov <dmantipov@yandex.ru>
514
515 * xdisp.c (window_buffer_changed): New function.
516 (update_menu_bar, update_tool_bar): Use it to
517 simplify large 'if' statements.
518 (redisplay_internal): Generalize commonly used
519 'tail' and 'frame' local variables.
520
5212012-11-22 Eli Zaretskii <eliz@gnu.org>
522
523 * w32.c (getcwd): Fix the 2nd argument type, to prevent conflicts
524 with Windows system header.
525
5262012-11-21 Paul Eggert <eggert@cs.ucla.edu>
527
528 Assume POSIX 1003.1-1988 or later for unistd.h (Bug#12945).
529 * alloc.c: Assume unistd.h exists.
530 * fileio.c (Fexpand_file_name) [DOS_NT]: Use getcwd, not getwd.
531 * sysdep.c (get_current_dir_name): Assume getcwd exists.
532 (getwd) [USG]: Remove; no longer needed.
533 (sys_subshell) [DOS_NT]: Use getcwd, not getwd.
534 * w32.c (getcwd): Rename from getwd, and switch to getcwd's API.
535 * w32.h (getcwd): Remove decl.
536
5372012-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
538
539 * xdisp.c (fast_set_selected_frame): Rename from update_tool_bar_unwind.
540 Make it set selected_window as well.
541 (update_tool_bar): Use it.
542
5432012-11-21 Ken Brown <kbrown@cornell.edu>
544
545 * emacs.c (main): Set the G_SLICE environment variable for all
546 Cygwin builds, not just GTK builds. See
547 https://lists.gnu.org/archive/html/emacs-devel/2012-11/msg00368.html.
548
5492012-11-21 Eli Zaretskii <eliz@gnu.org>
550
551 * w32.c (FILE_DEVICE_FILE_SYSTEM, METHOD_BUFFERED)
552 (FILE_ANY_ACCESS, CTL_CODE, FSCTL_GET_REPARSE_POINT) [_MSC_VER]:
553 Define for the MSVC compiler.
554
555 * w32term.h (EnumSystemLocalesW) [_MSC_VER]: Add a missing semi-colon.
556
557 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
558 (Fexpand_file_name) [DOS_NT]: Pass encoded file name to
559 dostounix_filename. Prevents crashes down the road, because
560 dostounix_filename assumes it gets a unibyte string. Reported by
561 Michel de Ruiter <michel@sentient.nl>, see
562 http://lists.gnu.org/archive/html/help-emacs-windows/2012-11/msg00017.html
563
5642012-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
565
566 Conflate Qnil and Qunbound for `symbol-function'.
567 * alloc.c (Fmake_symbol): Initialize `function' to Qnil.
568 * lread.c (init_obarray): Set `function' fields to Qnil.
569 * eval.c (Fcommandp): Ignore Qunbound.
570 (Fautoload, eval_sub, Fapply, Ffuncall, Fmacroexpand):
571 * data.c (Ffset, Ffboundp, indirect_function, Findirect_function):
572 Test NILP rather than Qunbound.
573 (Ffmakunbound): Set to Qnil.
574 (Fsymbol_function): Never signal an error.
575 (Finteractive_form): Ignore Qunbound.
576
5772012-11-20 Paul Eggert <eggert@cs.ucla.edu>
578
579 * eval.c (interactive_p): Remove no-longer-used decl.
580
5812012-11-20 Dmitry Antipov <dmantipov@yandex.ru>
582
583 * xdisp.c (buffer_shared): Adjust comment.
584 (buffer_shared_and_changed): New function.
585 (prepare_menu_bars, redisplay_internal): Use it to
586 decide whether all windows or frames should be updated.
587 (window_outdated): New function.
588 (text_outside_line_unchanged_p, redisplay_window): Use it.
589 (redisplay_internal): Likewise. Fix indentation.
590
5912012-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
592
593 * eval.c (Finteractive_p, Fcalled_interactively_p, interactive_p): Remove.
594 (syms_of_eval): Remove corresponding defsubr.
595 * bytecode.c (exec_byte_code): `interactive-p' is now a Lisp function.
596
5972012-11-19 Daniel Colascione <dancol@dancol.org>
598
599 * w32fns.c (Fx_file_dialog):
600 (Fx_file_dialog): Accomodate rename of cygwin_convert_path* to
601 cygwin_convert_file_name*.
602
603 * cygw32.c (Fcygwin_convert_path_to_windows, syms_of_cygw32):
604 Rename cygwin_convert_path* to cygwin_convert_file_name*.
605
6062012-11-18 Paul Eggert <eggert@cs.ucla.edu>
607
608 * nsterm.m (ns_select): Send SIGIO only to self, not to process group.
609
6102012-11-18 Eli Zaretskii <eliz@gnu.org>
611
612 * w32select.c: Include w32common.h before w32term.h, so that
613 windows.h gets included before w32term.h uses some of its
614 features, see below.
615
616 * w32term.h (LOCALE_ENUMPROCA, LOCALE_ENUMPROCW) [_MSC_VER]:
617 New typedefs.
618 (EnumSystemLocalesA, EnumSystemLocalesW) [_MSC_VER]:
619 New prototypes.
620 (EnumSystemLocales) [_MSC_VER]: Define if undefined. (Bug#12878)
621
6222012-11-18 Jan Djärv <jan.h.d@swipnet.se>
623
624 * nsterm.m (hold_event): Set send_appdefined to YES (Bug#12834).
625 (ns_select): Return at once if events are held (Bug#12834).
626
6272012-11-18 enami tsugutomo <tsugutomo.enami@jp.sony.com>
628
629 * unexelf.c (ELFSIZE) [__NetBSD__ && _LP64]: Set to 64.
630 Needed following 2012-10-20 change. (Bug#12902)
631
6322012-11-18 Juanma Barranquero <lekktu@gmail.com>
633
634 * w32proc.c (waitpid): Remove unused label get_result.
635
6362012-11-17 Juanma Barranquero <lekktu@gmail.com>
637
638 * makefile.w32-in (SYSWAIT_H): New macro.
639 ($(BLD)/callproc.$(O), $(BLD)/w32proc.$(O), $(BLD)/process.$(O))
640 ($(BLD)/sysdep.$(O)): Update dependencies.
641
6422012-11-17 Paul Eggert <eggert@cs.ucla.edu>
643
644 Assume POSIX 1003.1-1988 or later for fcntl.h (Bug#12881).
645 * callproc.c (relocate_fd): Assume F_DUPFD.
646 * emacs.c, term.c (O_RDWR): Remove.
647 * keyboard.c (tty_read_avail_input): Use O_NONBLOCK rather than
648 O_NDELAY, since O_NONBLOCK is the standard name for this flag.
649 * nsterm.m: Assume <fcntl.h> exists.
650 * process.c (NON_BLOCKING_CONNECT, allocate_pty, create_process)
651 (create_pty, Fmake_network_process, server_accept_connection)
652 (wait_reading_process_output, init_process_emacs):
653 Assume O_NONBLOCK.
654 (wait_reading_process_output): Put in a special case for WINDOWSNT
655 to mimick the older behavior where it had O_NDELAY but not O_NONBLOCK.
656 It's not clear this is needed, but it's a more-conservative change.
657 (create_process): Assume FD_CLOEXEC.
658 (create_process, create_pty): Assume O_NOCTTY.
659 * sysdep.c (init_sys_modes, reset_sys_modes): Assume F_SETFL.
660 (reset_sys_modes): Use O_NONBLOCK rather than O_NDELAY.
661 Omit if not DOS_NT, since F_GETFL is not defined there.
662 (serial_open): Assume O_NONBLOCK and O_NOCTTY.
663 * term.c: Include <fcntl.h>, for flags like O_NOCTTY.
664 (O_NOCTTY): Remove.
665 (init_tty): Assume O_IGNORE_CTTY is defined to 0 on platforms that
666 lack it, since gnulib guarantees this.
667 * w32.c (fcntl): Test for O_NONBLOCK rather than O_NDELAY.
668
12012-11-17 Eli Zaretskii <eliz@gnu.org> 6692012-11-17 Eli Zaretskii <eliz@gnu.org>
2 670
3 * w32.c (faccessat): Pretend that directories have the execute bit 671 * w32.c (faccessat): Pretend that directories have the execute bit
@@ -240,8 +908,8 @@
240 * xdisp.c (try_scrolling): Fix correction of aggressive-scroll 908 * xdisp.c (try_scrolling): Fix correction of aggressive-scroll
241 amount when the scroll margins are too large. When scrolling 909 amount when the scroll margins are too large. When scrolling
242 backwards in the buffer, give up if cannot reach point or the 910 backwards in the buffer, give up if cannot reach point or the
243 scroll margin within a reasonable number of screen lines. Fixes 911 scroll margin within a reasonable number of screen lines.
244 point position in window under scroll-up/down-aggressively when 912 Fixes point position in window under scroll-up/down-aggressively when
245 point is positioned many lines beyond the window top/bottom. 913 point is positioned many lines beyond the window top/bottom.
246 (Bug#12811) 914 (Bug#12811)
247 915