# HG changeset patch # User james # Date 1088693088 0 # Node ID 3ceb3622efa393a1987c2bcba59cb68eae8fe6b8 # Parent 64fe99818e405475bc2c70e8d9e71eda4d575e7f [xemacs-hg @ 2004-07-01 14:44:43 by james] Make sure spec-lists and inst-lists are valid lists. diff -r 64fe99818e40 -r 3ceb3622efa3 src/ChangeLog --- a/src/ChangeLog Wed Jun 30 21:50:53 2004 +0000 +++ b/src/ChangeLog Thu Jul 01 14:44:48 2004 +0000 @@ -1,3 +1,9 @@ +2004-06-29 Jerry James + + * specifier.c (check_valid_inst_list): Change LIST_LOOP to + EXTERNAL_LIST_LOOP_2. + * specifier.c (check_valid_spec_list): Ditto. + 2004-06-16 Malcolm Purvis * malloc.c (morecore): siz is a long because in some architectures diff -r 64fe99818e40 -r 3ceb3622efa3 src/specifier.c --- a/src/specifier.c Wed Jun 30 21:50:53 2004 +0000 +++ b/src/specifier.c Thu Jul 01 14:44:48 2004 +0000 @@ -1233,20 +1233,11 @@ check_valid_inst_list (Lisp_Object inst_list, struct specifier_methods *meths, Error_Behavior errb) { - Lisp_Object rest; - - LIST_LOOP (rest, inst_list) + EXTERNAL_LIST_LOOP_2 (inst_pair, inst_list) { - Lisp_Object inst_pair, tag_set; - - if (!CONSP (rest)) - { - maybe_sferror ( - "Invalid instantiator list", inst_list, - Qspecifier, errb); - return Qnil; - } - if (!CONSP (inst_pair = XCAR (rest))) + Lisp_Object tag_set; + + if (!CONSP (inst_pair)) { maybe_sferror ( "Invalid instantiator pair", inst_pair, @@ -1292,12 +1283,10 @@ check_valid_spec_list (Lisp_Object spec_list, struct specifier_methods *meths, Error_Behavior errb) { - Lisp_Object rest; - - LIST_LOOP (rest, spec_list) + EXTERNAL_LIST_LOOP_2 (spec, spec_list) { - Lisp_Object spec, locale; - if (!CONSP (rest) || !CONSP (spec = XCAR (rest))) + Lisp_Object locale; + if (!CONSP (spec)) { maybe_sferror ( "Invalid specification list", spec_list,