summaryrefslogtreecommitdiff
path: root/src/composite.c
diff options
context:
space:
mode:
authorGerd Moellmann <gerd@gnu.org>2001-06-18 10:41:42 +0000
committerGerd Moellmann <gerd@gnu.org>2001-06-18 10:41:42 +0000
commite3b3e3271489eda3e7f2a3fd404dced8fbb10d60 (patch)
tree22dfb5dc21579af6f3a485cad88a8e844c28c095 /src/composite.c
parent855eca564cc7814366babaf5f792e69468f97597 (diff)
downloademacs-e3b3e3271489eda3e7f2a3fd404dced8fbb10d60.tar.gz
(Ffind_composition_internal): Check POS
for validity.
Diffstat (limited to 'src/composite.c')
-rw-r--r--src/composite.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/composite.c b/src/composite.c
index 9ff5f855bed..6f60ddbca5a 100644
--- a/src/composite.c
+++ b/src/composite.c
@@ -777,8 +777,18 @@ See `find-composition' for more detail.")
}
else
end = -1;
+
if (!NILP (string))
- CHECK_STRING (string, 2);
+ {
+ CHECK_STRING (string, 2);
+ if (XINT (pos) < 0 || XINT (pos) >= XSTRING (string)->size)
+ args_out_of_range (string, pos);
+ }
+ else
+ {
+ if (XINT (pos) < BEGV || XINT (pos) >= ZV)
+ args_out_of_range (Fcurrent_buffer (), pos);
+ }
if (!find_composition (start, end, &start, &end, &prop, string))
return Qnil;