# HG changeset patch # User Richard M. Stallman # Date 781045379 0 # Node ID c7bfa0da167bafd7a1729d42048086a5d870decb # Parent 8d35fd88194dfd3aba4cbbae671b2c0f6a66b87a (Foverlay_get): Handle `category' property on overlay. diff -r 8d35fd88194d -r c7bfa0da167b src/buffer.c --- a/src/buffer.c Sat Oct 01 13:27:15 1994 +0000 +++ b/src/buffer.c Sat Oct 01 21:02:59 1994 +0000 @@ -2159,19 +2159,28 @@ (overlay, prop) Lisp_Object overlay, prop; { - Lisp_Object plist; + Lisp_Object plist, fallback; CHECK_OVERLAY (overlay, 0); + fallback = Qnil; + for (plist = Fcdr_safe (XCONS (overlay)->cdr); CONSP (plist) && CONSP (XCONS (plist)->cdr); plist = XCONS (XCONS (plist)->cdr)->cdr) { if (EQ (XCONS (plist)->car, prop)) return XCONS (XCONS (plist)->cdr)->car; + else if (EQ (XCONS (plist)->car, Qcategory)) + { + Lisp_Object tem; + tem = Fcar (Fcdr (plist)); + if (SYMBOLP (tem)) + fallback = Fget (tem, prop); + } } - return Qnil; + return fallback; } DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0,