Mercurial > emacs
comparison src/search.c @ 20924:eda7e44ef9d9
(search_command): Check LIM in valid range
before calling CHAR_TO_BYTE.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Wed, 18 Feb 1998 22:54:43 +0000 |
parents | f69969e35e78 |
children | 765fdbf766e4 |
comparison
equal
deleted
inserted
replaced
20923:c6e733c90ed8 | 20924:eda7e44ef9d9 |
---|---|
878 } | 878 } |
879 else | 879 else |
880 { | 880 { |
881 CHECK_NUMBER_COERCE_MARKER (bound, 1); | 881 CHECK_NUMBER_COERCE_MARKER (bound, 1); |
882 lim = XINT (bound); | 882 lim = XINT (bound); |
883 lim_byte = CHAR_TO_BYTE (lim); | |
884 if (n > 0 ? lim < PT : lim > PT) | 883 if (n > 0 ? lim < PT : lim > PT) |
885 error ("Invalid search bound (wrong side of point)"); | 884 error ("Invalid search bound (wrong side of point)"); |
886 if (lim > ZV) | 885 if (lim > ZV) |
887 lim = ZV, lim_byte = ZV_BYTE; | 886 lim = ZV, lim_byte = ZV_BYTE; |
888 if (lim < BEGV) | 887 else if (lim < BEGV) |
889 lim = BEGV, lim_byte = BEGV_BYTE; | 888 lim = BEGV, lim_byte = BEGV_BYTE; |
889 else | |
890 lim_byte = CHAR_TO_BYTE (lim); | |
890 } | 891 } |
891 | 892 |
892 np = search_buffer (string, PT, PT_BYTE, lim, lim_byte, n, RE, | 893 np = search_buffer (string, PT, PT_BYTE, lim, lim_byte, n, RE, |
893 (!NILP (current_buffer->case_fold_search) | 894 (!NILP (current_buffer->case_fold_search) |
894 ? current_buffer->case_canon_table | 895 ? current_buffer->case_canon_table |