[PATCH] avoid assigning string constants to char *

"Bernhard R. Link" <[email protected]>
Newsgroups gmane.comp.window-managers.ratpoison.devel
Message-ID <[email protected]>
---
 src/actions.c   | 24 ++++++++++++------------
 src/actions.h   | 10 +++++-----
 src/bar.c       |  6 +++---
 src/bar.h       |  2 +-
 src/data.h      |  4 ++--
 src/editor.c    |  2 +-
 src/editor.h    |  2 +-
 src/format.c    |  2 +-
 src/format.h    |  2 +-
 src/globals.c   |  4 ++--
 src/globals.h   |  4 ++--
 src/group.c     |  4 ++--
 src/group.h     |  4 ++--
 src/input.c     |  6 +++---
 src/input.h     |  4 ++--
 src/main.c      |  4 ++--
 src/ratpoison.h |  4 ++--
 src/sbuf.c      |  4 ++--
 src/sbuf.h      |  4 ++--
 src/split.c     |  2 +-
 src/split.h     |  2 +-
 src/window.c    |  2 +-
 src/window.h    |  2 +-
 23 files changed, 52 insertions(+), 52 deletions(-)

diff --git a/src/actions.c b/src/actions.c
index e08dc58..a597e3d 100644
--- a/src/actions.c
+++ b/src/actions.c
@@ -46,7 +46,7 @@
 
 struct set_var
 {
-  char *var;
+  const char *var;
   cmdret *(*set_fn)(struct cmdarg **);
   int nargs;
   struct argspec *args;
@@ -85,7 +85,7 @@ static cmdret * set_historyexpansion (struct cmdarg **args);
 LIST_HEAD(set_vars);
 
 static void
-add_set_var (char *name, cmdret * (*fn)(struct cmdarg **), int nargs, ...)
+add_set_var (const char *name, cmdret * (*fn)(struct cmdarg **), int nargs, ...)
 {
   int i = 0;
   struct set_var *var;
@@ -159,7 +159,7 @@ LIST_HEAD(user_commands);
 /* i_nrequired is the number required when called
    interactively. ni_nrequired is when called non-interactively. */
 static void
-add_command (char *name, cmdret * (*fn)(int, struct cmdarg **), int nargs, int i_nrequired, int ni_nrequired, ...)
+add_command (const char *name, cmdret * (*fn)(int, struct cmdarg **), int nargs, int i_nrequired, int ni_nrequired, ...)
 {
   int i = 0;
   struct user_command *cmd;
@@ -506,7 +506,7 @@ pop_frame_redo (void)
 }
 
 rp_action*
-find_keybinding_by_action (char *action, rp_keymap *map)
+find_keybinding_by_action (const char *action, rp_keymap *map)
 {
   int i;
 
@@ -575,7 +575,7 @@ resolve_command_from_keydesc (char *desc, int depth, rp_keymap *map)
 
 
 static void
-add_keybinding (KeySym keysym, int state, char *cmd, rp_keymap *map)
+add_keybinding (KeySym keysym, int state, const char *cmd, rp_keymap *map)
 {
   if (map->actions_last >= map->actions_size)
     {
@@ -630,7 +630,7 @@ remove_keybinding (KeySym keysym, unsigned int state, rp_keymap *map)
 }
 
 static rp_keymap *
-keymap_new (char *name)
+keymap_new (const char *name)
 {
   rp_keymap *map;
 
@@ -648,7 +648,7 @@ keymap_new (char *name)
 }
 
 rp_keymap *
-find_keymap (char *name)
+find_keymap (const char *name)
 {
   rp_keymap *cur;
 
@@ -666,7 +666,7 @@ find_keymap (char *name)
 /* Search the alias table for a match. If a match is found, return its
    index into the table. Otherwise return -1. */
 static int
-find_alias_index (char *name)
+find_alias_index (const char *name)
 {
   int i;
 
@@ -678,7 +678,7 @@ find_alias_index (char *name)
 }
 
 static void
-add_alias (char *name, char *alias)
+add_alias (const char *name, const char *alias)
 {
   int i;
 
@@ -813,7 +813,7 @@ initialize_default_keybindings (void)
 }
 
 cmdret *
-cmdret_new (int success, char *fmt, ...)
+cmdret_new (int success, const char *fmt, ...)
 {
   cmdret *ret;
   va_list ap;
@@ -3334,7 +3334,7 @@ cmd_license (int interactive UNUSED, struct cmdarg **args UNUSED)
   int y = 10;
   int i;
   int max_width = 0;
-  char *license_text[] = { PACKAGE " " VERSION, "(built " __DATE__ " " __TIME__ ")",
+  const char *license_text[] = { PACKAGE " " VERSION, "(built " __DATE__ " " __TIME__ ")",
                            "",
                            "Copyright (C) 2000, 2001, 2002, 2003, 2004 Shawn Betts",
                            "",
@@ -3597,7 +3597,7 @@ cmd_rudeness (int interactive UNUSED, struct cmdarg **args)
   return cmdret_new (RET_SUCCESS, NULL);
 }
 
-char *
+const char *
 wingravity_to_string (int g)
 {
   switch (g)
diff --git a/src/actions.h b/src/actions.h
index 519c1a7..837d64f 100644
--- a/src/actions.h
+++ b/src/actions.h
@@ -83,7 +83,7 @@ struct cmdret
 struct
 user_command
 {
-  char *name;
+  const char *name;
   cmdret * (*func)(int, struct cmdarg **);
   struct argspec *args;
   int num_args;
@@ -222,18 +222,18 @@ RP_CMD (getsel);
 
 void del_frame_undo (rp_frame_undo *u);
 
-rp_keymap *find_keymap (char *name);
+rp_keymap *find_keymap (const char *name);
 void init_user_commands(void);
 void initialize_default_keybindings (void);
-cmdret *cmdret_new (int success, char *fmt, ...);
+cmdret *cmdret_new (int success, const char *fmt, ...);
 void cmdret_free (cmdret *ret);
 void keymap_free (rp_keymap *map);
 void free_user_commands (void);
 void free_aliases (void);
 void free_keymaps (void);
-char *wingravity_to_string (int g);
+const char *wingravity_to_string (int g);
 rp_action* find_keybinding (KeySym keysym, unsigned int state, rp_keymap *map);
-rp_action* find_keybinding_by_action (char *action, rp_keymap *map);
+rp_action* find_keybinding_by_action (const char *action, rp_keymap *map);
 
 
 #endif /* ! _RATPOISON_ACTIONS_H */
diff --git a/src/bar.c b/src/bar.c
index 0f429b8..cd3fb8f 100644
--- a/src/bar.c
+++ b/src/bar.c
@@ -215,7 +215,7 @@ update_window_names (rp_screen *s, char *fmt)
   struct sbuf *bar_buffer;
   int mark_start = 0;
   int mark_end = 0;
-  char *delimiter;
+  const char *delimiter;
 
   if (s->bar_is_raised != BAR_IS_WINDOW_LIST) return;
 
@@ -237,7 +237,7 @@ update_group_names (rp_screen *s)
   struct sbuf *bar_buffer;
   int mark_start = 0;
   int mark_end = 0;
-  char *delimiter;
+  const char *delimiter;
 
   if (s->bar_is_raised != BAR_IS_GROUP_LIST) return;
 
@@ -258,7 +258,7 @@ message (char *s)
 }
 
 void
-marked_message_printf (int mark_start, int mark_end, char *fmt, ...)
+marked_message_printf (int mark_start, int mark_end, const char *fmt, ...)
 {
   char *buffer;
   va_list ap;
diff --git a/src/bar.h b/src/bar.h
index 0d70644..005501a 100644
--- a/src/bar.h
+++ b/src/bar.h
@@ -33,7 +33,7 @@ int bar_x (rp_screen *s, int width);
 
 void message (char *s);
 void marked_message (char *s, int mark_start, int mark_end);
-void marked_message_printf (int mark_start, int mark_end, char *fmt, ...);
+void marked_message_printf (int mark_start, int mark_end, const char *fmt, ...);
 void redraw_last_message (void);
 void show_last_message (void);
 void free_bar (void);
diff --git a/src/data.h b/src/data.h
index f4bd185..d9b99a3 100644
--- a/src/data.h
+++ b/src/data.h
@@ -357,7 +357,7 @@ struct rp_completions
 struct rp_input_line
 {
   char *buffer;
-  char *prompt;
+  const char *prompt;
   char *saved;
   size_t position;
   size_t length;
@@ -370,7 +370,7 @@ struct rp_input_line
 /* The hook dictionary. */
 struct rp_hook_db_entry
 {
-  char *name;
+  const char *name;
   struct list_head *hook;
 };
 
diff --git a/src/editor.c b/src/editor.c
index 1360241..b5ef284 100644
--- a/src/editor.c
+++ b/src/editor.c
@@ -100,7 +100,7 @@ static edit_binding edit_bindings[] =
      { {0,              0},     0} };
 
 rp_input_line *
-input_line_new (char *prompt, char *preinput, int history_id, completion_fn fn)
+input_line_new (const char *prompt, const char *preinput, int history_id, completion_fn fn)
 {
   rp_input_line *line;
   size_t length;
diff --git a/src/editor.h b/src/editor.h
index 131a5ad..4bc5c2c 100644
--- a/src/editor.h
+++ b/src/editor.h
@@ -39,7 +39,7 @@ typedef enum edit_status
 #define RP_IS_UTF8_CONT(c) (defaults.utf8_locale && ((c) & 0xC0) == 0x80)
 
 /* Input line functions */
-rp_input_line *input_line_new (char *prompt, char *preinput, int history_id, completion_fn fn);
+rp_input_line *input_line_new (const char *prompt, const char *preinput, int history_id, completion_fn fn);
 void input_line_free (rp_input_line *line);
 
 edit_status execute_edit_action (rp_input_line *line, KeySym ch, unsigned int modifier, char *keysym_buf);
diff --git a/src/format.c b/src/format.c
index 0706f21..939083c 100644
--- a/src/format.c
+++ b/src/format.c
@@ -93,7 +93,7 @@ concat_width (struct sbuf *buf, char *s, int width)
 }
 
 void
-format_string (char *fmt, rp_window_elem *win_elem, struct sbuf *buffer)
+format_string (const char *fmt, rp_window_elem *win_elem, struct sbuf *buffer)
 {
 #define STATE_READ   0
 #define STATE_NUMBER 1
diff --git a/src/format.h b/src/format.h
index 83b6acb..3d6ce06 100644
--- a/src/format.h
+++ b/src/format.h
@@ -22,6 +22,6 @@
 #ifndef _RATPOISON_FORMAT_H
 #define _RATPOISON_FORMAT_H 1
 
-void format_string(char *fmt, rp_window_elem *win_elem, struct sbuf *buffer);
+void format_string(const char *fmt, rp_window_elem *win_elem, struct sbuf *buffer);
 
 #endif /* _RATPOISON_FORMAT_H */
diff --git a/src/globals.c b/src/globals.c
index 1481a5c..e388a46 100644
--- a/src/globals.c
+++ b/src/globals.c
@@ -273,7 +273,7 @@ LIST_HEAD (rp_frame_redos);
 
 void
 rp_draw_string (rp_screen *s, Drawable d, int style, int x, int y,
-		char *string, int length)
+		const char *string, int length)
 {
   if (length < 0)
     length = strlen (string);
@@ -313,7 +313,7 @@ rp_draw_string (rp_screen *s, Drawable d, int style, int x, int y,
 }
 
 int
-rp_text_width (rp_screen *s, char *string, int count)
+rp_text_width (rp_screen *s, const char *string, int count)
 {
   (void) s; /* avoid "unused" warning */
   if (count < 0)
diff --git a/src/globals.h b/src/globals.h
index 1fb7e0f..c273c3f 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -209,7 +209,7 @@ char *get_selection (void);
 
 /* Wrapper font functions to support Xft */
 
-void rp_draw_string (rp_screen *s, Drawable d, int style, int x, int y, char *string, int length);
-int rp_text_width (rp_screen *s, char *string, int count);
+void rp_draw_string (rp_screen *s, Drawable d, int style, int x, int y, const char *string, int length);
+int rp_text_width (rp_screen *s, const char *string, int count);
 
 #endif
diff --git a/src/group.c b/src/group.c
index 02d2073..d88c579 100644
--- a/src/group.c
+++ b/src/group.c
@@ -70,7 +70,7 @@ group_get_numset(void)
    with delim. mark_start and mark_end will be filled with the text
    positions for the start and end of the current window. */
 void
-get_group_list (char *delim, struct sbuf *buffer,
+get_group_list (const char *delim, struct sbuf *buffer,
                 int *mark_start, int *mark_end)
 {
   rp_group *cur, *last;
@@ -122,7 +122,7 @@ get_group_list (char *delim, struct sbuf *buffer,
 }
 
 rp_group *
-group_new (int number, char *name)
+group_new (int number, const char *name)
 {
   rp_group *g;
 
diff --git a/src/group.h b/src/group.h
index 1081043..842e11a 100644
--- a/src/group.h
+++ b/src/group.h
@@ -27,7 +27,7 @@ void free_groups (void);
 void group_add_window (rp_group *g, rp_window *w);
 void group_resort_window (rp_group *g, rp_window_elem *w);
 void group_free (rp_group *g);
-rp_group *group_new (int number, char *name);
+rp_group *group_new (int number, const char *name);
 int group_delete_group (rp_group *g);
 
 void group_del_window (rp_group *g, rp_window *win);
@@ -40,7 +40,7 @@ void group_unmap_window (rp_group *g, rp_window *win);
 void groups_unmap_window (rp_window *win);
 
 struct numset *group_get_numset (void);
-void get_group_list (char *delim, struct sbuf *buffer, int *mark_start,
+void get_group_list (const char *delim, struct sbuf *buffer, int *mark_start,
                 int *mark_end);
 
 rp_window *group_prev_window (rp_group *g, rp_window *win);
diff --git a/src/input.c b/src/input.c
index 894b260..fd64783 100644
--- a/src/input.c
+++ b/src/input.c
@@ -304,7 +304,7 @@ char *
 keysym_to_string (KeySym keysym, unsigned int modifier)
 {
   struct sbuf *name;
-  char *tmp;
+  const char *tmp;
 
   name = sbuf_new (0);
 
@@ -510,13 +510,13 @@ ring_bell (void)
 }
 
 char *
-get_input (char *prompt, int history_id, completion_fn fn)
+get_input (const char *prompt, int history_id, completion_fn fn)
 {
   return get_more_input (prompt, "", history_id, fn);
 }
 
 char *
-get_more_input (char *prompt, char *preinput, int history_id,
+get_more_input (const char *prompt, const char *preinput, int history_id,
                 completion_fn compl_fn)
 {
   /* Emacs 21 uses a 513 byte string to store the keysym name. */
diff --git a/src/input.h b/src/input.h
index 5beb96e..ab9d8f3 100644
--- a/src/input.h
+++ b/src/input.h
@@ -24,8 +24,8 @@
 
 char *keysym_to_string (KeySym keysym, unsigned int modifier);
 int cook_keycode (XKeyEvent *ev, KeySym *keysym, unsigned int *mod, char *keysym_name, int len, int ignore_bad_mods);
-char *get_input (char *prompt, int history_id, completion_fn fn);
-char *get_more_input (char *prompt, char *preinput, int history_id, completion_fn fn);
+char *get_input (const char *prompt, int history_id, completion_fn fn);
+char *get_more_input (const char *prompt, const char *preinput, int history_id, completion_fn fn);
 void read_any_key (void);
 int read_single_key (KeySym *keysym, unsigned int *modifiers, char *keysym_name, int len);
 int read_key (KeySym *keysym, unsigned int *modifiers, char *keysym_name, int len);
diff --git a/src/main.c b/src/main.c
index 408260a..4a94d79 100644
--- a/src/main.c
+++ b/src/main.c
@@ -106,7 +106,7 @@ xstrdup (const char *s)
 
 /* Return a new string based on fmt. */
 char *
-xvsprintf (char *fmt, va_list ap)
+xvsprintf (const char *fmt, va_list ap)
 {
   int size, nchars;
   char *buffer;
@@ -160,7 +160,7 @@ xvsprintf (char *fmt, va_list ap)
 
 /* Return a new string based on fmt. */
 char *
-xsprintf (char *fmt, ...)
+xsprintf (const char *fmt, ...)
 {
   char *buffer;
   va_list ap;
diff --git a/src/ratpoison.h b/src/ratpoison.h
index 5ff7c44..69b35c8 100644
--- a/src/ratpoison.h
+++ b/src/ratpoison.h
@@ -92,8 +92,8 @@ void fatal (const char *msg);
 void *xmalloc (size_t size);
 void *xrealloc (void *ptr, size_t size);
 char *xstrdup (const char *s);
-char *xsprintf (char *fmt, ...);
-char *xvsprintf (char *fmt, va_list ap);
+char *xsprintf (const char *fmt, ...);
+char *xvsprintf (const char *fmt, va_list ap);
 int str_comp (char *s1, char *s2, size_t len);
 char *strtok_ws (char *s);
 void check_child_procs (void);
diff --git a/src/sbuf.c b/src/sbuf.c
index 77b8a04..88b2051 100644
--- a/src/sbuf.c
+++ b/src/sbuf.c
@@ -113,7 +113,7 @@ sbuf_get (struct sbuf *b)
 }
 
 char *
-sbuf_printf (struct sbuf *b, char *fmt, ...)
+sbuf_printf (struct sbuf *b, const char *fmt, ...)
 {
   va_list ap;
 
@@ -127,7 +127,7 @@ sbuf_printf (struct sbuf *b, char *fmt, ...)
 }
 
 char *
-sbuf_printf_concat (struct sbuf *b, char *fmt, ...)
+sbuf_printf_concat (struct sbuf *b, const char *fmt, ...)
 {
   char *buffer;
   va_list ap;
diff --git a/src/sbuf.h b/src/sbuf.h
index e565efc..23132d4 100644
--- a/src/sbuf.h
+++ b/src/sbuf.h
@@ -42,8 +42,8 @@ char *sbuf_nconcat (struct sbuf *b, const char *str, int len);
 char *sbuf_copy (struct sbuf *b, const char *str);
 char *sbuf_clear (struct sbuf *b);
 char *sbuf_get (struct sbuf *b);
-char *sbuf_printf (struct sbuf *b, char *fmt, ...);
-char *sbuf_printf_concat (struct sbuf *b, char *fmt, ...);
+char *sbuf_printf (struct sbuf *b, const char *fmt, ...);
+char *sbuf_printf_concat (struct sbuf *b, const char *fmt, ...);
 void  sbuf_chop (struct sbuf *b);
 
 #endif /* ! _RATPOISON_SBUF_H */
diff --git a/src/split.c b/src/split.c
index b36b99e..c2699d9 100644
--- a/src/split.c
+++ b/src/split.c
@@ -943,7 +943,7 @@ show_frame_indicator (int force)
 }
 
 void
-show_frame_message (char *msg)
+show_frame_message (const char *msg)
 {
   rp_screen *s = current_screen ();
   int width, height;
diff --git a/src/split.h b/src/split.h
index 87bb660..8353462 100644
--- a/src/split.h
+++ b/src/split.h
@@ -46,7 +46,7 @@ void blank_frame (rp_frame *frame);
 void show_frame_indicator (int force);
 void hide_frame_indicator (void);
 
-void show_frame_message (char *msg);
+void show_frame_message (const char *msg);
 
 rp_frame *find_frame_right (rp_frame *frame);
 rp_frame *find_frame_left (rp_frame *frame);
diff --git a/src/window.c b/src/window.c
index de9032a..cb0f8fa 100644
--- a/src/window.c
+++ b/src/window.c
@@ -598,7 +598,7 @@ goto_window (rp_window *win)
    with delim. mark_start and mark_end will be filled with the text
    positions for the start and end of the current window. */
 void
-get_window_list (char *fmt, char *delim, struct sbuf *buffer,
+get_window_list (const char *fmt, const char *delim, struct sbuf *buffer,
                  int *mark_start, int *mark_end)
 {
   rp_window_elem *we;
diff --git a/src/window.h b/src/window.h
index fdd246c..1daac89 100644
--- a/src/window.h
+++ b/src/window.h
@@ -50,7 +50,7 @@ void sort_window_list_by_number (void);
 
 void insert_into_list (rp_window *win, struct list_head *list);
 
-void get_window_list (char *fmt, char *delim, struct sbuf *buffer,
+void get_window_list (const char *fmt, const char *delim, struct sbuf *buffer,
                       int *mark_start, int *mark_end);
 void init_window_stuff (void);
 void free_window_stuff (void);
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.