comparison src/minibuf.c @ 108942:b11cb747f0d1

* minibuf.c (Fall_completions): Add more checks.
author Andreas Schwab <schwab@linux-m68k.org>
date Tue, 08 Jun 2010 21:42:10 +0200
parents ef11028b9610
children 2bc9a0c04c87 e8d5a68351ac
comparison
equal deleted inserted replaced
108941:ef11028b9610 108942:b11cb747f0d1
1587 1587
1588 /* If COLLECTION is not a list, set TAIL just for gc pro. */ 1588 /* If COLLECTION is not a list, set TAIL just for gc pro. */
1589 tail = collection; 1589 tail = collection;
1590 if (type == 2) 1590 if (type == 2)
1591 { 1591 {
1592 collection = check_obarray (collection);
1592 obsize = XVECTOR (collection)->size; 1593 obsize = XVECTOR (collection)->size;
1593 if (obsize == 0)
1594 return Qnil;
1595 bucket = XVECTOR (collection)->contents[index]; 1594 bucket = XVECTOR (collection)->contents[index];
1596 } 1595 }
1597 1596
1598 while (1) 1597 while (1)
1599 { 1598 {
1610 eltstring = CONSP (elt) ? XCAR (elt) : elt; 1609 eltstring = CONSP (elt) ? XCAR (elt) : elt;
1611 tail = XCDR (tail); 1610 tail = XCDR (tail);
1612 } 1611 }
1613 else if (type == 2) 1612 else if (type == 2)
1614 { 1613 {
1615 if (SYMBOLP (bucket)) 1614 if (!EQ (bucket, zero))
1616 { 1615 {
1616 if (!SYMBOLP (bucket))
1617 error ("Bad data in guts of obarray");
1617 elt = bucket; 1618 elt = bucket;
1618 eltstring = elt; 1619 eltstring = elt;
1619 if (XSYMBOL (bucket)->next) 1620 if (XSYMBOL (bucket)->next)
1620 XSETSYMBOL (bucket, XSYMBOL (bucket)->next); 1621 XSETSYMBOL (bucket, XSYMBOL (bucket)->next);
1621 else 1622 else