Fix display of Hebrew tutorial title on splash screen.
[bpt/emacs.git] / src / cm.c
index 545a111..1922cd8 100644 (file)
--- a/src/cm.c
+++ b/src/cm.c
@@ -1,6 +1,5 @@
 /* Cursor motion subroutines for GNU Emacs.
 /* Cursor motion subroutines for GNU Emacs.
-   Copyright (C) 1985, 1995, 2001, 2002, 2003, 2004,
-                 2005, 2006, 2007, 2008, 2009, 2010, 2011  Free Software Foundation, Inc.
+   Copyright (C) 1985, 1995, 2001-2012  Free Software Foundation, Inc.
     based primarily on public domain code written by Chris Torek
 
 This file is part of GNU Emacs.
     based primarily on public domain code written by Chris Torek
 
 This file is part of GNU Emacs.
@@ -28,30 +27,16 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include "cm.h"
 #include "termhooks.h"
 #include "termchar.h"
 #include "cm.h"
 #include "termhooks.h"
 #include "termchar.h"
-
-
-/* For now, don't try to include termcap.h.  On some systems,
-   configure finds a non-standard termcap.h that the main build
-   won't find.  */
-
-#if defined HAVE_TERMCAP_H && 0
-#include <termcap.h>
-#else
-extern void tputs P_ ((const char *, int, int (*)(int)));
-extern char *tgoto P_ ((const char *, int, int));
-#endif
+#include "tparam.h"
 
 #define        BIG     9999            /* 9999 good on VAXen.  For 16 bit machines
                                   use about 2000.... */
 
 
 #define        BIG     9999            /* 9999 good on VAXen.  For 16 bit machines
                                   use about 2000.... */
 
-extern char *BC, *UP;
-
 int cost;              /* sums up costs */
 
 /* ARGSUSED */
 int
 int cost;              /* sums up costs */
 
 /* ARGSUSED */
 int
-evalcost (c)
-     char c;
+evalcost (int c)
 {
   cost++;
   return c;
 {
   cost++;
   return c;
@@ -61,8 +46,7 @@ evalcost (c)
 struct tty_display_info *current_tty;
 
 int
 struct tty_display_info *current_tty;
 
 int
-cmputc (c)
-     char c;
+cmputc (int c)
 {
   if (current_tty->termscript)
     putc (c & 0177, current_tty->termscript);
 {
   if (current_tty->termscript)
     putc (c & 0177, current_tty->termscript);
@@ -207,7 +191,7 @@ calccost (struct tty_display_info *tty,
             tabx,
             tab2x,
             tabcost;
             tabx,
             tab2x,
             tabcost;
-    register char  *p;
+    register const char *p;
 
     /* If have just wrapped on a terminal with xn,
        don't believe the cursor position: give up here
 
     /* If have just wrapped on a terminal with xn,
        don't believe the cursor position: give up here
@@ -230,8 +214,9 @@ calccost (struct tty_display_info *tty,
     }
     totalcost = c * deltay;
     if (doit)
     }
     totalcost = c * deltay;
     if (doit)
-       while (--deltay >= 0)
+      do
           emacs_tputs (tty, p, 1, cmputc);
           emacs_tputs (tty, p, 1, cmputc);
+      while (0 < --deltay);
 x:
     if ((deltax = dstx - srcx) == 0)
        goto done;
 x:
     if ((deltax = dstx - srcx) == 0)
        goto done;
@@ -312,14 +297,16 @@ fail:
     }
     totalcost += c * deltax;
     if (doit)
     }
     totalcost += c * deltax;
     if (doit)
-       while (--deltax >= 0)
+      do
           emacs_tputs (tty, p, 1, cmputc);
           emacs_tputs (tty, p, 1, cmputc);
+      while (0 < --deltax);
 done:
     return totalcost;
 }
 
 #if 0
 done:
     return totalcost;
 }
 
 #if 0
-losecursor ()
+void
+losecursor (void)
 {
   curY = -1;
 }
 {
   curY = -1;
 }
@@ -331,18 +318,16 @@ losecursor ()
 #define        USECR   3
 
 void
 #define        USECR   3
 
 void
-cmgoto (tty, row, col)
-     struct tty_display_info *tty;
-     int row, col;
+cmgoto (struct tty_display_info *tty, int row, int col)
 {
     int     homecost,
             crcost,
             llcost,
             relcost,
             directcost;
 {
     int     homecost,
             crcost,
             llcost,
             relcost,
             directcost;
-    int     use;
-    char   *p,
-           *dcm;
+    int     use IF_LINT (= 0);
+    char *p;
+    const char *dcm;
 
   /* First the degenerate case */
     if (row == curY (tty) && col == curX (tty)) /* already there */
 
   /* First the degenerate case */
     if (row == curY (tty) && col == curX (tty)) /* already there */
@@ -439,7 +424,7 @@ cmgoto (tty, row, col)
 void
 Wcm_clear (struct tty_display_info *tty)
 {
 void
 Wcm_clear (struct tty_display_info *tty)
 {
-  bzero (tty->Wcm, sizeof (struct cm));
+  memset (tty->Wcm, 0, sizeof (struct cm));
   UP = 0;
   BC = 0;
 }
   UP = 0;
   BC = 0;
 }
@@ -470,6 +455,3 @@ Wcm_init (struct tty_display_info *tty)
     return - 2;
   return 0;
 }
     return - 2;
   return 0;
 }
-
-/* arch-tag: bcf64c02-00f6-44ef-94b6-c56eab5b3dc4
-   (do not change this comment) */