X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/ad39facaee4dcbd0e3f002e0a1674fce00e92c0c..3de73e5ee550ff9715e3c6034b2575a4386cf331:/src/ChangeLog diff --git a/src/ChangeLog b/src/ChangeLog index 238e37a43a..41b2fe9aab 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,4 +1,35 @@ -2011-06-20 Paul Eggert +2011-06-21 Paul Eggert + + * xterm.c (xim_initialize, same_x_server): Strlen may not fit in int. + + * xsmfns.c (smc_save_yourself_CB, x_session_initialize): Avoid strlen. + (x_session_initialize): Do not assume string length fits in int. + + * xsettings.c (apply_xft_settings): Fix potential buffer overrun. + This is unlikely, but can occur if DPI is outlandish. + + * xsettings.c (Ffont_get_system_normal_font, Ffont_get_system_font): + * xselect.c (Fx_get_atom_name): Avoid need for strlen. + + * xrdb.c: Don't assume strlen fits in int; avoid some strlens. + * xrdb.c (magic_file_p, search_magic_path): + Omit last arg SUFFIX; it was always 0. All callers changed. + (magic_file_p): Use ptrdiff_t, not int. Check for size overflow. + + * xfont.c (xfont_match): Avoid need for strlen. + + * xfns.c: Don't assume strlen fits in int. + (xic_create_fontsetname, x_window): Use ptrdiff_t, not int. + + * xdisp.c (message_log_check_duplicate): Return intmax_t, + not unsigned long, as we prefer signed integers. All callers changed. + Detect integer overflow in repeat count. + (message_dolog): Don't assume print length fits in 39 bytes. + (display_mode_element): Don't assume strlen fits in int. + + * termcap.c: Don't assume sizes fit in int and never overflow. + (struct termcap_buffer, tgetent): Use ptrdiff_t, not int, for sizes. + (gobble_line): Check for size-calculation overflow. * minibuf.c (Fread_buffer): * lread.c (intern, intern_c_string): @@ -16,7 +47,7 @@ * font.h (font_intern_prop): 2nd arg is now ptrdiff_t, not int. * filelock.c: Fix some buffer overrun and integer overflow issues. - (get_boot_time): Don't assume that gzip command string fits in 100 bytes. + (get_boot_time): Don't assume gzip command string fits in 100 bytes. Reformulate so as not to need the command string. Invoke gzip -cd rather than gunzip, as it's more portable. (lock_info_type, lock_file_1, lock_file): @@ -28,8 +59,6 @@ Check for time_t and/or pid_t out of range, e.g., via a network share. Don't alloca where an auto var works fine. -2011-06-19 Paul Eggert - * fileio.c: Fix some integer overflow issues. (file_name_as_directory, Fexpand_file_name, Fsubstitute_in_file_name): Don't assume string length fits in int. @@ -61,7 +90,7 @@ All uses changed. This doesn't fix a bug, but it simplifies the code away from its former Hollerith-constant appearance, and it's one less 'int' to worry about when looking at integer-overflow issues. - (string_to_number): Simplify the 2011-04-26 change by invoking xsignal1. + (string_to_number): Simplify 2011-04-26 change by invoking xsignal1. * lisp.h (DEFUN): Remove bogus use of sizeof (struct Lisp_Subr). This didn't break anything, but it didn't help either. @@ -70,8 +99,6 @@ (LIST_END_P): Remove unused macro and its bogus comment. (make_fixnum_or_float): Remove unnecessary cast to EMACS_INT. -2011-06-18 Paul Eggert - * lisp.h (union Lisp_Object.i): EMACS_INT, not EMACS_UINT. This is for consistency with the ordinary, non-USE_LISP_UNION_TYPE, implementation. @@ -87,7 +114,7 @@ (compute_motion): Use it. This is just for clarity. (Fcompute_motion): Don't assume hscroll and tab offset fit in int. - * image.c (xbm_image_p): Don't assume stated width and height fit in int. + * image.c (xbm_image_p): Don't assume stated width, height fit in int. * lisp.h (lint_assume): New macro. * composite.c (composition_gstring_put_cache): @@ -111,11 +138,8 @@ * fns.c (concat): Catch string overflow earlier. Do not rely on integer wraparound. - * dispextern.h (struct it.overlay_strings_charpos): EMACS_INT, not int. - -2011-06-17 Paul Eggert - - * dispextern.h (struct it.selective): Now EMACS_INT, not int. + * dispextern.h (struct it.overlay_strings_charpos) + (struct it.selective): Now EMACS_INT, not int. * xdisp.c (forward_to_next_line_start) (back_to_previous_visible_line_start) (reseat_at_next_visible_line_start, next_element_from_buffer): @@ -141,6 +165,29 @@ (record_overlay_string): Check for size-calculation overflow. (init_buffer_once): Check at compile-time, not run-time. +2011-06-20 Deniz Dogan + + * process.c (Fset_process_buffer): Clarify return value in + docstring. + +2011-06-18 Chong Yidong + + * dispnew.c (add_window_display_history): Use BVAR. + + * xdisp.c (debug_method_add): Use BVAR. + (check_window_end, dump_glyph_matrix, dump_glyph) + (dump_glyph_row, dump_glyph_string): Convert arglist to ANSI C. + + * xfaces.c (check_lface_attrs, check_lface, dump_realized_face): + Likewise. + + * xfns.c (Fx_create_frame, x_create_tip_frame): Delay image cache + check till after the cache is created in init_frame_faces. + +2011-06-17 Stefan Monnier + + * fns.c (Fsafe_length): Yet another int/Lisp_Object mixup. + 2011-06-16 Paul Eggert * lisp.h: Include , for INT_MAX, LONG_MAX, LLONG_MAX.