diff options
| author | Andreas Schwab | 2012-06-30 11:13:54 +0200 |
|---|---|---|
| committer | Andreas Schwab | 2012-06-30 11:13:54 +0200 |
| commit | af5a5a98c882b9c4ed61bf840ce4f7e3d20baaa8 (patch) | |
| tree | 5bbd1f39119432ace0aef77535250ac8907c6dd4 /src | |
| parent | 3cfbebba71090f6ea0c2ca4a6056a3e645cee2e8 (diff) | |
| download | emacs-af5a5a98c882b9c4ed61bf840ce4f7e3d20baaa8.tar.gz emacs-af5a5a98c882b9c4ed61bf840ce4f7e3d20baaa8.zip | |
* lisp.h (CHECK_RANGED_INTEGER): Make value to check the first
argument.
* character.c, charset.c, menu.c, process.c, window.c: Adjust all
uses.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 7 | ||||
| -rw-r--r-- | src/character.c | 2 | ||||
| -rw-r--r-- | src/charset.c | 8 | ||||
| -rw-r--r-- | src/lisp.h | 6 | ||||
| -rw-r--r-- | src/menu.c | 10 | ||||
| -rw-r--r-- | src/process.c | 4 | ||||
| -rw-r--r-- | src/window.c | 2 |
7 files changed, 24 insertions, 15 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 4f3c229481e..fe66f77fc43 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,10 @@ | |||
| 1 | 2012-06-30 Andreas Schwab <schwab@linux-m68k.org> | ||
| 2 | |||
| 3 | * lisp.h (CHECK_RANGED_INTEGER): Make value to check the first | ||
| 4 | argument. | ||
| 5 | * character.c, charset.c, menu.c, process.c, window.c: Adjust all | ||
| 6 | uses. | ||
| 7 | |||
| 1 | 2012-06-29 Eli Zaretskii <eliz@gnu.org> | 8 | 2012-06-29 Eli Zaretskii <eliz@gnu.org> |
| 2 | 9 | ||
| 3 | * xdisp.c (try_window_id): Undo last change. | 10 | * xdisp.c (try_window_id): Undo last change. |
diff --git a/src/character.c b/src/character.c index da182488033..62454fe7f1c 100644 --- a/src/character.c +++ b/src/character.c | |||
| @@ -927,7 +927,7 @@ usage: (unibyte-string &rest BYTES) */) | |||
| 927 | 927 | ||
| 928 | for (i = 0; i < n; i++) | 928 | for (i = 0; i < n; i++) |
| 929 | { | 929 | { |
| 930 | CHECK_RANGED_INTEGER (0, args[i], 255); | 930 | CHECK_RANGED_INTEGER (args[i], 0, 255); |
| 931 | *p++ = XINT (args[i]); | 931 | *p++ = XINT (args[i]); |
| 932 | } | 932 | } |
| 933 | 933 | ||
diff --git a/src/charset.c b/src/charset.c index 04de8a44b4c..d92c909dc0c 100644 --- a/src/charset.c +++ b/src/charset.c | |||
| @@ -878,9 +878,9 @@ usage: (define-charset-internal ...) */) | |||
| 878 | 878 | ||
| 879 | min_byte_obj = Faref (val, make_number (i * 2)); | 879 | min_byte_obj = Faref (val, make_number (i * 2)); |
| 880 | max_byte_obj = Faref (val, make_number (i * 2 + 1)); | 880 | max_byte_obj = Faref (val, make_number (i * 2 + 1)); |
| 881 | CHECK_RANGED_INTEGER (0, min_byte_obj, 255); | 881 | CHECK_RANGED_INTEGER (min_byte_obj, 0, 255); |
| 882 | min_byte = XINT (min_byte_obj); | 882 | min_byte = XINT (min_byte_obj); |
| 883 | CHECK_RANGED_INTEGER (min_byte, max_byte_obj, 255); | 883 | CHECK_RANGED_INTEGER (max_byte_obj, min_byte, 255); |
| 884 | max_byte = XINT (max_byte_obj); | 884 | max_byte = XINT (max_byte_obj); |
| 885 | charset.code_space[i * 4] = min_byte; | 885 | charset.code_space[i * 4] = min_byte; |
| 886 | charset.code_space[i * 4 + 1] = max_byte; | 886 | charset.code_space[i * 4 + 1] = max_byte; |
| @@ -898,7 +898,7 @@ usage: (define-charset-internal ...) */) | |||
| 898 | charset.dimension = dimension; | 898 | charset.dimension = dimension; |
| 899 | else | 899 | else |
| 900 | { | 900 | { |
| 901 | CHECK_RANGED_INTEGER (1, val, 4); | 901 | CHECK_RANGED_INTEGER (val, 1, 4); |
| 902 | charset.dimension = XINT (val); | 902 | charset.dimension = XINT (val); |
| 903 | } | 903 | } |
| 904 | 904 | ||
| @@ -991,7 +991,7 @@ usage: (define-charset-internal ...) */) | |||
| 991 | charset.iso_revision = -1; | 991 | charset.iso_revision = -1; |
| 992 | else | 992 | else |
| 993 | { | 993 | { |
| 994 | CHECK_RANGED_INTEGER (-1, val, 63); | 994 | CHECK_RANGED_INTEGER (val, -1, 63); |
| 995 | charset.iso_revision = XINT (val); | 995 | charset.iso_revision = XINT (val); |
| 996 | } | 996 | } |
| 997 | 997 | ||
diff --git a/src/lisp.h b/src/lisp.h index cac5370bd12..1e40ff7e773 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -1716,7 +1716,7 @@ typedef struct { | |||
| 1716 | #define CHECK_NATNUM(x) \ | 1716 | #define CHECK_NATNUM(x) \ |
| 1717 | CHECK_TYPE (NATNUMP (x), Qwholenump, x) | 1717 | CHECK_TYPE (NATNUMP (x), Qwholenump, x) |
| 1718 | 1718 | ||
| 1719 | #define CHECK_RANGED_INTEGER(lo, x, hi) \ | 1719 | #define CHECK_RANGED_INTEGER(x, lo, hi) \ |
| 1720 | do { \ | 1720 | do { \ |
| 1721 | CHECK_NUMBER (x); \ | 1721 | CHECK_NUMBER (x); \ |
| 1722 | if (! ((lo) <= XINT (x) && XINT (x) <= (hi))) \ | 1722 | if (! ((lo) <= XINT (x) && XINT (x) <= (hi))) \ |
| @@ -1730,9 +1730,9 @@ typedef struct { | |||
| 1730 | #define CHECK_TYPE_RANGED_INTEGER(type, x) \ | 1730 | #define CHECK_TYPE_RANGED_INTEGER(type, x) \ |
| 1731 | do { \ | 1731 | do { \ |
| 1732 | if (TYPE_SIGNED (type)) \ | 1732 | if (TYPE_SIGNED (type)) \ |
| 1733 | CHECK_RANGED_INTEGER (TYPE_MINIMUM (type), x, TYPE_MAXIMUM (type)); \ | 1733 | CHECK_RANGED_INTEGER (x, TYPE_MINIMUM (type), TYPE_MAXIMUM (type)); \ |
| 1734 | else \ | 1734 | else \ |
| 1735 | CHECK_RANGED_INTEGER (0, x, TYPE_MAXIMUM (type)); \ | 1735 | CHECK_RANGED_INTEGER (x, 0, TYPE_MAXIMUM (type)); \ |
| 1736 | } while (0) | 1736 | } while (0) |
| 1737 | 1737 | ||
| 1738 | #define CHECK_MARKER(x) \ | 1738 | #define CHECK_MARKER(x) \ |
diff --git a/src/menu.c b/src/menu.c index 2cff60eae3c..598385c38c0 100644 --- a/src/menu.c +++ b/src/menu.c | |||
| @@ -1198,14 +1198,16 @@ no quit occurs and `x-popup-menu' returns nil. */) | |||
| 1198 | but I don't want to make one now. */ | 1198 | but I don't want to make one now. */ |
| 1199 | CHECK_WINDOW (window); | 1199 | CHECK_WINDOW (window); |
| 1200 | 1200 | ||
| 1201 | CHECK_RANGED_INTEGER ((xpos < INT_MIN - MOST_NEGATIVE_FIXNUM | 1201 | CHECK_RANGED_INTEGER (x, |
| 1202 | (xpos < INT_MIN - MOST_NEGATIVE_FIXNUM | ||
| 1202 | ? (EMACS_INT) INT_MIN - xpos | 1203 | ? (EMACS_INT) INT_MIN - xpos |
| 1203 | : MOST_NEGATIVE_FIXNUM), | 1204 | : MOST_NEGATIVE_FIXNUM), |
| 1204 | x, INT_MAX - xpos); | 1205 | INT_MAX - xpos); |
| 1205 | CHECK_RANGED_INTEGER ((ypos < INT_MIN - MOST_NEGATIVE_FIXNUM | 1206 | CHECK_RANGED_INTEGER (y, |
| 1207 | (ypos < INT_MIN - MOST_NEGATIVE_FIXNUM | ||
| 1206 | ? (EMACS_INT) INT_MIN - ypos | 1208 | ? (EMACS_INT) INT_MIN - ypos |
| 1207 | : MOST_NEGATIVE_FIXNUM), | 1209 | : MOST_NEGATIVE_FIXNUM), |
| 1208 | y, INT_MAX - ypos); | 1210 | INT_MAX - ypos); |
| 1209 | xpos += XINT (x); | 1211 | xpos += XINT (x); |
| 1210 | ypos += XINT (y); | 1212 | ypos += XINT (y); |
| 1211 | 1213 | ||
diff --git a/src/process.c b/src/process.c index de7fc147975..e9ad3b10c33 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -1028,8 +1028,8 @@ DEFUN ("set-process-window-size", Fset_process_window_size, | |||
| 1028 | (register Lisp_Object process, Lisp_Object height, Lisp_Object width) | 1028 | (register Lisp_Object process, Lisp_Object height, Lisp_Object width) |
| 1029 | { | 1029 | { |
| 1030 | CHECK_PROCESS (process); | 1030 | CHECK_PROCESS (process); |
| 1031 | CHECK_RANGED_INTEGER (0, height, INT_MAX); | 1031 | CHECK_RANGED_INTEGER (height, 0, INT_MAX); |
| 1032 | CHECK_RANGED_INTEGER (0, width, INT_MAX); | 1032 | CHECK_RANGED_INTEGER (width, 0, INT_MAX); |
| 1033 | 1033 | ||
| 1034 | if (XPROCESS (process)->infd < 0 | 1034 | if (XPROCESS (process)->infd < 0 |
| 1035 | || set_window_size (XPROCESS (process)->infd, | 1035 | || set_window_size (XPROCESS (process)->infd, |
diff --git a/src/window.c b/src/window.c index 7691eb4dca9..df2c04a7663 100644 --- a/src/window.c +++ b/src/window.c | |||
| @@ -6163,7 +6163,7 @@ Fourth parameter HORIZONTAL-TYPE is currently unused. */) | |||
| 6163 | 6163 | ||
| 6164 | if (!NILP (width)) | 6164 | if (!NILP (width)) |
| 6165 | { | 6165 | { |
| 6166 | CHECK_RANGED_INTEGER (0, width, INT_MAX); | 6166 | CHECK_RANGED_INTEGER (width, 0, INT_MAX); |
| 6167 | 6167 | ||
| 6168 | if (XINT (width) == 0) | 6168 | if (XINT (width) == 0) |
| 6169 | vertical_type = Qnil; | 6169 | vertical_type = Qnil; |