# HG changeset patch # User Karl Heuer # Date 798752595 0 # Node ID d8227796a997ec5da3bc7da791c5dccd2b7b37a7 # Parent d0bd2102adbc16cebe468dd0518c700771ab4303 (Fplist_put): Don't signal an error if plist isn't a cons. diff -r d0bd2102adbc -r d8227796a997 src/fns.c --- a/src/fns.c Mon Apr 24 18:28:50 1995 +0000 +++ b/src/fns.c Mon Apr 24 19:43:15 1995 +0000 @@ -880,13 +880,12 @@ register Lisp_Object tail, prev; Lisp_Object newcell; prev = Qnil; - for (tail = plist; !NILP (tail); tail = Fcdr (Fcdr (tail))) + for (tail = plist; CONSP (tail) && CONSP (XCONS (tail)->cdr); + tail = XCONS (XCONS (tail)->cdr)->cdr) { - register Lisp_Object tem; - tem = Fcar (tail); - if (EQ (prop, tem)) + if (EQ (prop, XCONS (tail)->car)) { - Fsetcar (Fcdr (tail), val); + Fsetcar (XCONS (tail)->cdr, val); return plist; } prev = tail; @@ -895,7 +894,7 @@ if (NILP (prev)) return newcell; else - Fsetcdr (Fcdr (prev), newcell); + Fsetcdr (XCONS (prev)->cdr, newcell); return plist; }