Mercurial > emacs
comparison src/editfns.c @ 18315:3090657a944b
(Fchar_before): Validate N after decrementing.
Don't use POS as integer.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 18 Jun 1997 16:46:05 +0000 |
parents | 9c4fb902b6eb |
children | 92e9fb8b88f4 |
comparison
equal
deleted
inserted
replaced
18314:6e13dd3d1e11 | 18315:3090657a944b |
---|---|
606 else | 606 else |
607 { | 607 { |
608 CHECK_NUMBER_COERCE_MARKER (pos, 0); | 608 CHECK_NUMBER_COERCE_MARKER (pos, 0); |
609 | 609 |
610 n = XINT (pos); | 610 n = XINT (pos); |
611 } | |
612 | |
613 if (!NILP (current_buffer->enable_multibyte_characters)) | |
614 { | |
615 DEC_POS (n); | |
611 if (n < BEGV || n >= ZV) | 616 if (n < BEGV || n >= ZV) |
612 return Qnil; | 617 return Qnil; |
613 } | 618 XSETFASTINT (val, FETCH_CHAR (n)); |
614 | 619 } |
615 if (!NILP (current_buffer->enable_multibyte_characters)) | 620 else |
616 { | 621 { |
617 DEC_POS (pos); | 622 n--; |
618 XSETFASTINT (val, FETCH_CHAR (pos)); | 623 if (n < BEGV || n >= ZV) |
619 } | 624 return Qnil; |
620 else | 625 XSETFASTINT (val, FETCH_BYTE (n)); |
621 { | |
622 pos--; | |
623 XSETFASTINT (val, FETCH_BYTE (pos)); | |
624 } | 626 } |
625 return val; | 627 return val; |
626 } | 628 } |
627 | 629 |
628 DEFUN ("user-login-name", Fuser_login_name, Suser_login_name, 0, 1, 0, | 630 DEFUN ("user-login-name", Fuser_login_name, Suser_login_name, 0, 1, 0, |