threads / patch / 12741

patch(tig) Fix signed char comparison where char is unsigned by default.

Subject: [PATCH] (tig) Fix signed char comparison where char is unsigned by default.

## tl;dr

One message between Mar 18, 2008 and Mar 18, 2008. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Russell Steicke· Mar 18, 2008, 08:47 UTC · lore

tig uses a char as a flag, and expects that to have three values: TRUE, FALSE, and -1. When char is unsigned char (such as on PPC), this fails with the compiler warning "comparison is always false due to limited range of data type".

So explicitly make the flag a signed char.

Detecting the int8_t type with the autoconf macro AC_CREATE_STDINT_H would probably be a better fix.

Signed-off-by: Russell Steicke <russellsteicke@gmail.com>
---
 tig.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to tig.c +1 −1
diff --git a/tig.c b/tig.c
index 89a4c5d..448ce20 100644
--- a/tig.c
+++ b/tig.c
@@ -434,7 +434,7 @@ static iconv_t opt_iconv		= ICONV_NONE;
 static char opt_search[SIZEOF_STR]	= "";
 static char opt_cdup[SIZEOF_STR]	= "";
 static char opt_git_dir[SIZEOF_STR]	= "";
-static char opt_is_inside_work_tree	= -1; /* set to TRUE or FALSE */
+static signed char opt_is_inside_work_tree	= -1; /* set to TRUE or FALSE */
 static char opt_editor[SIZEOF_STR]	= "";
 
 enum option_type {
-- 
1.5.4.4


-- 
Russell Steicke

-- Fortune says:
Everything I like is either illegal, immoral or fattening.
		-- Alexander Woollcott

← back to recent threads