diff options
author | Miles Bader <miles@gnu.org> | 2001-10-19 07:08:29 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2001-10-19 07:08:29 +0000 |
commit | b57c2708f0ab0155f7e27cae9d3a42408a947052 (patch) | |
tree | 964a0c5637008870e4bc352673164556b2ec1e7e /src/editfns.c | |
parent | 79f1f96cb1a7eac42d9c0fe8e78a1cdcb17281dc (diff) | |
download | emacs-b57c2708f0ab0155f7e27cae9d3a42408a947052.tar.gz |
(text_property_stickiness): Non-rear-non-stickiness doesn't take
precedence if the affected property's value is nil.
(Fencode_time): Escape a BOL paren in the doc-string.
Diffstat (limited to 'src/editfns.c')
-rw-r--r-- | src/editfns.c | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/src/editfns.c b/src/editfns.c index 661ad95d292..d0b682ff67e 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -357,17 +357,23 @@ text_property_stickiness (prop, pos) if (XINT (pos) > BEGV) /* Consider previous character. */ { - Lisp_Object prev_pos, rear_non_sticky; + Lisp_Object prev_pos = make_number (XINT (pos) - 1); - prev_pos = make_number (XINT (pos) - 1); - rear_non_sticky = Fget_text_property (prev_pos, Qrear_nonsticky, Qnil); - - if (EQ (rear_non_sticky, Qnil) - || (CONSP (rear_non_sticky) - && NILP (Fmemq (prop, rear_non_sticky)))) - /* PROP is not rear-non-sticky, and since this takes precedence over - any front-stickiness, PROP is inherited from before. */ - return -1; + if (! NILP (Fget_text_property (prev_pos, prop, Qnil))) + /* Non-rear-non-stickiness only takes precedence if the + preceding property value is non-nil. */ + { + Lisp_Object rear_non_sticky + = Fget_text_property (prev_pos, Qrear_nonsticky, Qnil); + + if (EQ (rear_non_sticky, Qnil) + || (CONSP (rear_non_sticky) + && NILP (Fmemq (prop, rear_non_sticky)))) + /* PROP is not rear-non-sticky, and since this takes + precedence over any front-stickiness, PROP is inherited + from before. */ + return -1; + } } /* Consider following character. */ @@ -1599,7 +1605,7 @@ DEFUN ("encode-time", Fencode_time, Sencode_time, 6, MANY, 0, This is the reverse operation of `decode-time', which see. ZONE defaults to the current time zone rule. This can be a string or t (as from `set-time-zone-rule'), or it can be a list -(as from `current-time-zone') or an integer (as from `decode-time') +\(as from `current-time-zone') or an integer (as from `decode-time') applied without consideration for daylight savings time. You can pass more than 7 arguments; then the first six arguments |