register INTERVAL i, unchanged;
register INTERVAL prev_changed = NULL_INTERVAL;
register int s, len;
+ Lisp_Object ostart, oend;
+
+ ostart = start;
+ oend = end;
props = validate_plist (props);
if (NILP (props))
return Qnil;
+ /* Restore the original START and END values
+ because validate_interval_range increments them for strings. */
+ start = ostart;
+ end = oend;
+
i = validate_interval_range (object, &start, &end, hard);
/* This can return if start == end. */
if (NULL_INTERVAL_P (i))
syms_of_textprop ()
{
DEFVAR_LISP ("inhibit-point-motion-hooks", &Vinhibit_point_motion_hooks,
- "If non-nil, don't call the text property values of\n\
-`point-left' and `point-entered'.");
+ "If non-nil, don't run `point-left' and `point-entered' text properties.\n\
+This also inhibits the use of the `intangible' text property.");
Vinhibit_point_motion_hooks = Qnil;
/* Common attributes one might give text */