]> git.eshelyaron.com Git - emacs.git/commitdiff
(shuffle): Fix the logic of setting up the cycle.
authorKenichi Handa <handa@m17n.org>
Fri, 17 Jul 2009 01:26:41 +0000 (01:26 +0000)
committerKenichi Handa <handa@m17n.org>
Fri, 17 Jul 2009 01:26:41 +0000 (01:26 +0000)
src/ChangeLog
src/casetab.c

index b517ef0c006e1c582b0af07ce64cc48975ba552b..debe74f2bdb1997847865132481291d6d3f2db72 100644 (file)
@@ -1,3 +1,7 @@
+2009-07-17  Kenichi Handa  <handa@m17n.org>
+
+       * casetab.c (shuffle): Fix the logic of setting up the cycle.
+
 2009-07-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 
        * nsfns.m (Fns_set_alpha): Remove function.
index 423251df317afb82b9aece84eebfa90c71476aae..95fca03584b010e8f3ab7d4719b15a143b4c676a 100644 (file)
@@ -229,7 +229,6 @@ shuffle (table, c, elt)
 {
   if (NATNUMP (elt))
     {
-      Lisp_Object tem = Faref (table, elt);
       int from, to;
 
       if (CONSP (c))
@@ -241,11 +240,11 @@ shuffle (table, c, elt)
        from = to = XINT (c);
 
       for (; from <= to; from++)
-       if (from != XINT (elt))
-         {
-           Faset (table, elt, make_number (from));
-           Faset (table, make_number (from), tem);
-         }
+       {
+         Lisp_Object tem = Faref (table, elt);
+         Faset (table, elt, make_number (from));
+         Faset (table, make_number (from), tem);
+       }
     }
 }
 \f