aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-10-06 14:56:08 +0200
committerMax Kellermann <max@duempel.org>2008-10-06 14:56:08 +0200
commiteb28e1a9398a5423e247eeda12594fa0f0a0136b (patch)
tree090c195b960c10fb2968ddd8c8265a6147e110f5
parent3a92aa17478c901b1704fb935723783b11f193e7 (diff)
downloadmpd-eb28e1a9398a5423e247eeda12594fa0f0a0136b.tar.gz
mpd-eb28e1a9398a5423e247eeda12594fa0f0a0136b.tar.xz
mpd-eb28e1a9398a5423e247eeda12594fa0f0a0136b.zip
wreadln: use unsigned integers and size_t
Declare all screen position variables as "unsigned", and all buffer positions as "size_t". We don't need signed values.
Diffstat (limited to '')
-rw-r--r--src/wreadln.c27
-rw-r--r--src/wreadln.h4
2 files changed, 16 insertions, 15 deletions
diff --git a/src/wreadln.c b/src/wreadln.c
index 5d019d900..6c66895f7 100644
--- a/src/wreadln.c
+++ b/src/wreadln.c
@@ -45,20 +45,20 @@ struct wreadln {
WINDOW *const w;
/** the origin coordinates in the window */
- gint x, y;
+ unsigned x, y;
/** the screen width of the input field */
- gint width;
+ unsigned width;
/** is the input masked, i.e. characters displayed as '*'? */
const gboolean masked;
/** the byte position of the cursor */
- gint cursor;
+ size_t cursor;
/** the byte position displayed at the origin (for horizontal
scrolling) */
- gint start;
+ size_t start;
/** the current value */
gchar line[1024];
@@ -74,9 +74,9 @@ wrln_gcmp_post_cb_t wrln_post_completion_callback = NULL;
/* move the cursor one step to the right */
static inline void cursor_move_right(struct wreadln *wr)
{
- if (wr->cursor < (int)strlen(wr->line)) {
+ if (wr->cursor < strlen(wr->line)) {
++wr->cursor;
- if (wr->cursor >= wr->width &&
+ if (wr->cursor >= (size_t)wr->width &&
wr->start < wr->cursor - wr->width + 1)
++wr->start;
}
@@ -136,7 +136,7 @@ static gchar *
_wreadln(WINDOW *w,
const gchar *prompt,
const gchar *initial_value,
- gint x1,
+ unsigned x1,
GList **history,
GCompletion *gcmp,
gboolean masked)
@@ -148,7 +148,8 @@ _wreadln(WINDOW *w,
.start = 0,
};
GList *hlist = NULL, *hcurrent = NULL;
- gint key = 0, i;
+ gint key = 0;
+ size_t i;
/* turn off echo */
noecho();
@@ -160,7 +161,7 @@ _wreadln(WINDOW *w,
/* retrive y and x0 position */
getyx(w, wr.y, wr.x);
/* check the x1 value */
- if (x1 <= wr.x || x1 > COLS)
+ if (x1 <= wr.x || x1 > (unsigned)COLS)
x1 = COLS;
wr.width = x1 - wr.x;
/* clear input area */
@@ -199,7 +200,7 @@ _wreadln(WINDOW *w,
/* check if key is a function key */
for (i = 0; i < 63; i++)
- if (key == KEY_F(i)) {
+ if (key == (int)KEY_F(i)) {
key = KEY_F(1);
i = 64;
}
@@ -279,7 +280,7 @@ _wreadln(WINDOW *w,
break;
case KEY_DC: /* handle delete key. As above */
case KEY_CTRL_D:
- if (wr.cursor <= (gint)utf8_width(wr.line) - 1) {
+ if (wr.cursor <= utf8_width(wr.line) - 1) {
for (i = wr.cursor; wr.line[i] != 0; i++)
wr.line[i] = wr.line[i + 1];
}
@@ -359,7 +360,7 @@ gchar *
wreadln(WINDOW *w,
const gchar *prompt,
const gchar *initial_value,
- gint x1,
+ unsigned x1,
GList **history,
GCompletion *gcmp)
{
@@ -370,7 +371,7 @@ gchar *
wreadln_masked(WINDOW *w,
const gchar *prompt,
const gchar *initial_value,
- gint x1,
+ unsigned x1,
GList **history,
GCompletion *gcmp)
{
diff --git a/src/wreadln.h b/src/wreadln.h
index 692f4fd69..e1efe1c50 100644
--- a/src/wreadln.h
+++ b/src/wreadln.h
@@ -22,7 +22,7 @@ gchar *wreadln(WINDOW *w, /* the curses window to use */
const gchar *prompt, /* the prompt string or NULL */
const gchar *initial_value, /* initial value or NULL for a empty line
* (char *) -1 = get value from history */
- gint x1, /* the maximum x position or 0 */
+ unsigned x1, /* the maximum x position or 0 */
GList **history, /* a pointer to a history list or NULL */
GCompletion *gcmp /* a GCompletion structure or NULL */
);
@@ -31,7 +31,7 @@ gchar *
wreadln_masked(WINDOW *w,
const gchar *prompt,
const gchar *initial_value,
- gint x1,
+ unsigned x1,
GList **history,
GCompletion *gcmp);