From eef6b2b442a25cd653a326acebf14323f351ebd5 Mon Sep 17 00:00:00 2001
From: David Lawrence Ramsey <pooka109@gmail.com>
Date: Sun, 30 Dec 2018 20:34:40 -0600
Subject: [PATCH] tweaks: use proper variable types in the word-completion
 functions

Use 'size_t' for character indexes, and 'ssize_t' for the threshold.
---
 src/text.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/text.c b/src/text.c
index e0e52eb0..d3a0e1d5 100644
--- a/src/text.c
+++ b/src/text.c
@@ -3045,11 +3045,12 @@ void do_verbatim_input(void)
 char *copy_completion(char *check_line, int start)
 {
 	char *word;
-	int position = start, len_of_word = 0, index = 0;
+	size_t position = start, len_of_word = 0, index = 0;
 
 	/* Find the length of the word by travelling to its end. */
 	while (is_word_mbchar(&check_line[position], FALSE)) {
-		int next = move_mbright(check_line, position);
+		size_t next = move_mbright(check_line, position);
+
 		len_of_word += next - position;
 		position = next;
 	}
@@ -3105,7 +3106,7 @@ void complete_a_word(void)
 	/* Find the start of the fragment that the user typed. */
 	start_of_shard = openfile->current_x;
 	while (start_of_shard > 0) {
-		int step_left = move_mbleft(openfile->current->data, start_of_shard);
+		size_t step_left = move_mbleft(openfile->current->data, start_of_shard);
 
 		if (!is_word_mbchar(&openfile->current->data[step_left], FALSE))
 			break;
@@ -3128,11 +3129,11 @@ void complete_a_word(void)
 
 	/* Run through all of the lines in the buffer, looking for shard. */
 	while (pletion_line != NULL) {
-		int threshold = strlen(pletion_line->data) - shard_length - 1;
+		ssize_t threshold = strlen(pletion_line->data) - shard_length - 1;
 				/* The point where we can stop searching for shard. */
 
 		/* Traverse the whole line, looking for shard. */
-		for (i = pletion_x; (int)i < threshold; i++) {
+		for (i = pletion_x; (ssize_t)i < threshold; i++) {
 			/* If the first byte doesn't match, run on. */
 			if (pletion_line->data[i] != shard[0])
 				continue;
-- 
GitLab