X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/0dfeed58d3244487a545bb4d4e19658eb299937b..8f5f35ccca84dd9d518bae3bb7ff4134d603b96f:/src/ChangeLog diff --git a/src/ChangeLog b/src/ChangeLog index 202331dac5..fa44810773 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,169 @@ +2013-06-30 Paul Eggert + + Do not use GTK 3 if it exists but cannot be compiled. + * xmenu.c (x_menu_wait_for_event) [!USE_GTK]: + * xterm.c (x_error_handler) [!USE_GTK]: + Do not use GTK 3. + + * intervals.c (get_local_map): Actually clip POSITION (Bug#14753). + +2013-06-30 Eli Zaretskii + + * intervals.c (get_local_map): Instead of aborting, clip POSITION + to the valid range of values. (Bug#14753) + + * xdisp.c (Fmove_point_visually): Invalidate the cursor position + when moving point by using the current glyph matrix. This avoids + the need to force redisplay when this function is called in a + loop. + +2013-06-29 Paul Eggert + + Fix minor problems found by static checking. + * coding.c (encode_inhibit_flag, inhibit_flag): New functions. + Redo the latter's body to sidestep GCC parenthesization warnings. + (setup_coding_system, detect_coding, detect_coding_system): Use them. + * coding.c (detect_coding, detect_coding_system): + * coding.h (struct undecided_spec): + Use bool for boolean. + * image.c (QCmax_width, QCmax_height): Now static. + * xdisp.c (Fmove_point_visually): Remove unused local. + +2013-06-29 Eli Zaretskii + + * xdisp.c (Fmove_point_visually): New function. + +2013-06-28 Kenichi Handa + + * coding.h (define_coding_undecided_arg_index): New enum. + (coding_attr_index): New members + coding_attr_undecided_inhibit_null_byte_detection, + coding_attr_undecided_inhibit_iso_escape_detection, + coding_attr_undecided_prefer_utf_8. + (undecided_spec): New struct. + (struct coding_system): New member `undecided' of the member + `spec'. + + * coding.c (setup_coding_system): Handle CODING->spec.undecided. + (detect_coding): Likewise. + (detect_coding_system): Likewise. + (Fdefine_coding_system_internal): New coding system properties + :inhibit-null-byte-detection, :inhibit-iso-escape-detection, and + :prefer-utf-8. + (syms_of_coding): Adjusted for coding_arg_undecided_max. + +2013-06-28 Kenichi Handa + + * coding.h (define_coding_undecided_arg_index): New enum. + (coding_attr_index): New members + coding_attr_undecided_inhibit_null_byte_detection, + coding_attr_undecided_inhibit_iso_escape_detection, + coding_attr_undecided_prefer_utf_8. + (undecided_spec): New struct. + (struct coding_system): New member `undecided' of the member + `spec'. + + * coding.c (setup_coding_system): Handle CODING->spec.undecided. + (detect_coding): Likewise. + (detect_coding_system): Likewise. + (Fdefine_coding_system_internal): New coding system properties + :inhibit-null-byte-detection, :inhibit-iso-escape-detection, and + :prefer-utf-8. + (syms_of_coding): Adjust for coding_arg_undecided_max. + +2013-06-28 Paul Eggert + + * image.c (x_from_xcolors): Remove unused local. + +2013-06-28 YAMAMOTO Mitsuharu + + Defer image data transfer between X client and server until actual + display happens. + + * dispextern.h (struct image) [HAVE_X_WINDOWS]: New members `ximg' + and `mask_img'. + + * image.c (Destroy_Image): Remove. + (x_clear_image_1): New arg `flags' instead of 3 bools `pixmap_p', + `mask_p', and `colors_p'. All uses changed. + (x_clear_image_1) [HAVE_X_WINDOWS]: Destroy `ximg' and `mask_img'. + (CLEAR_IMAGE_PIXMAP, CLEAR_IMAGE_MASK, CLEAR_IMAGE_COLORS): New + macros for `flags' arg to x_clear_image_1. + (postprocess_image, xpm_load_image, x_build_heuristic_mask) + (png_load_body): Use x_clear_image_1 instead of Free_Pixmap. + (ZPixmap, XGetImage) [HAVE_NS]: Remove. + (image_get_x_image_or_dc, image_unget_x_image_or_dc) + (image_get_x_image, image_unget_x_image): New functions or macros. + (image_background, image_background_transparent, x_to_xcolors) + (x_build_heuristic_mask): Use image_get_x_image_or_dc instead of + XGetImage or CreateCompatibleDC. Use image_unget_x_image_or_dc + instead of Destroy_Image. + (image_create_x_image_and_pixmap, image_put_x_image): New functions. + (xpm_load_image, x_from_xcolors, x_build_heuristic_mask, pbm_load) + (png_load_body, jpeg_load_body, tiff_load, gif_load) + (imagemagick_load_image, svg_load_image): Use them instead of + x_create_x_image_and_pixmap, and x_put_x_image followed by + x_destroy_x_image, respectively. + (xpm_load) [HAVE_XPM && !HAVE_NTGUI]: Use XpmReadFileToImage and + XpmCreateImageFromBuffer instead of XpmReadFileToPixmap and + XpmCreatePixmapFromBuffer. Create pixmaps. Fill background and + background_transparent fields. + (image_sync_to_pixmaps) [HAVE_X_WINDOWS]: New function. + (prepare_image_for_display, x_disable_image) [HAVE_X_WINDOWS]: Use it. + +2013-06-27 Paul Eggert + + Do not tickle glib SIGCHLD handling if Cygwin (Bug#14569). + This mostly consists of undoing recent changes. + * callproc.c (Fcall_process): + * process.c (create_process): + Do not worry about catching SIGCHLD here, undoing previous change. + * nsterm.m (ns_term_init): Re-catch SIGCHLD, undoing previous change. + * process.c, process.h (catch_child_signal): + No longer extern if !NS_IMPL_GNUSTEP, undoing 06-22 change. + * process.c (catch_child_handler): Don't worry about being called + lazily and do not assume caller has blocked SIGCHLD, undoing + previous change. Move first-time stuff back to + init_process_emacs, undoing 06-22 change. If CYGWIN, do not + tickle glib, as that causes Cygwin bootstrap to fail. Do not + set lib_child_handler if it's already initialized, which may + help avoid problems on GNUStep. + +2013-06-23 Paul Eggert + + A more-conservative workaround for Cygwin SIGCHLD issues (Bug#14569). + * callproc.c (Fcall_process): + * process.c (create_process): + Make sure SIGCHLD is caught before we fork, + since Emacs startup no arranges to catch SIGCHLD. + * process.c (lib_child_handler): Initialize to null, not to + dummy_handler. + (catch_child_signal): Allow self to be called lazily. + Do nothing if it's already been called. + Assume caller has blocked SIGCHLD (all callers do now). + * emacs.c (main): Do not catch SIGCHLD here; defer it until + just before it's really needed. + * nsterm.m (ns_term_init): No need to re-catch SIGCHLD here, + since it hasn't been caught yet. + +2013-06-23 Lars Magne Ingebrigtsen + + * image.c (compute_image_size): New function to implement + :max-width and :max-height. + (imagemagick_load_image): Use it. + +2013-06-23 Paul Eggert + + Try to avoid malloc SEGVs on Cygwin (Bug#14569). + * callproc.c, process.h (block_child_signal, unblock_child_signal): + Now extern. + * emacs.c (main): Catch SIGCHLD just before initializing gfilenotify. + * process.c (catch_child_signal): Block SIGCHLD while futzing with + the SIGCHLD handler, since the code is not atomic and (due to glib) + signals may be arriving now. + * sysdep.c (init_signals): Do not catch child signals here; + 'main' now does that later, at a safer time. + 2013-06-22 Paul Eggert Clean up SIGCHLD handling a bit (Bug#14569).