aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndreas Schwab2012-06-30 11:13:54 +0200
committerAndreas Schwab2012-06-30 11:13:54 +0200
commitaf5a5a98c882b9c4ed61bf840ce4f7e3d20baaa8 (patch)
tree5bbd1f39119432ace0aef77535250ac8907c6dd4 /src
parent3cfbebba71090f6ea0c2ca4a6056a3e645cee2e8 (diff)
downloademacs-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/ChangeLog7
-rw-r--r--src/character.c2
-rw-r--r--src/charset.c8
-rw-r--r--src/lisp.h6
-rw-r--r--src/menu.c10
-rw-r--r--src/process.c4
-rw-r--r--src/window.c2
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 @@
12012-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
12012-06-29 Eli Zaretskii <eliz@gnu.org> 82012-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;