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