]> git.eshelyaron.com Git - emacs.git/commitdiff
* src/casefiddle.c (casify_word): Simplify.
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 12 Sep 2016 15:18:15 +0000 (08:18 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 12 Sep 2016 15:18:56 +0000 (08:18 -0700)
src/casefiddle.c

index 59b5bbcf43ead199b826946419c35082bd756ddf..2d32f498d0cb808d79c625ba5131a0dfb70c258d 100644 (file)
@@ -378,24 +378,12 @@ character positions to operate on.  */)
 static Lisp_Object
 casify_word (enum case_action flag, Lisp_Object arg)
 {
-  Lisp_Object beg, end;
-  ptrdiff_t newpoint;
-  EMACS_INT iarg;
-
   CHECK_NUMBER (arg);
-  iarg = XINT (arg);
-
-  newpoint = scan_words (PT, iarg);
-  if (!newpoint)
-    newpoint = iarg > 0 ? ZV : BEGV;
-
-  XSETFASTINT (beg, PT);
-  XSETFASTINT (end, newpoint);
-  if (PT > newpoint)
-    newpoint = PT;
-
-  casify_region (flag, beg, end);
-
+  ptrdiff_t farend = scan_words (PT, XINT (arg));
+  if (!farend)
+    farend = XINT (arg) <= 0 ? BEGV : ZV;
+  ptrdiff_t newpoint = max (PT, farend);
+  casify_region (flag, make_number (PT), make_number (farend));
   SET_PT (newpoint);
   return Qnil;
 }