diff src/fns.c @ 5439:771bf922ab2b

Merged with trunk.
author Mats Lidell <matsl@xemacs.org>
date Mon, 06 Dec 2010 22:59:26 +0100
parents 8d29f1c4bb98 c290121b0c3f
children 89331fa1c819
line wrap: on
line diff
--- a/src/fns.c	Fri Nov 26 06:43:36 2010 +0100
+++ b/src/fns.c	Mon Dec 06 22:59:26 2010 +0100
@@ -4171,11 +4171,13 @@
 {
   Lisp_Object sequence = args[0];
   Lisp_Object item = args[1];
-  Elemcount starting = 0, ending = EMACS_INT_MAX + 1, ii, len;
+  Elemcount starting, ending = EMACS_INT_MAX + 1, ii, len;
 
   PARSE_KEYWORDS (Ffill, nargs, args, 2, (start, end), (start = Qzero));
 
   CHECK_NATNUM (start);
+  starting = BIGNUMP (start) ? EMACS_INT_MAX + 1 : XINT (start);
+
   if (!NILP (end))
     {
       CHECK_NATNUM (end);
@@ -4199,7 +4201,6 @@
 
       check_sequence_range (sequence, start, end, make_int (len));
       ending = min (ending, len);
-      starting = XINT (start);
 
       for (ii = starting; ii < ending; ++ii)
         {
@@ -4218,7 +4219,6 @@
 
       check_sequence_range (sequence, start, end, make_int (len));
       ending = min (ending, len);
-      starting = XINT (start);
 
       for (ii = starting; ii < ending; ++ii)
         {
@@ -4228,7 +4228,6 @@
   else if (LISTP (sequence))
     {
       Elemcount counting = 0;
-      starting = BIGNUMP (start) ? EMACS_INT_MAX + 1 : XINT (start);
 
       EXTERNAL_LIST_LOOP_3 (elt, sequence, tail)
         {