summaryrefslogtreecommitdiff
path: root/src/editfns.c
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2001-10-19 07:08:29 +0000
committerMiles Bader <miles@gnu.org>2001-10-19 07:08:29 +0000
commitb57c2708f0ab0155f7e27cae9d3a42408a947052 (patch)
tree964a0c5637008870e4bc352673164556b2ec1e7e /src/editfns.c
parent79f1f96cb1a7eac42d9c0fe8e78a1cdcb17281dc (diff)
downloademacs-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.c28
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