diff options
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 439 |
1 files changed, 434 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 43e629eb5f6..548c80b3b85 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,11 +1,440 @@ | |||
| 1 | 2012-09-10 Chong Yidong <cyd@gnu.org> | ||
| 2 | |||
| 3 | * fns.c (Fdelq, Fdelete): Doc fix. | ||
| 4 | |||
| 5 | 2012-09-10 Paul Eggert <eggert@cs.ucla.edu> | ||
| 6 | |||
| 7 | * lisp.h (XSETINT, XSETCONS, XSETVECTOR, XSETSTRING, XSETSYMBOL) | ||
| 8 | (XSETFLOAT, XSETMISC): Parenthesize macro bodies. | ||
| 9 | |||
| 10 | 2012-09-09 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 11 | |||
| 12 | * lisp.h (make_lisp_ptr): New macro to replace XSET. | ||
| 13 | (XSETCONS, XSETVECTOR, XSETSTRING, XSETSYMBOL, XSETFLOAT, XSETMISC): | ||
| 14 | Use it. | ||
| 15 | |||
| 16 | 2012-09-09 Eli Zaretskii <eliz@gnu.org> | ||
| 17 | |||
| 18 | * fringe.c (draw_fringe_bitmap_1): Don't reduce the width of the | ||
| 19 | left fringe if the window has a left margin. This avoids leaving | ||
| 20 | traces of the cursor because its leftmost pixel is not drawn over. | ||
| 21 | |||
| 22 | * dispnew.c (update_window_line): When the left margin area of a | ||
| 23 | screen line is updated, set the redraw_fringe_bitmaps_p flag of | ||
| 24 | that screen line. (Bug#12277) | ||
| 25 | |||
| 26 | 2012-09-09 Paul Eggert <eggert@cs.ucla.edu> | ||
| 27 | |||
| 28 | Assume C89 or later for math functions (Bug#12381). | ||
| 29 | This simplifies the code, and makes it a bit smaller and faster, | ||
| 30 | and (most important) makes it easier to clean up signal handling | ||
| 31 | since we can stop worring about floating-point exceptions in | ||
| 32 | library code. That was a problem before C89, but the problem | ||
| 33 | went away many years ago on all practical Emacs targets. | ||
| 34 | * data.c, image.c, lread.c, print.c: | ||
| 35 | Don't include <math.h>; no longer needed. | ||
| 36 | * data.c, floatfns.c (IEEE_FLOATING_POINT): Don't worry that it | ||
| 37 | might be autoconfigured, as that never happens. | ||
| 38 | * data.c (fmod): | ||
| 39 | * doprnt.c (DBL_MAX_10_EXP): | ||
| 40 | * print.c (DBL_DIG): | ||
| 41 | Remove. C89 or later always defines these. | ||
| 42 | * floatfns.c (HAVE_MATHERR, FLOAT_CHECK_ERRNO, FLOAT_CHECK_DOMAIN) | ||
| 43 | (in_float, float_error_arg, float_error_arg2, float_error_fn_name) | ||
| 44 | (arith_error, domain_error, domain_error2): | ||
| 45 | Remove all this pre-C89 cruft. Do not include <errno.h> as that's | ||
| 46 | no longer needed -- we simply return what C returns. All uses removed. | ||
| 47 | (IN_FLOAT, IN_FLOAT2): Remove. All uses replaced with | ||
| 48 | the wrapped code. | ||
| 49 | (FLOAT_TO_INT, FLOAT_TO_INT2, range_error, range_error2): | ||
| 50 | Remove. All uses expanded, as these macros are no longer used | ||
| 51 | more than once and are now more trouble than they're worth. | ||
| 52 | (Ftan): Use tan, not sin / cos. | ||
| 53 | (Flogb): Assume C89 frexp. | ||
| 54 | (fmod_float): Assume C89 fmod. | ||
| 55 | (matherr) [HAVE_MATHERR]: Remove; no longer needed. | ||
| 56 | (init_floatfns): Remove. All uses removed. | ||
| 57 | |||
| 58 | 2012-09-08 Jan Djärv <jan.h.d@swipnet.se> | ||
| 59 | |||
| 60 | * nsterm.m (ns_draw_fringe_bitmap, ns_dumpglyphs_image): Take back | ||
| 61 | compositeToPoint for OSX < 10.6 (Bug#12390). | ||
| 62 | |||
| 63 | 2012-09-08 Paul Eggert <eggert@cs.ucla.edu> | ||
| 64 | |||
| 65 | * floatfns.c (Ftan): Use tan (x), not (sin (x) / cos (x)). | ||
| 66 | This produces more-accurate results. | ||
| 67 | |||
| 68 | 2012-09-08 Jan Djärv <jan.h.d@swipnet.se> | ||
| 69 | |||
| 70 | * nsterm.m (updateFrameSize): Call setFrame: on the view when size | ||
| 71 | changes (Bug#12088). | ||
| 72 | |||
| 73 | 2012-09-08 Chong Yidong <cyd@gnu.org> | ||
| 74 | |||
| 75 | * syntax.c (Fstring_to_syntax): Doc fix. | ||
| 76 | |||
| 77 | 2012-09-08 Jan Djärv <jan.h.d@swipnet.se> | ||
| 78 | |||
| 79 | * nsterm.m (ns_clip_to_row): Remove code that deals with drawing fringe | ||
| 80 | in the internal border. | ||
| 81 | (x_set_window_size): Remove static variables and their usage. | ||
| 82 | (ns_redraw_scroll_bars): Fix NSTRACE arg. | ||
| 83 | (ns_after_update_window_line, ns_draw_fringe_bitmap): Remove | ||
| 84 | fringe/internal border adjustment (Bug#11052). | ||
| 85 | (ns_draw_fringe_bitmap): Make code more like other terms (xterm.c). | ||
| 86 | (ns_draw_window_cursor): Remove fringe/internal border adjustment. | ||
| 87 | (ns_fix_rect_ibw): Remove. | ||
| 88 | (ns_get_glyph_string_clip_rect): Remove call to ns_fix_rect_ibw. | ||
| 89 | (ns_dumpglyphs_box_or_relief): Ditto. | ||
| 90 | (ns_maybe_dumpglyphs_background): Remove fringe/internal border | ||
| 91 | adjustment. | ||
| 92 | (ns_dumpglyphs_image): Ditto. | ||
| 93 | (ns_dumpglyphs_stretch): Fix coding style. Remove fringe/internal | ||
| 94 | border adjustment. | ||
| 95 | (ns_set_vertical_scroll_bar): Remove variables barOnVeryLeft/Right and | ||
| 96 | their usage. Add fringe_extended_p and its use as in other terms. | ||
| 97 | (ns_judge_scroll_bars): Code style fix. Call updateFrameSize if | ||
| 98 | scroll bar was removed. | ||
| 99 | (updateFrameSize): New function. | ||
| 100 | (windowDidResize): Move code to updateFrameSize and call it. | ||
| 101 | |||
| 102 | * nsterm.h (EmacsView): Add updateFrameSize. | ||
| 103 | |||
| 104 | 2012-09-07 Chong Yidong <cyd@gnu.org> | ||
| 105 | |||
| 106 | * textprop.c (Fget_text_property): Minor doc fix (Bug#12323). | ||
| 107 | |||
| 108 | * data.c (Flocal_variable_if_set_p): Doc fix (Bug#10713). | ||
| 109 | |||
| 110 | 2012-09-07 Paul Eggert <eggert@cs.ucla.edu> | ||
| 111 | |||
| 112 | More signal-handler cleanup (Bug#12327). | ||
| 113 | * emacs.c (main): Convert three 'signal' calls to 'sigaction' calls. | ||
| 114 | Problem introduced when merging patches. Noted by Eli Zaretskii in | ||
| 115 | <http://bugs.gnu.org/12327#67>. | ||
| 116 | * floatfns.c: Comment fix. | ||
| 117 | * lisp.h (force_auto_save_soon): Declare regardless of SIGDANGER. | ||
| 118 | SIGDANGER might not be in scope so "#ifdef SIGDANGER" is not right, | ||
| 119 | and anyway the declaration is harmless even if SIGDANGER is not defined. | ||
| 120 | * syssignal.h (SIGIO): Also #undef if (! defined FIONREAD || | ||
| 121 | defined BROKEN_FIONREAD). systty.h formerly did this, but other | ||
| 122 | source files not surprisingly expected syssignal.h to define, or | ||
| 123 | not define, SIGIO, and it's cleaner to do it that way, for consistency. | ||
| 124 | Include <sys/ioctl.h>, for FIONREAD. | ||
| 125 | * systty.h (SIGIO): Do not #undef here; it's now syssignal.h's job. | ||
| 126 | This eliminates a problem whereby other files mysteriously had | ||
| 127 | to include "syssignal.h" before including "systty.h" if they | ||
| 128 | wanted to use "#ifdef SIGIO". | ||
| 129 | |||
| 130 | 2012-09-07 Eli Zaretskii <eliz@gnu.org> | ||
| 131 | |||
| 132 | * w32proc.c (sigaction): New function, emulates Posix 'sigaction'. | ||
| 133 | |||
| 134 | * w32.c (sigemptyset): Empty the set. | ||
| 135 | (sigsetmask, sigmask, sigblock, sigunblock): Remove unused functions. | ||
| 136 | |||
| 137 | * alloc.c [ENABLE_CHECKING]: Include signal.h, since we need SIGABRT. | ||
| 138 | |||
| 139 | 2012-09-07 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 140 | |||
| 141 | * alloc.c (mark_buffer): Revert unsafe marking optimization. | ||
| 142 | (mark_object): Likewise for frame objects. | ||
| 143 | |||
| 144 | 2012-09-07 Paul Eggert <eggert@cs.ucla.edu> | ||
| 145 | |||
| 146 | * syssignal.h (handle_on_main_thread): Always declare, | ||
| 147 | even if FORWARD_SIGNAL_TO_MAIN_THREAD is not defined. | ||
| 148 | This ports to platforms without HAVE_PTHREAD. | ||
| 149 | |||
| 150 | 2012-09-06 Paul Eggert <eggert@cs.ucla.edu> | ||
| 151 | |||
| 152 | Signal-handler cleanup (Bug#12327). | ||
| 153 | Emacs's signal handlers were written in the old 4.2BSD style with | ||
| 154 | sigblock and sigmask and so forth, and this led to some | ||
| 155 | inefficiencies and confusion. Rewrite these to use | ||
| 156 | pthread_sigmask etc. without copying signal sets around. Also, | ||
| 157 | get rid of the confusing macros 'SIGNAL_THREAD_CHECK' and | ||
| 158 | 'signal', and instead use functions that do not attempt to take | ||
| 159 | over the system name space. This patch causes Emacs's text | ||
| 160 | segment to shrink by 0.7% on my platform, Fedora 17 x86-64. | ||
| 161 | * alloc.c, emacsgtkfixed.c, nsfns.m, widget.c, xmenu.c: | ||
| 162 | Do not include <signal.h> or "syssignal.h", as these | ||
| 163 | modules do not use signals. | ||
| 164 | * atimer.c, callproc.c, data.c, dispnew.c, emacs.c, floatfns.c: | ||
| 165 | * gtkutil.c, keyboard.c, process.c, sound.c, sysdep.c, term.c, xterm.c: | ||
| 166 | Do not include <signal.h>, as "syssignal.h" does that for us now. | ||
| 167 | * atimer.c (sigmask_atimers): New function. | ||
| 168 | (block_atimers, unblock_atimers): New functions, | ||
| 169 | replacing the old macros BLOCK_ATIMERS and UNBLOCK_ATIMERS. | ||
| 170 | All uses replaced. | ||
| 171 | * conf_post.h [SIGNAL_H_AHB]: Do not include <signal.h>; | ||
| 172 | no longer needed here. | ||
| 173 | * emacs.c (main): Inspect existing signal handler with sigaction, | ||
| 174 | so that there's no need to block and unblock SIGHUP. | ||
| 175 | * sysdep.c (struct save_signal): New member 'action', replacing | ||
| 176 | old member 'handler'. | ||
| 177 | (save_signal_handlers, restore_signal_handlers): | ||
| 178 | Use sigaction instead of 'signal' to save and restore. | ||
| 179 | (get_set_sighandler, set_sighandler) [!WINDOWSNT]: | ||
| 180 | New function. All users of 'signal' modified to use set_sighandler | ||
| 181 | if they're writeonly, and to use sys_signal if they're read+write. | ||
| 182 | (emacs_sigaction_init, forwarded_signal): New functions. | ||
| 183 | (sys_signal): Remove. All uses replaced by calls to sigaction | ||
| 184 | and emacs_sigaction_init, or by direct calls to 'signal'. | ||
| 185 | (sys_sigmask) [!__GNUC__]: Remove; no longer needed. | ||
| 186 | (sys_sigblock, sys_sigunblock, sys_sigsetmask): Remove; | ||
| 187 | all uses replaced by pthread_sigmask etc. calls. | ||
| 188 | * syssignal.h: Include <signal.h>. | ||
| 189 | (emacs_sigaction_init, forwarded_signal): New decls. | ||
| 190 | (SIGMASKTYPE): Remove. All uses replaced by its definiens, sigset_t. | ||
| 191 | (SIGEMPTYMASK): Remove; all uses replaced by its definiens, empty_mask. | ||
| 192 | (sigmask, sys_sigmask): Remove; no longer needed. | ||
| 193 | (sigpause): Remove. All uses replaced by its definiens, sigsuspend. | ||
| 194 | (sigblock, sigunblock, sigfree): | ||
| 195 | (sigsetmask) [!defined sigsetmask]: | ||
| 196 | Remove. All uses replaced by pthread_sigmask. | ||
| 197 | (signal): Remove. Its remaining uses (with SIG_DFL and SIG_IGN) | ||
| 198 | no longer need to be replaced, and its typical old uses | ||
| 199 | are now done via emacs_sigaction_init and sigaction. | ||
| 200 | (sys_sigblock, sys_sigunblock, sys_sigsetmask): Remove decls. | ||
| 201 | (sys_sigdel): Remove; unused. | ||
| 202 | (NSIG): Remove a FIXME; the code's fine. Remove an unnecessary ifdef. | ||
| 203 | |||
| 204 | 2012-09-06 Eli Zaretskii <eliz@gnu.org> | ||
| 205 | |||
| 206 | * process.c (CAN_HANDLE_MULTIPLE_CHILDREN): Fix a typo that broke | ||
| 207 | SIGCHLD handling on systems that don't have WNOHANG. (Bug#12327) | ||
| 208 | |||
| 209 | 2012-09-06 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 210 | |||
| 211 | Explicitly mark buffer_defaults and buffer_local_symbols. | ||
| 212 | * alloc.c (Fgarbage_collect): Mark buffer_defaults and | ||
| 213 | mark_local_symbols here. | ||
| 214 | (mark_object): If GC_CHECK_MARKED_OBJECTS, simplify checking | ||
| 215 | since special buffers aren't marked here any more. | ||
| 216 | (allocate_buffer): Chain new buffer with all_buffers here... | ||
| 217 | * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): ...and | ||
| 218 | not here. | ||
| 219 | (Vbuffer_defaults, Vbuffer_local_symbols): Remove. | ||
| 220 | (syms_of_buffer): Remove staticpro of the above. | ||
| 221 | (init_buffer_once): Set names for buffer_defaults and | ||
| 222 | buffer_local_symbols. | ||
| 223 | |||
| 224 | 2012-09-06 Paul Eggert <eggert@cs.ucla.edu> | ||
| 225 | |||
| 226 | Use bool for booleans in font-related modules. | ||
| 227 | * font.c (font_intern_prop, font_style_to_value) | ||
| 228 | (font_style_symbolic, font_parse_xlfd, font_parse_fcname) | ||
| 229 | (generate_otf_features, font_check_otf_features, font_check_otf) | ||
| 230 | (font_match_p, font_list_entities, font_at): | ||
| 231 | * fontset.c (fontset_id_valid_p, reorder_font_vector | ||
| 232 | (fontset_find_font, Fset_fontset_font) | ||
| 233 | (face_suitable_for_char_p) [0]: | ||
| 234 | * ftfont.c (fc_initialized, ftfont_get_open_type_spec) | ||
| 235 | (ftfont_open, ftfont_text_extents, ftfont_check_otf): | ||
| 236 | (m17n_flt_initialized, ftfont_shape_by_flt): | ||
| 237 | * ftxfont.c (ftxfont_draw_bitmap, ftxfont_draw): | ||
| 238 | * nsfont.m (nsfont_draw): | ||
| 239 | * w32font.c (w32font_draw): | ||
| 240 | * w32term.c (x_draw_glyphless_glyph_string_foreground): | ||
| 241 | Use bool for booleans. | ||
| 242 | * font.h: Adjust to above API changes. | ||
| 243 | (struct font, struct font_driver, struct font_driver_list): | ||
| 244 | Use bool for booleans. | ||
| 245 | (struct font): Remove useless member encoding_type. | ||
| 246 | All users removed. | ||
| 247 | * fontset.c, xftfont.c: Omit unnecessary static decls. | ||
| 248 | |||
| 249 | 2012-09-06 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 250 | |||
| 251 | * alloc.c (mark_object): Revert window marking code | ||
| 252 | since it's unsafe for the Fset_window_configuration. | ||
| 253 | |||
| 254 | 2012-09-05 Paul Eggert <eggert@cs.ucla.edu> | ||
| 255 | |||
| 256 | Fix race conditions with signal handlers and errno (Bug#12327). | ||
| 257 | Be more systematic about preserving errno whenever a signal | ||
| 258 | handler returns, even if it's not in the main thread. Do this by | ||
| 259 | renaming signal handlers to distinguish between signal delivery | ||
| 260 | and signal handling. All uses changed. | ||
| 261 | * atimer.c (deliver_alarm_signal): Rename from alarm_signal_handler. | ||
| 262 | * data.c (deliver_arith_signal): Rename from arith_error. | ||
| 263 | * dispnew.c (deliver_window_change_signal): Rename from | ||
| 264 | window_change_signal. | ||
| 265 | * emacs.c (deliver_error_signal): Rename from fatal_error_signal. | ||
| 266 | (deliver_danger_signal) [SIGDANGER]: Rename from memory_warning_signal. | ||
| 267 | * keyboard.c (deliver_input_available_signal): Rename from | ||
| 268 | input_available_signal. | ||
| 269 | (deliver_user_signal): Rename from handle_user_signal. | ||
| 270 | (deliver_interrupt_signal): Rename from interrupt_signal. | ||
| 271 | * process.c (deliver_pipe_signal): Rename from send_process_trap. | ||
| 272 | (deliver_child_signal): Rename from sigchld_handler. | ||
| 273 | * atimer.c (handle_alarm_signal): | ||
| 274 | * data.c (handle_arith_signal): | ||
| 275 | * dispnew.c (handle_window_change_signal): | ||
| 276 | * emacs.c (handle_fatal_signal, handle_danger_signal): | ||
| 277 | * keyboard.c (handle_input_available_signal): | ||
| 278 | * keyboard.c (handle_user_signal, handle_interrupt_signal): | ||
| 279 | * process.c (handle_pipe_signal, handle_child_signal): | ||
| 280 | New functions, with the actual signal-handling code taken from the | ||
| 281 | original respective signal handlers, sans the sporadic attempts to | ||
| 282 | preserve errno, since that's now done by handle_on_main_thread. | ||
| 283 | * atimer.c (alarm_signal_handler): Remove unnecessary decl. | ||
| 284 | * emacs.c, floatfns.c, lisp.h: Remove unused FLOAT_CATCH_SIGKILL cruft. | ||
| 285 | * emacs.c (main_thread) [FORWARD_SIGNAL_TO_MAIN_THREAD]: | ||
| 286 | Move to sysdep.c. | ||
| 287 | (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: | ||
| 288 | Move initialization of main_thread to sysdep.c's init_signals. | ||
| 289 | * process.c (waitpid) [!WNOHANG]: #define to wait; that's good enough for | ||
| 290 | our usage, and simplifies the mainline code. | ||
| 291 | (record_child_status_change): New static function, as a helper | ||
| 292 | for handle_child_signal, and with most of the old child handler's | ||
| 293 | contents. | ||
| 294 | (CAN_HANDLE_MULTIPLE_CHILDREN): New constant. | ||
| 295 | (handle_child_signal): Use the above. | ||
| 296 | * sysdep.c (main_thread) [FORWARD_SIGNAL_TO_MAIN_THREAD]: | ||
| 297 | Moved here from emacs.c. | ||
| 298 | (init_signals) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it; | ||
| 299 | code moved here from emacs.c's main function. | ||
| 300 | * sysdep.c, syssignal.h (handle_on_main_thread): New function, | ||
| 301 | replacing the old SIGNAL_THREAD_CHECK. All uses changed. This | ||
| 302 | lets callers save and restore errno properly. | ||
| 303 | |||
| 304 | 2012-09-05 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 305 | |||
| 306 | Remove redundant or unused things here and there. | ||
| 307 | * lisp.h (CYCLE_CHECK, CHAR_TABLE_TRANSLATE): Remove. | ||
| 308 | * conf_post.h (RE_TRANSLATE): Use char_table_translate. | ||
| 309 | * editfns.c (Fcompare_buffer_substrings): Likewise. | ||
| 310 | * frame.h (struct terminal, struct font_driver_list): | ||
| 311 | Remove redundant declarations. | ||
| 312 | * window.h (Qleft, Qright): Likewise. | ||
| 313 | |||
| 314 | 2012-09-05 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 315 | |||
| 316 | Do not mark objects from deleted buffers, windows and frames. | ||
| 317 | * alloc.c (mark_buffer): Mark just the buffer if it is dead. | ||
| 318 | (mark_object): Likewise for windows and frames. | ||
| 319 | |||
| 320 | 2012-09-05 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 321 | |||
| 322 | * alloc.c (valid_lisp_object_p): Treat killed buffers, | ||
| 323 | buffer_defaults and buffer_local_symbols as valid objects. | ||
| 324 | Return special value to denote them. | ||
| 325 | |||
| 326 | 2012-09-05 Paul Eggert <eggert@cs.ucla.edu> | ||
| 327 | |||
| 328 | * fileio.c, filelock.c, floatfns.c, fns.c: Use bool for boolean. | ||
| 329 | * fileio.c (auto_saving, auto_save_error_occurred, make_temp_name) | ||
| 330 | (Fexpand_file_name, barf_or_query_if_file_exists, Fcopy_file) | ||
| 331 | (file_name_absolute_p, Fsubstitute_in_file_name): | ||
| 332 | (check_executable, check_writable, Ffile_accessible_directory_p) | ||
| 333 | (Fset_file_selinux_context, Fdefault_file_modes) | ||
| 334 | (Finsert_file_contents, choose_write_coding_system) | ||
| 335 | (Fwrite_region, build_annotations, a_write, e_write) | ||
| 336 | (Fdo_auto_save): | ||
| 337 | * filelock.c (boot_time_initialized, get_boot_time) | ||
| 338 | (get_boot_time_1, lock_file_1, within_one_second): | ||
| 339 | * floatfns.c (in_float): | ||
| 340 | * fns.c (concat, internal_equal, Frequire, base64_encode_1) | ||
| 341 | (base64_decode_1, cmpfn_eql, cmpfn_user_defined) | ||
| 342 | (sweep_weak_table, sweep_weak_hash_tables, secure_hash): | ||
| 343 | * lisp.h (struct Lisp_Hash_Table.cmpfn): | ||
| 344 | * window.c (compare_window_configurations): | ||
| 345 | Use bool for booleans. | ||
| 346 | * fileio.c (auto_saving_dir_umask, auto_saving_mode_bits) | ||
| 347 | (Fdefault_file_modes): Now mode_t, not int, for modes. | ||
| 348 | (Fdo_auto_save): Set a boolean to 1 rather than using ++. | ||
| 349 | (internal_delete_file): Now returns void, not a (boolean) int, | ||
| 350 | since nobody was looking at the return value. | ||
| 351 | * lisp.h, window.h: Adjust to above API changes. | ||
| 352 | |||
| 353 | * xdisp.c (set_message): Simplify and reindent last change. | ||
| 354 | |||
| 355 | 2012-09-05 Juanma Barranquero <lekktu@gmail.com> | ||
| 356 | |||
| 357 | * makefile.w32-in ($(BLD)/sysdep.$(O)): Update dependencies. | ||
| 358 | |||
| 359 | 2012-09-04 Lars Ingebrigtsen <larsi@gnus.org> | ||
| 360 | |||
| 361 | * eval.c (call_debugger): Make the function non-static so that we | ||
| 362 | can call it from set_message. | ||
| 363 | |||
| 364 | * xdisp.c (set_message): Implement the new variable `debug-on-message'. | ||
| 365 | (syms_of_xdisp): Defvar it and `inhibit-debug-on-message'. | ||
| 366 | |||
| 367 | 2012-09-04 Paul Eggert <eggert@cs.ucla.edu> | ||
| 368 | |||
| 369 | Give more-useful info on a fatal error (Bug#12328). | ||
| 370 | * alloc.c [ENABLE_CHECKING]: Do not include <execinfo.h>. | ||
| 371 | (die) [ENABLE_CHECKING]: Call fatal_error_backtrace instead | ||
| 372 | of doing the work ourselves. | ||
| 373 | * emacs.c (fatal_error_signal): Let fatal_error_backtrace | ||
| 374 | do most of the work. | ||
| 375 | (fatal_error_backtrace): New function, taken from the guts | ||
| 376 | of the old fatal_error_signal, but with a new option to output | ||
| 377 | a backtrace. | ||
| 378 | (shut_down_emacs) [!DOS_NT]: Use strsignal to give more-useful | ||
| 379 | info about the signal than just its number. | ||
| 380 | * lisp.h (fatal_error_backtrace, emacs_backtrace): New decls. | ||
| 381 | * sysdep.c: Include <execinfo.h> | ||
| 382 | (emacs_backtrace): New function, taken partly from the previous | ||
| 383 | code of the 'die' function. | ||
| 384 | (emacs_abort): Call fatal_error_backtrace rather than abort. | ||
| 385 | |||
| 386 | 2012-09-04 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 387 | |||
| 388 | * lread.c (readevalloop): Call internal-macroexpand-for-load to perform | ||
| 389 | eager (load-time) macro-expansion. | ||
| 390 | * lisp.mk (lisp): Add macroexp. | ||
| 391 | |||
| 392 | 2012-09-04 Paul Eggert <eggert@cs.ucla.edu> | ||
| 393 | |||
| 394 | Simplify redefinition of 'abort' (Bug#12316). | ||
| 395 | Do not try to redefine the 'abort' function. Instead, redo | ||
| 396 | the code so that it calls 'emacs_abort' rather than 'abort'. | ||
| 397 | This removes the need for the NO_ABORT configure-time macro | ||
| 398 | and makes it easier to change the abort code to do a backtrace. | ||
| 399 | * .gdbinit: Just stop at emacs_abort, not at w32_abort or abort. | ||
| 400 | * emacs.c (abort) [!DOS_NT && !NO_ABORT]: | ||
| 401 | Remove; sysdep.c's emacs_abort now takes its place. | ||
| 402 | * lisp.h (emacs_abort): New decl. All calls from Emacs code to | ||
| 403 | 'abort' changed to use 'emacs_abort'. | ||
| 404 | * msdos.c (dos_abort) [defined abort]: Remove; not used. | ||
| 405 | (abort) [!defined abort]: Rename to ... | ||
| 406 | (emacs_abort): ... new name. | ||
| 407 | * sysdep.c (emacs_abort) [!HAVE_NTGUI]: New function, taking | ||
| 408 | the place of the old 'abort' in emacs.c. | ||
| 409 | * w32.c, w32fns.c (abort): Do not #undef. | ||
| 410 | * w32.c (emacs_abort): Rename from w32_abort. | ||
| 411 | |||
| 412 | 2012-09-04 Eli Zaretskii <eliz@gnu.org> | ||
| 413 | |||
| 414 | * w32uniscribe.c (uniscribe_shape): Reverse the sign of | ||
| 415 | offsets[j].dv, since the y axis of the screen coordinates points | ||
| 416 | down, while the y axis of the font definition coordinates points | ||
| 417 | up. This fixes display of Arabic diacritics such as KASRA and | ||
| 418 | KASRATAN. (Bug#11860) | ||
| 419 | |||
| 420 | 2012-09-04 Paul Eggert <eggert@cs.ucla.edu> | ||
| 421 | |||
| 422 | Be more systematic about _setjmp vs setjmp. | ||
| 423 | * alloc.c (test_setjmp, mark_stack): | ||
| 424 | * image.c (PNG_LONGJMP) [PNG_LIBPNG_VER < 10500]: | ||
| 425 | (PNG_JMPBUF) [! (PNG_LIBPNG_VER < 10500)]: | ||
| 426 | (png_load, my_error_exit, jpeg_load): | ||
| 427 | * process.c (send_process_trap, send_process): | ||
| 428 | Uniformly prefer _setjmp and _longjmp to setjmp and longjmp. | ||
| 429 | The underscored versions are up to 30x faster on some hosts. | ||
| 430 | Formerly, the code used setjmp+longjmp sometimes and | ||
| 431 | _setjmp+_longjmp at other times, with no particular reason to | ||
| 432 | prefer setjmp+longjmp. | ||
| 433 | |||
| 1 | 2012-09-03 Paul Eggert <eggert@cs.ucla.edu> | 434 | 2012-09-03 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 435 | ||
| 3 | Fix minor problems found by static checking. | 436 | Fix minor problem found by static checking. |
| 4 | * buffer.c (Fdelete_all_overlays): Return nil. | 437 | * buffer.c (Fdelete_all_overlays): Return nil. |
| 5 | * doc.c (Fsubstitute_command_keys): | ||
| 6 | * regex.c (WEAK_ALIAS): | ||
| 7 | * xdisp.c (redisplay_internal): | ||
| 8 | Move initialization down, to pacify GCC 4.7.1 -Wjump-misses-init. | ||
| 9 | 438 | ||
| 10 | 2012-09-03 Martin Rudalics <rudalics@gmx.at> | 439 | 2012-09-03 Martin Rudalics <rudalics@gmx.at> |
| 11 | 440 | ||