- register INTERVAL i;
- register Lisp_Object tail;
-
- if (NILP (object))
- XSET (object, Lisp_Buffer, current_buffer);
- i = validate_interval_range (object, &pos, &pos, soft);
- if (NULL_INTERVAL_P (i))
- return Qnil;
-
- /* If POS is at the end of the interval,
- it means it's the end of OBJECT.
- There are no properties at the very end,
- since no character follows. */
- if (XINT (pos) == LENGTH (i) + i->position)
- return Qnil;
-
- return textget (i->plist, prop);