Commit a2ad3e19 authored by Karl Heuer's avatar Karl Heuer
Browse files

(Flength): Don't call Farray_length, just use size field.

parent cec4abce
...@@ -101,29 +101,28 @@ A byte-code function object is also allowed.") ...@@ -101,29 +101,28 @@ A byte-code function object is also allowed.")
register int i; register int i;
retry: retry:
if (VECTORP (obj) || STRINGP (obj) || COMPILEDP (obj)) if (STRINGP (obj))
return Farray_length (obj); XSETFASTINT (val, XSTRING (obj)->size);
else if (VECTORP (obj) || COMPILEDP (obj))
XSETFASTINT (val, XVECTOR (obj)->size);
else if (CONSP (obj)) else if (CONSP (obj))
{ {
for (i = 0, tail = obj; !NILP(tail); i++) for (i = 0, tail = obj; !NILP (tail); i++)
{ {
QUIT; QUIT;
tail = Fcdr (tail); tail = Fcdr (tail);
} }
XSETFASTINT (val, i); XSETFASTINT (val, i);
return val;
}
else if (NILP(obj))
{
XSETFASTINT (val, 0);
return val;
} }
else if (NILP (obj))
XSETFASTINT (val, 0);
else else
{ {
obj = wrong_type_argument (Qsequencep, obj); obj = wrong_type_argument (Qsequencep, obj);
goto retry; goto retry;
} }
return val;
} }
DEFUN ("string-equal", Fstring_equal, Sstring_equal, 2, 2, 0, DEFUN ("string-equal", Fstring_equal, Sstring_equal, 2, 2, 0,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment