1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-19 14:41:11 -08:00
Commit graph

101116 commits

Author SHA1 Message Date
Paul Eggert
74ca2eb34b * image.c (xpm_scan) [HAVE_NS && !HAVE_XPM]:
Don't assume string length fits in int.
2011-06-19 23:03:10 -07:00
Paul Eggert
9bda3520ff * gtkutil.c (style_changed_cb): Avoid need for strlen. 2011-06-19 22:54:33 -07:00
Paul Eggert
ccd6111c24 * font.c (font_intern_prop): Don't assume string length fits in int.
Don't assume integer property fits in fixnum.
* font.h (font_intern_prop): 2nd arg is now ptrdiff_t, not int.
2011-06-19 22:51:47 -07:00
Paul Eggert
b5b8c9e5d3 * font.c: Don't assume string length fits in int.
(font_parse_xlfd, font_parse_fcname, font_unparse_fcname):
Use ptrdiff_t, not int.
2011-06-19 20:21:35 -07:00
Paul Eggert
882f0d8119 * filelock.c: Fix some buffer overrun and integer overflow issues.
(get_boot_time): Don't assume that 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):
Don't assume pid_t and time_t fit in unsigned long.
(LOCK_PID_MAX): Remove; we now use more-reliable bounds.
(current_lock_owner): Prefer signed type for sizes.
Use memcpy, not strncpy, where memcpy is what is really wanted.
Don't assume (via atoi) that time_t and pid_t fit in int.
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 20:11:40 -07:00
Paul Eggert
93f4cf8895 * 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.
(directory_file_name): Don't assume string length fits in long.
(make_temp_name): Don't assume pid fits in int, or that its print
length is less than 20.
2011-06-19 12:06:16 -07:00
Paul Eggert
f3e92b69d2 * data.c (Fsubr_name): Rewrite to avoid a strlen call. 2011-06-19 11:44:58 -07:00
Paul Eggert
1bfdaf108f * coding.c (make_subsidiaries): Don't assume string length fits in int. 2011-06-19 11:44:09 -07:00
Paul Eggert
35016e9a4e * callproc.c (child_setup): Rewrite to avoid two strlen calls. 2011-06-19 11:40:02 -07:00
Paul Eggert
3d1e65a18a * process.c (Fformat_network_address): Use EMACS_INT, not EMACS_UINT.
We prefer signed integers, even for size calculations.
2011-06-19 11:38:58 -07:00
Paul Eggert
0b963a931c * emacs.c: Don't assume string length fits in 'int'.
(DEFINE_DUMMY_FUNCTION, sort_args): Use ptrdiff_t, not int.
(main): Don't invoke strlen when not needed.
2011-06-19 11:37:51 -07:00
Paul Eggert
573f4b5407 * dbusbind.c (XD_ERROR): Don't arbitrarily truncate string.
(XD_DEBUG_MESSAGE): Don't waste a byte.
2011-06-19 11:32:55 -07:00
Paul Eggert
989f33ba6b * callproc.c: Don't assume string length fits in 'int.' 2011-06-19 11:30:19 -07:00
Paul Eggert
965d34ebb3 * buffer.c (init_buffer): Don't assume string length fits in 'int'. 2011-06-19 11:27:58 -07:00
Paul Eggert
f14ed477b8 * lread.c (string_to_number): Simplify the 2011-04-26 change by invoking xsignal1. 2011-06-18 18:35:03 -07:00
Paul Eggert
e4d29b3382 * lread.c (invalid_syntax): Omit length argument.
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.
2011-06-18 18:31:41 -07:00
Paul Eggert
cbeff735d2 * lisp.h (make_fixnum_or_float): Remove unnecessary cast to EMACS_INT. 2011-06-18 17:11:45 -07:00
Paul Eggert
9f62aeb185 * lisp.h (LIST_END_P): Remove unused macro and its bogus comment. 2011-06-18 17:09:24 -07:00
Paul Eggert
eb49b13608 * lisp.h (DEFUN): Remove bogus use of sizeof (struct Lisp_Subr).
This didn't break anything, but it didn't help either.
It's confusing to put a bogus integer in a place where the actual
value does not matter.
2011-06-18 17:06:17 -07:00
Paul Eggert
9a8e8d9b22 * lisp.h (XSET) [USE_LISP_UNION_TYPE]: Use uintptr_t and intptr_t,
not EMACS_UINT and EMACS_INT, when converting pointer to integer.
This avoids a GCC warning when WIDE_EMACS_INT.
2011-06-18 12:13:46 -07:00
Paul Eggert
b61cc01c06 * lisp.h (struct Lisp_Bool_Vector.size): EMACS_INT, not EMACS_UINT.
We prefer signed types, and the value cannot exceed the EMACS_INT
range anyway (because otherwise the length would not be representable).
2011-06-18 12:08:22 -07:00
Paul Eggert
15375a22fb * lisp.h (union Lisp_Object.i): EMACS_INT, not EMACS_UINT.
This is for consistency with the ordinary, non-USE_LISP_UNION_TYPE,
implementation.
2011-06-18 11:32:22 -07:00
Paul Eggert
8fcaf9cc81 * indent.c (Fcompute_motion): Don't assume hscroll and tab offset fit in int. 2011-06-18 11:29:19 -07:00
Paul Eggert
abe80cc6c1 * insdel.c: Omit unnecessary forward decls, to simplify future changes. 2011-06-18 11:28:32 -07:00
Paul Eggert
53b2623dc0 * indent.c (sane_tab_width): New function.
(current_column, scan_for_column, Findent_to, position_indentation)
(compute_motion): Use it.  This is just for clarity.
2011-06-18 11:24:12 -07:00
Paul Eggert
45aebb6455 * image.c (xbm_image_p): Don't assume stated width and height fit in int. 2011-06-18 11:12:25 -07:00
Paul Eggert
f2ed8a7095 * lisp.h (lint_assume): New macro.
* composite.c (composition_gstring_put_cache):
* ftfont.c (ftfont_shape_by_flt): Use it to pacify GCC 4.6.0.
2011-06-18 11:09:17 -07:00
Paul Eggert
e1528d010f * fns.c (Ffillarray): Don't shadow a local. 2011-06-18 09:45:23 -07:00
Paul Eggert
a9e860e1fd * editfns.c: Omit unnecessary forward decls, to simplify future changes. 2011-06-18 09:20:05 -07:00
Paul Eggert
b02c740e9d * ftfont.c (ftfont_shape_by_flt): Use signed integers for lengths. 2011-06-18 09:19:18 -07:00
Paul Eggert
ebc96716ca * font.c (Ffont_shape_gstring): Don't assume glyph len fits in 'int'. 2011-06-18 09:15:19 -07:00
Paul Eggert
85461888af * fns.c (mapcar1): Declare byte as byte, for clarity. 2011-06-18 09:10:16 -07:00
Paul Eggert
436b4815ed * fns.c (Ffillarray): Use same idx as rest of code here. 2011-06-18 09:07:41 -07:00
Paul Eggert
a4cf38e4ba * fns.c: Check that character arg fits in 'int'. 2011-06-18 09:04:07 -07:00
Paul Eggert
311d5d7cc6 * fns.c: Don't assume string byte-length fits in 'int'. 2011-06-18 09:02:03 -07:00
Paul Eggert
f03dc6ef9f * fns.c: Use much-faster test for byte-length change. 2011-06-18 09:01:08 -07:00
Paul Eggert
b4e50fa0d0 * fns.c (Ffillarray): Don't assume bool vector size fits in 'int'. 2011-06-18 08:57:22 -07:00
Paul Eggert
c0c1ee9f77 * alloc.c (Fmake_bool_vector): Avoid unnecessary multiplication. 2011-06-18 08:39:24 -07:00
Paul Eggert
a498d7f4f8 * fns.c (concat): Catch string overflow earlier.
Do not rely on integer wraparound.
2011-06-18 08:08:31 -07:00
Paul Eggert
e39e811eb8 * dispextern.h (struct it.overlay_strings_charpos): EMACS_INT, not int. 2011-06-17 22:51:59 -07:00
Paul Eggert
8783097475 * dispextern.h (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):
Don't arbitrarily truncate the value of 'selective' to int.
2011-06-17 12:55:19 -07:00
Paul Eggert
76031fad32 * xdisp.c (init_iterator): Use XINT, not XFASTINT; it might be < 0. 2011-06-17 12:49:04 -07:00
Paul Eggert
7d100a81b7 * composite.c (get_composition_id, composition_gstring_put_cache): Use EMACS_INT,
not EMACS_UINT, for indexes.
2011-06-17 12:45:29 -07:00
Paul Eggert
5eb55db987 * composite.c: Don't truncate sizes to 'int'.
(composition_gstring_p, composition_reseat_it)
(composition_adjust_point): Use EMACS_INT, not int.
2011-06-17 01:27:36 -07:00
Paul Eggert
0703a71782 * category.h (CATEGORY_SET_P): Remove unnecessary cast to EMACS_INT. 2011-06-17 01:17:29 -07:00
Paul Eggert
d6202519ae * buffer.c: Include <verify.h>.
(init_buffer_once): Check at compile-time, not run-time.
2011-06-17 01:14:30 -07:00
Paul Eggert
67c36fce59 * buffer.c (record_overlay_string): Check for size-calculation overflow.
(struct sortstrlist.size, struct sortlist.used): Don't truncate size to int.
2011-06-17 01:10:34 -07:00
Paul Eggert
93cb6be35e * buffer.c (struct sortstr.size, record_overlay_string): Don't truncate size to int. 2011-06-17 00:57:42 -07:00
Paul Eggert
c20998a717 * buffer.c (compare_overlays, cmp_for_strings): Avoid subtraction overflow. 2011-06-17 00:52:35 -07:00
Paul Eggert
8961a454e1 * buffer.c (struct sortstr.priority): Now EMACS_INT, not int. 2011-06-17 00:49:50 -07:00